Commit Graph

2427 Commits

Author SHA1 Message Date
Bo Peng
65d89a8af3 merge src/frontends/controllers/biblio, character, frnt_lang, helper_funcs and tex_helpers to frontend_helpers, step 1
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17996 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-25 17:15:56 +00:00
Bo Peng
176715bd56 Fix a few rename inconsistencies discovered by JMarc in insets and mathed, step 2
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17992 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-25 16:12:54 +00:00
Bo Peng
6e3a75969b Fix a few rename inconsistencies discovered by JMarc in insets and mathed, step 1
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17991 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-25 16:11:45 +00:00
Bo Peng
c8d00ed127 Rename insets/insetxxx to insets/InsetXxx, part 2
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17965 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-25 01:25:51 +00:00
Bo Peng
b6a2a76700 Rename insets/insetxxx to insets/InsetXxx, part 1
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17964 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-25 01:24:38 +00:00
Michael Schmitt
bb98a39589 * src/insets/insetcommandparams.C: fix WS
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17928 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-23 19:34:09 +00:00
Richard Heck
05ba87fe7a Fix case of BibTeX keys and remove unused variable. By myself and Bernhard.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17919 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-23 15:18:01 +00:00
Abdelrazak Younes
bc92746781 * In the process of fixing the math background color bug, this commit transfer backgroundColor() management from InsetOld to InsetBase; because this will be needed for InsetMath based insets.
* Also transfer InsetBase ctors from .h to .C


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17913 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-22 21:40:10 +00:00
Abdelrazak Younes
24c8ca10d2 Trying to solve bug-2452, I optimized some of the most significant problems outlined in the profile report attached in there.
This commit avoids unnecessary metrics recalculations by caching the last LyXFont used. I had to cleanup the width(), ascent() and descend() redundancies by transferring that to InsetBase.

InsetMathDim should go now as it is not really needed.

* InsetBase: properly handle inset Dimension.

* InsetOld: get rid of redundant width(), ascent() and descent()

* InsetMathDim: ditto

* InsetMathChar::metrics(): avoid metrics recalculation if font is unchanged.

* InsetMathSymbol::metrics(): ditto

* InsetMathKern: use InsetBase::dim_ instead of local ones.

* InsetMathSpace:
  - use InsetBase::dim_ instead of local ones.
  - space to width transformation transferred to anonymous namespace.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17899 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-22 08:26:06 +00:00
Jürgen Spitzmüller
bba7ac2a66 Fix bug 2884 and 3437:
* src/insets/insetbase.h:
* src/insets/insetcollapsable.h:
	- make isFixedWidth (former insetcollapsable member) a member of insetbase.
src/insets/insettext.h:
	- make border_ public (needed by insetcollapsable).
src/insets/insettext.C (draw, drawSelection):
	- adjust drawing for fixed width insets
* src/insets/insetcollapsable.C (metrics):
	- adjust dimension for fixed width insets
src/insets/insetbox.C (metrics):
	- properly calculate metrics for fixed width insets.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17879 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-21 08:43:46 +00:00
Abdelrazak Younes
08380ca491 Fix bug 3454 and 3463: Don't allow ill-formed commands. With this commit an error dialog will be shown to the user if the inset parameters were wrong upon creation. This patch uses exceptions.
* factory.C::createInset(): catch eventual exception.
* InsetCommandParams::read(): throw warning exception in case of errors.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17850 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-18 12:59:07 +00:00
Bo Peng
7a854d3a91 Fix bug 2993: mark buffer dirty when the status of a collapsable inset is changed
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17837 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-17 14:35:27 +00:00
Richard Heck
840ee198e2 Captions do not accept alignment, spacing, etc.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17834 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-17 03:46:55 +00:00
Georg Baum
ed781c2afe prevent the compiler from optimiying away support::Path variables
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17751 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-06 18:03:29 +00:00
Georg Baum
d4e8fdd703 Use FileName instead of strings in support::Package.
This fixes some encoding problems, and hopefully also bug 3410.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17746 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-06 13:09:54 +00:00
Georg Baum
10271ff520 remove methods that are no longer needed since we have the new bibtex parser
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17739 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-06 08:48:34 +00:00
Bernhard Roider
4c9121df3b Fix bug 1826 + A more precise parser for bibtex files based on the description found on this web page: http://artis.imag.fr/~Xavier.Decoret/resources/xdkbibtex/bibtex_summary.html
Most important improvements:
- read file character by character and treat newline like space characters.
  Thus the @ does not need to be at the beginning of a line.
- it reads @string entries and replaces the strings in the field values
- it also handles @comment entries
- it recovers from syntax errors at the next entry starting with @
- it ignores everything between entries


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17723 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-04 20:06:34 +00:00
Georg Baum
0159c9d6c7 Normalize everything that comes from 'outside' (plain text import,
keyboard input via kmap, clipboard and selection) to normalized form KC
(precomposed characters) since we don't support the decomposed form very
well.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17702 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-03 08:15:39 +00:00
Michael Schmitt
ee47f918c2 remove redundant lyxerr.debugging checks; macro LYXERR already checks whether the output is actually needed
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17681 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-01 14:51:13 +00:00
André Pönitz
83b326d204 avoid evalutation of lyxerr arguments unless really needed
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17675 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-01 10:09:49 +00:00
Georg Baum
0f83c2563b Convert makeRelPath to docstring (from Michael Gerz)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17586 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-27 07:24:16 +00:00
Michael Schmitt
e667f92c11 * src/insets/insetcharstyle.C: fix bug #3252 (by M. Vermeer):
Cursor is not placed correctly in char style inset


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17578 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-26 19:16:49 +00:00
Abdelrazak Younes
4d5ae916ad Fix bug 3293 by Bernhard Roider:
This changes the semantics of isOK() and operator(), comments from Bernhard below:

With the old version of lyxlex it was _impossible_ to check whether reading an integer, float, ... succeeded or not. The current solution to check for is.bad() in some cases and in other cases use is.good() does not give the desired information. Moreover the result of is.bad() depends on the stl implementation and behaves different for linux and windows.

the bug was introduced by the patch that fixed the bug that crashed lyx when "inset-insert ert" was executed from the command buffer.
The lexer has the method isOK() which reflects the status of the stream is.
The operators void* and ! are not really well defined (they depend on the value of is.bad()). What is missing is a test if the last reading operation was successful and thus the returned value is valid.
That's what i implemented in this patch.

The new rule for using the lexer:

if you want to know if the lexer still has data to read (either from the stream or from the pushed token) then use "lex.isOK()".
If you want to test if the last reading operation was successful then use eg. "if (lex) {...}" or unsuccessful then use eg. "if (!lex) {...}"

an example:

int readParam(LyxLex &lex) {

    int param = 1; // default value
    if (lex.isOK()) { // the lexer has data to read
        int p;    // temporary variable
        lex >> p;
        if (lex) param = p; // only use the input if the reading operation was successful
    }
    return param;
}




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17569 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-26 13:43:49 +00:00
Abdelrazak Younes
4d2732b1e7 Fix bug 3258:
http://bugzilla.lyx.org/show_bug.cgi?id=3258

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17568 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-26 13:36:27 +00:00
Georg Baum
e6eb429915 add some comments
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17556 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 16:45:51 +00:00
Georg Baum
e4fd77faf7 Fix crash with included files
* src/buffer.C
	(Buffer::makeLaTeXFile): Use runparams.encoding to be consistent

	* src/insets/insetinclude.C
	(InsetInclude::latex): Change runparams.encoding to the encoding of
	the child document for makeLateXFile


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17555 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 16:31:16 +00:00
Abdelrazak Younes
dfbc9cfccc * BufferParams:
* transfer CiteEngine enum declaration to biblio.h
  * delete unneeded CiteEngine_enum
  * cite_engine is now cite_engine_ and is private.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17537 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 01:12:38 +00:00
Martin Vermeer
88542bc2ee Get ProvidesNatbib working correctly, esp. for egs.layout.
* insetcite: call getEngine()
* bufferparams: move getEngine() here, and let it sense the 
provides(natbib)
flag
* ControlBibtex, ControlCitation: correct getEngine() call
* biblio: remove old getEngine()



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17505 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-22 07:22:16 +00:00
Georg Baum
4f1d5e72ef Fix bug 3235
* src/insets/insetcaption.C
	(InsetCaption::latex): Copy back encoding to runparams_in

	* src/insets/insetfoot.C
	(InsetFoot::latex): ditto

	* src/insets/insetnote.C
	(InsetNote::latex): ditto

	* src/exporter.C
	(Exporter::Export): Create runparams with document encoding

	* src/converter.C
	(bool Converters::convert): ditto

	* src/buffer.C
	(Buffer::writeLaTeXSource): Copy back encoding to runparams_in
	(Buffer::runChktex): Create runparams with document encoding
	(Buffer::changeRefsIfUnique): ditto

	* src/outputparams.[Ch]
	(encoding): New member

	* src/lyxfont.C
	(LyXFont::latexWriteStartChanges): Don't switch the encoding anymore.
	This is now done in Paragraph::simpleTeXOnePar.
	(LyXFont::latexWriteEndChanges): Ditto

	* src/output_latex.C
	(TeXOnePar): Ditto

	* src/paragraph.C
	(Paragraph::simpleTeXOnePar): Switch the encoding between font
	changes if needed.

	* All other files: Adjust to the changes above


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17470 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-18 10:59:16 +00:00
Abdelrazak Younes
8186a02d61 Add const access to caption type.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17445 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-15 11:47:02 +00:00
Georg Baum
c6caf4199b fix typo
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17444 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-14 20:23:54 +00:00
Uwe Stöhr
f84d08a078 - fix bug 2458
http://bugzilla.lyx.org/show_bug.cgi?id=2458
- whitespace

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17395 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-02 22:20:32 +00:00
Georg Baum
13f08c6215 Fix bug 3232
* src/insets/ExternalSupport.C
	(updateExternal): Don't forbid conversions using the default converter


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17380 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-28 09:12:32 +00:00
Georg Baum
0419779ef9 fix compiler warnings about unused parameters
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17325 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-24 17:18:13 +00:00
Michael Schmitt
8b177d7446 * src/insets/insetbox.C: plaintext(): add missing \n
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17323 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-24 15:54:11 +00:00
Michael Schmitt
6ab7047f3a * insets/*.C: constify docstring in plaintext()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17317 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-24 14:35:38 +00:00
Georg Baum
3a64f157b7 * src/insets/insetbox.C
(InsetBox::validate): Don't require the calc package anymore for
	pure minipages (as it was done in 1.3.x)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17312 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-23 18:39:54 +00:00
Georg Baum
4bbddb06e6 fix compiler warning
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17294 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-21 21:09:43 +00:00
Georg Baum
56ce8aa9e0 fix compiler warning
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17285 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-20 20:53:37 +00:00
Georg Baum
2d85046fd7 Fix crash after inset-insert ert, from Bernhard Roider
Extend this to some other cases by me.

	* src/insets/insetert.C
	(void InsetERTMailer::string2params): Test for lex.isOK rather than
	lex, since the latter is also true if there was nothing to read.

	* src/insets/insetvspace.C
	(InsetVSpace::read): ditto
	(InsetVSpaceMailer::string2params): ditto

	* src/insets/insetnote.C
	(InsetNoteParams::read): ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17284 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-20 20:48:23 +00:00
Michael Schmitt
d8fd1b7a24 * src/insets/insetinclude.[Ch]: fix plaintext(); code formatting
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17281 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-20 19:14:55 +00:00
Michael Schmitt
80328d2053 * src/insets/insetcommand.C: fix plaintext() output
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17277 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-20 18:02:46 +00:00
Michael Schmitt
3157f17825 * inset*.C:
* insetbase.h: introduce new enum PLAINTEXT_NEWLINE and use
	it instead of runparams.linelen for plaintex() return values


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17275 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-20 17:52:41 +00:00
Michael Schmitt
2148e75116 * src/insets/insetert.C:
* src/insets/insetoptarg.C: add comment that we do not output anything
	for plaintext output INTENTIONALLY


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17244 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-18 18:55:11 +00:00
Georg Baum
af239344a7 Fix bugs 3240 and 3241
* src/insets/ExternalSupport.C
	(doSubstitution): redo the substitution with use_latex_path == false
	for the filename argument of $$Contents, since the original
	substitution might have been done with use_latex_path == true, and
	that can lead to escaped filenames that are only valid for TeX.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17242 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-18 18:29:25 +00:00
Michael Schmitt
2d550da85b * src/insets/insetexternal.[Ch]: fix plaintext(); code formatting; header alignment
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17237 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-18 10:57:23 +00:00
Michael Schmitt
f7d54f2afc * src/insets/insettabular.[Ch]: fix plaintext(); code formatting
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17236 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-18 10:47:08 +00:00
Michael Schmitt
16b2e76d1a * src/insets/insetbititem.C:
* src/insets/insetcite.C:
	* src/insets/insetcite.h: fix plaintext(); code formatting


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17234 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-17 16:36:45 +00:00
Michael Schmitt
1afeb2e34f * src/insets/insetfloatlist.C: fix plaintex()
* src/insets/insetfloatlist.h:
	* src/insets/insetcharstyle.[Ch]: code formatting


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17232 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-17 15:28:50 +00:00
Michael Schmitt
757d2bc963 * src/insets/insettoc.[Ch]:
* src/insets/insetspecialchar.[Ch]: fix plaintext(); WS changes


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17231 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-17 11:59:42 +00:00
Michael Schmitt
6d2a778724 * insetgraphics.[Ch]:
* insetquotes.C: fix plaintext(); WS changes


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17230 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-17 11:30:58 +00:00
Michael Schmitt
ac5f26744c * src/insets/insetnewline.C:
* src/insets/insetpagebreak.C:
	* src/insets/insetvspace.C: fix/comment on plaintext() return value
	* src/insets/insetvspace.h: WS changes


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17229 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-17 11:18:15 +00:00
Bo Peng
204f783bb1 Forget to set selection in r17213
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17222 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-16 15:38:34 +00:00
Michael Schmitt
85e92379ef * src/insets/insetbase.[Ch]: make plaintext() abstract to force subclasses to
implement it by themselves
	* src/insets/insetenv.[Ch]: fix plaintext()


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17220 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-16 10:05:30 +00:00
Michael Schmitt
bcb5133e54 * src/insets/insetcaption.*: fix plaintext(); add private computeFullLabel() to
refactor code used at two places


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17219 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-16 09:53:51 +00:00
Michael Schmitt
26054c940e * src/insets/insetbranch.[Ch]:
* src/insets/inseturl.[Ch]:
	* src/insets/insetfoot.[Ch]: fix plaintext() & WS changes


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17218 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-16 09:28:25 +00:00
Michael Schmitt
6c9e07b2da * src/insets/insetcollapsable.[Ch]: constify floatName()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17217 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-16 09:11:19 +00:00
Michael Schmitt
c2407338d0 * src/insets/insetfloat.[Ch]:
* src/insets/insetwrap.[Ch]:
	* src/insets/insetmarginal.[Ch]: fix plaintext(); code formatting


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17215 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-16 08:15:16 +00:00
Bo Peng
9448169466 Fix of bug 3238. Disable persistent selection for selections in tablemode.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17213 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-16 03:49:19 +00:00
Michael Schmitt
922dbdb1db * src/insets/insetspace.[Ch]:
* src/insets/insetoptarg.[Ch]:
	* src/insets/insetlabel.C: fix plaintext()


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17210 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-15 23:44:33 +00:00
Michael Schmitt
bfef2cba5e * insetref.C:
* insetcommand.[Ch]:
	* insetpagebreak.[Ch]: fix plaintext(); some header cleanup


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17209 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-15 23:28:31 +00:00
Michael Schmitt
517fdc10c3 * src/insets/insetnewline.C: plaintext(): fix line length
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17208 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-15 23:24:15 +00:00
Michael Schmitt
2ca15c641a * src/insets/insetbox.[Ch]:
* src/insets/insetnote.[Ch]: fix plaintext()


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17207 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-15 22:59:06 +00:00
Michael Schmitt
5caa8e2c6d * insetert.[Ch]:
* insetnewline.[Ch]:
	* insetline.[Ch]: fix plaintext()


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17206 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-15 22:27:45 +00:00
Michael Schmitt
e5dab3fc94 * src/insettext.C: fix line lengths and par breaks in plaintext()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17205 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-15 22:04:33 +00:00
Georg Baum
e1efef8a60 Fix bug 3240
* src/insets/ExternalSupport.C
	(updateExternal): Add new dryrun flag and only record updated files
	for the exporter if that flag is false
	(writeExternal): Call updateExternal also if dryrun is true and the
	product contains the $$Contents placeholder. In this case we need to
	run the conversion(s) even in dryrun mode, because we would not
	output the right stuff to the .tex file otherwise.

	* src/insets/ExternalSupport.[Ch]
	(writeExternal): rename external_in_comment flag to dryrun


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17204 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-15 21:22:40 +00:00
Michael Schmitt
1baa28f2bc * src/output_plaintext.C: check line length before outputting
a word in front of an inset; make sensible use of plaintext()
	return value (IMHO totally broken before)
	* insets/insetfoot.[Ch]: add plaintext()
	* insets/insethfill.[Ch]: adjust plaintext(); make the 
	number of characters determinitic; minor header cleanup
	* insets/insetbase.h: add comment on return value
	of plaintext() - before its meaning was unclear 


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17200 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-15 16:07:36 +00:00
Enrico Forestieri
1b21743511 Fix bug 3220
* src/insets/ExternalSupport.C
	(updateExternal): Avoid computing crc of a directory as this leads
	to a crash on Cygwin.

	* lib/configure.py:
	Use a python script to get the current date in order to avoid
	a stalling condition with the date command on Win32.

	* lib/scripts/date.py:
	New python script.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17168 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-13 19:09:54 +00:00
Abdelrazak Younes
46839bd500 Tentatively fix bug 3225, the inset width and the outer text width should stay in sync.
http://bugzilla.lyx.org/show_bug.cgi?id=3225

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17159 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-13 10:37:22 +00:00
Uwe Stöhr
9652acee93 small fix to changeset 17143
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17156 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-12 20:03:41 +00:00
Georg Baum
19240e9827 zero-byte files don't make sense...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17151 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-12 08:02:17 +00:00
Uwe Stöhr
9492044ef7 rename label for prettyref inset to fix bug 1134
http://bugzilla.lyx.org/show_bug.cgi?id=1134

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17149 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-12 02:15:04 +00:00
José Matox
76c3d964df Convert lyxaccents to unicode (most of the work comes from Georg)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17144 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-11 23:52:07 +00:00
Uwe Stöhr
c9008ed3d8 adjust caption metrics to fix bug 3217
http://bugzilla.lyx.org/show_bug.cgi?id=3217

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17143 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-11 23:35:12 +00:00
Georg Baum
365cc69f82 whitespace only
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17128 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-10 11:08:05 +00:00
Georg Baum
a405fc2708 * src/insets/insetexternal.C
(InsetExternal::latex): Handle the dryrun flag correctly: Only
	create the LaTeX output, do not do any file conversions.
	(InsetExternal::plaintext): ditto
	(InsetExternal::docbook): ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17127 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-10 11:03:26 +00:00
Georg Baum
30c57da67b Never strip the extension for non-nice latex export, since pdflatex might
otherwise use wrong images (png instead of png).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17118 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-08 21:14:40 +00:00
Georg Baum
3515584551 * src/insets/insetgraphics.C
(InsetGraphics::prepareFile): Use correct extension if it cannot be
	stripped. I overlooked this when I did the
	stripExtension -> stripExtensionIfPossible change in revision 10093.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17117 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-08 21:12:33 +00:00
Abdelrazak Younes
e8aae76ec5 Fix bug 3187 (second round) by Martin V.:
http://bugzilla.lyx.org/show_bug.cgi?id=3187

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17089 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-07 17:08:24 +00:00
Abdelrazak Younes
e2c8e359c0 Properly adjust space after collapsable inset (the (int) cast there was applied to 1.5 only).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17082 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-07 10:39:38 +00:00
Abdelrazak Younes
3b8a3f91bc Fix bug 3187 from Martin Vermeer:
http://bugzilla.lyx.org/show_bug.cgi?id=3187


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17069 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-06 14:23:06 +00:00
Abdelrazak Younes
52b5a2c5e1 Fix bug 3192 and 3193
http://bugzilla.lyx.org/show_bug.cgi?id=3192
http://bugzilla.lyx.org/show_bug.cgi?id=3193


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17059 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-05 17:39:42 +00:00
Abdelrazak Younes
c81094bef0 * Fix bug 3202 (http://bugzilla.lyx.org/show_bug.cgi?id=3202)
* Augment a bit the space between nested insets.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17058 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-05 17:07:44 +00:00
Abdelrazak Younes
40d7cf1478 This inset does not have to be wide. This property does not fit well inside captions and longtables.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17055 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-05 16:38:51 +00:00
Georg Baum
1c5815ed31 Bug fix of the day: 3200 (Not possible to insert short title to captions)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17029 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-02 21:08:44 +00:00
Jean-Marc Lasgouttes
8615d0a6fa * insetbase.h: add new enum PAGEBREAK_CODE
* insetpagebreak.h: use it

	* insetcaption.C (insetAllowed): new method. Reduce the list of 
	forbidden insets
	(dispatch): remove code handled above; re-allow some LFUNs.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17026 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-02 13:55:14 +00:00
Bo Peng
8b56166641 Persistent-selection (and fix bug 3162)
* src/CutAndPaste.h/C: add selectionBuffer to save selected text
	* src/text3.C: proper handling of paste
	* src/lyxfind.C: save selection
	* src/BufferView.C: save selection
	* src/text.C: save selection
	* src/cursor.C: save selection
	* src/insets/insettabular.C: save selection
	* src/mathed/InsetMathGrid.C: save selection
	* src/mathed/InsetMathHull.C: save selection
	* src/mathed/InsetMathNest.C: save selection


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17022 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-02 03:10:15 +00:00
Abdelrazak Younes
969ab85d98 A better fix for bug 675:
http://bugzilla.lyx.org/show_bug.cgi?id=675

The former one also disabled cross-reference insertion.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17008 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-01 14:43:13 +00:00
Abdelrazak Younes
0a1a789c52 Partially fix bug 675, the graphics dialog still opens will disabled button...
http://bugzilla.lyx.org/show_bug.cgi?id=675



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17005 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-01 13:39:20 +00:00
Abdelrazak Younes
0e0a17ff0a Fix lists of figures and tables. Prepare the code for user defined captions.
* buffer_funcs.C::setCaptionLabels(): set the type as well as the custom label.

* InsetCaption:
  - setType(): new method to set the type of the caption
  - setCustomLabel(): renamed from setLabel, translate if possible.
  - addToToc(): implement.
  - metrics(): use custom_label_ if defined.

* InsetFloat::addToToc(): don't do anything.

* InsetWrap::addToToc(): don't do anything.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17001 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-01 12:45:14 +00:00
Abdelrazak Younes
198a1c3976 Add "Senseless!!! " label to non supported caption.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16968 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-31 13:35:12 +00:00
Abdelrazak Younes
99b41514b6 Fix bug 3170:
http://bugzilla.lyx.org/show_bug.cgi?id=3170

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16964 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-31 09:55:12 +00:00
Abdelrazak Younes
500a5f959f The caption inset patch by Georg, Martin and myself.
* buffer.C: increase LyX format to 257.

* lyxtextclass.C: increase FORMAT format to 3.

* buffer_funcs.C: 
  - setCaptionLabels(): new recursive function
  - setCaptions(): new function
  - updateLabels(): call setCaptions() for each paragraph.

* InsetCaption:
  - add a virtual destructor
  - overload InsetText' getStatus() and wide().
  - setLabel(): only set the new private member label_.
  - metrics(): don't set label here and correct for title metrics.
  - draw(): don't set label here
  - latex(): fix optional argument.
  - plaintext(): implement!

* InsetText:
  - add a virtual destructor
  - add virtual to getStatus() and wide().

*  output_latex.[Ch]: move latexOptArgInsets() out of anon namespace.

* text3.C: enable LFUN_CAPTION_INSERT


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16948 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-30 13:23:21 +00:00
Michael Schmitt
77427d620a * src/lyxtext.h:
* src/text.C: rename acceptOrRejectChange() to acceptOrRejectChanges() because it can handle many changes within the given selection; add acceptChanges() and rejectChanges()

* src/text3.C:
* src/BufferView.C: adjust

* src/insets/insettext.C: accept/rejectChanges() become wrapper methods that call LyXText::acccept/rejectChanges

* src/text2.C: add assertion

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16859 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-25 22:28:15 +00:00
Michael Schmitt
f4cc84d5a6 * src/lyxtext.h: add enum ChangeOp (ACCEPT/REJECT); add deleteEmptyParagraphMechanism()
* src/text.C:
* src/text3.C:
* src/BufferView.C: adjust

* src/insets/insettext.C: acceptChanges() / rejectChanges(): fix pars_size bug introduced in previous commit; call deleteEmptyParagraphMechanism()

* src/text2.C: track changes in DEPM (I am not sure about whether this is actually useful; time will tell..); add deleteEmptyParagraphMechanism(pit_type, pit_type, bool)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16858 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-25 21:18:36 +00:00
Georg Baum
27a777ccc6 Real fix from Bernhard Roider
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16857 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-25 21:12:12 +00:00
Abdelrazak Younes
3c1d5a48af Fix bug 3135 by Bernhard Roider:
<http://bugzilla.lyx.org/show_bug.cgi?id=3135> 

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16855 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-25 20:16:30 +00:00
Georg Baum
0657a91fd0 fix compiler warnings about unused parameter
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16839 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-24 19:02:41 +00:00
Abdelrazak Younes
024275f069 Small formatting and comment cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16838 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-24 17:19:56 +00:00
Abdelrazak Younes
3f8fa07c6e get rid of MSVC warning (signed/unsigned comparison)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16837 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-24 17:05:49 +00:00
Michael Schmitt
2e09a925a5 * src/lyxtext.h:
* src/BufferView.C:
* src/text3.C:
* src/text.C: merge methods acceptChange() and rejectChange() to acceptOrRejectChange() because they share a lot of tricky code

* src/text.C: yet another revision of acceptOrRejectChange()

* src/paragraph.C:
* src/paragraph.h:
* src/paragraph_pimpl.C:
* src/paragraph_pimpl.h:
* src/insets/insettabular.C:
* src/insets/insettabular.h:
* src/insets/insettext.C:
* src/insets/insettext.h:
* src/insets/insetbase.h: pass BufferParams to acceptChanges() and rejectChanges() (needed for paragraph merging)

* src/insets/insettext.C: handle end-of-par in acceptChanges() and rejectChanges()

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16830 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-23 21:53:16 +00:00
Georg Baum
bac837c959 From Bernhard Roider:
* src/insets/insetexternal.C
	(InsetExternalParams::read): Read filenames with spaces correctly


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16800 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-21 21:46:33 +00:00
Georg Baum
b9d1b797c9 Some renaming (has been discussed a long time ago)
* src/LaTeXFeatures.[Ch]
	(LaTeXFeatures::addExternalPreamble): rename to addPreambleSnippet,
	since this is not specialized for InsetExternal at all

	* src/insets/insetexternal.C
	(InsetExternal::validate): reflect name change above


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16784 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-20 17:08:39 +00:00
Georg Baum
e586357ce5 whitespace
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16776 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-20 13:17:40 +00:00
Abdelrazak Younes
5ed7e7a03c PreparePrepare for independent decoration drawing and correct a CoordCache bug: Previously, only the math insets containing the cursor were put in the cache. I believe this was the reason for some of the weird problems with cursors in math (egg: cursor trapped in a fraction).
* insetbase.C
  - drawMarkers(): draw the decoration in any case (but visible only in editing mode). Fill-in the CoordCache in any case.
  - drawMarkers2(): ditto.




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16773 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-20 01:15:05 +00:00
Abdelrazak Younes
5c4844af43 Prepare for independent decoration drawing.
* InsetBase::drawDecoration(): new method.

* all other files: implement drawDecoration().


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16772 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-20 00:55:24 +00:00
Jean-Marc Lasgouttes
2de99bed22 * insetbranch.C (textString): implement, so that branches appear
in the ToC.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16767 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-19 16:23:47 +00:00
Jean-Marc Lasgouttes
b7518c3c95 * insets/insetbase.h (textString): Simplify the signature
* insets/insetquotes.C (textString):
	* insets/insetcharstyle.C (textString):
	* mathed/InsetMathHull.C (textString): adapt.

	* insets/insetquote.C (plaintext, textString): output disString 
	instead of a raw quote.

	* paragraph.C: adapt and remove unused methods.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16766 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-19 16:23:13 +00:00
Michael Schmitt
c5df681fe8 * insets/insetfloatlist.C:
* insets/insettoc.C:
	* TocBackend.C:
	* TocBackend.h: rename 'asciiTocList()' to '.writePlaintextTocList'

	* insets/insettext.C:
	* output_plaintext.C:
	* output_plaintext.h: rename 'asciiParagraph' to 'writePlaintextParagraph'

	* output_plaintext.C:
	* exporter.C:
	* output_plaintext.h: rename 'writeFileAscii' to 'writePlaintextFile'

	* lyxrc.C: change lyxrc section title (ASCII => PLAIN TEXT)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16756 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-18 22:29:50 +00:00
Abdelrazak Younes
3d2184730a * mover.h
- SpecialisedMover(): add virtual destructor (fix bug 2916)
  - Movers: rename iterator to const_iterator.
  - theMovers(), theSystemMovers(), getMover(), setMover(): new extern definitions.

* mover.C: 
  - SpecialisedMover::operator(): get rid of bogus MSVC warning.
  - delete global variable movers and system_movers.

* lyx_main.C:
  - LyX::Singletons: new movers_ ans system_movers members.
  - implement Movers access functions.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16743 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-18 08:42:53 +00:00
Georg Baum
c727c6db7f * src/insets/insetbase.h
(forceDefaultParagraphs): Fix comment: Not all text classes have a
	"Standard" layout. What was meant here is the default layout of the
	text class.

	* src/paragraph.C
	(Paragraph::simpleTeXOnePar): ditto

	* src/output_latex.C
	(latexParagraphs): ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16738 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-17 21:22:19 +00:00
Abdelrazak Younes
74f3ca3246 Transfer the global converters and system_converters variables to LyX::Singletons class.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16725 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-17 13:18:16 +00:00
Bo Peng
104051c151 Fix inline collapsable inset set focus crash
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16720 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-17 02:53:33 +00:00
Edwin Leuven
efdc3fee52 * avoid signal triggered by setChecked(bool)
* get rid of suprefluous mailer updates

should get rid of bugs:
http://bugzilla.lyx.org/show_bug.cgi?id=3076
http://bugzilla.lyx.org/show_bug.cgi?id=3077

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16705 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-16 12:24:49 +00:00
Michael Schmitt
1f7a1257f1 * change LFUN file-insert-ascii to file-insert-plaintext
* change LFUN file-insert-ascii-para to file-insert-plaintext-para
* change LyXRC::RC_ASCIIROFF_COMMAND to LyXRC::RC_PLAINTEXT_ROFF_COMMAND
* change LyXRC::RC_ASCII_LINELEN to LyXRC::RC_PLAINTEXT_LINELEN
* replace "ascii" by "plaintext" in method names


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16697 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-15 22:49:14 +00:00
Georg Baum
3500af60ba Fix bug 2138: copy and paste should preserve formatting between different
LyX instances. This re-enables copy/paste from the internal clipboard on
OS X (currently broken since Clipboard::isInternal() always returns false for
some reason).

	* src/insets/insettabular.C
	(InsetTabular::doDispatch): adjust to clipboard interface change
	(InsetTabular::copySelection): ditto

	* src/mathed/InsetMathGrid.C
	(InsetMathGrid::doDispatch): ditto

	* src/mathed/InsetMathNest.C
	(InsetMathNest::doDispatch): ditto

	* src/buffer.[Ch]
	(Buffer::readString): New method: Read document from a string
	(Buffer::readFile): Change return value from bool to enum (needed
	for readString). Return wrongversion if we are reading from a string
	and the version does not match.
	(Buffer::do_writeFile): make public and rename to write

	* src/CutAndPaste.C
	(putClipboard): New helper, put stuff to the system clipboard
	(void copySelectionHelper): Use putClipboard instead of
	theClipboard().put()
	(void copySelection): ditto
	(void pasteClipboard): new method for pasting in text
	(void pasteParagraphList):

	* src/frontends/Clipboard.h
	(Clipboard::get): Rename to getAsText
	(Clipboard::getAsLyX): New method for getting the system clipboard
	in LyX format
	(Clipboard::hasLyXContents): New method telling whether there is LyX
	contents in the clipboard

	* src/frontends/qt4/GuiClipboard.[Ch]: Implement the new methods

	* src/text3.C
	(LyXText::dispatch): Use pasteClipboard for pasting the system
	clipboard


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16669 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-13 18:29:50 +00:00
Enrico Forestieri
6b513c51f1 Make sure that all inputed filenames are in internal style, and avoid
a bug on Windows due to an unnecessary conversion to external style.

	* src/insets/ExternalSupport.C
	(subst_path): avoid a bug in the external material inset on Windows
	by don't using external_path. The filename will be quoted and thus
	there will be no problems with forward slashes.

	* src/frontends/qt4/QGraphics.C
	* src/frontends/qt4/QExternal.C
	* src/frontends/qt4/QInclude.C:
	(Qxxx::apply): On Windows, the user could input an absolute path in
	native style by hand (without using the file dialog), so make sure
	that no backslashes can slip in by this way.

	* src/frontends/qt4/QPrefsDialog.C
	(internal_path_list, external_path_list): new wrappers for the
	corresponding functions in the os namespace.
	(PrefPaths::apply): make sure that path_prefix is stored in the
	internal style, i.e., without backslashes.
	(PrefPaths::update): make sure that path_prefix is displayed to
	the user in the native style.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16659 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-12 03:19:58 +00:00
Enrico Forestieri
8673c7ef02 Fix problem with non-ascii filenames in include inset
* src/insets/insetinclude.C
	(InsetInclude::getScreenLabel): use from_utf8 instead of from_ascii


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16634 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-10 00:30:49 +00:00
Georg Baum
bcb1654b15 Make the output of \inputencoding commands (and the change of output
encodings) more fine grained: From paragraph level to individual character
level. The inputenc package supports that since at least 2000.

	* src/insets/insetbase.h
	(latex): Document the differences between output to a string stream
	and a file stream

	* src/buffer.h
	(writeLaTeXSource): ditto

	* src/output_latex.h
	(latexParagraphs): ditto
	(switchEncoding): new function to change the encoding of a stream
	(and output \inputencoding commands)

	* src/paragraph_pimpl.C
	(Paragraph::Pimpl::simpleTeXSpecialC): Adjust to latexWriteEndChanges
	changes

	* src/support/docstream.[Ch]
	(setEncoding, operator<<): New stream modifier that changes the
	encoding of file streams

	* src/lyxfont.[Ch]
	(LyXFont::latexWriteStartChanges): Change stream encoding if needed
	(LyXFont::latexWriteEndChanges): Change stream encoding if needed

	* src/lyxfont.h
	(public:):

	* src/paragraph.C
	(Paragraph::simpleTeXOnePar): Adjust to latexWriteStartChanges and latexWriteEndChanges changes
	(bool Paragraph::simpleTeXOnePar):
	(bool Paragraph::simpleTeXOnePar):
	(bool Paragraph::simpleTeXOnePar):
	(bool Paragraph::simpleTeXOnePar):
	(bool Paragraph::simpleTeXOnePar):

	* src/output_latex.C
	(TeXOnePar): Remove the ugly hack to for wencoding changes and use
	switchEncoding instead. A nice side effect is that the old hack would
	not work if the main language encoding is latin1 and a character
	would be mapped to a cedilla in the "fake ucs4" encoding, because
	iconv refuses to convert such a character to latin1, although it
	exists in latin1 (it wants to attach it to a base character).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16633 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-09 19:25:40 +00:00
Georg Baum
c3bb45648c include tabulars and math in the "paste recent" stack
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16611 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-08 18:40:37 +00:00
Jürgen Spitzmüller
ba57568a72 * src/insets/insetcite.C (getNatbibLabel): correct check for citation key cache.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16609 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-08 17:38:39 +00:00
Abdelrazak Younes
827f20ce1f same performance fix as rev. 16600.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16601 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-08 11:42:20 +00:00
Abdelrazak Younes
c2dee509d9 performance fix.
* InsetFloat::addToToc(): avoid a string copy, a map lookup and a TocItem construction. Don't complete the loop if item found.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16600 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-08 11:35:55 +00:00
Georg Baum
16b2b8e6bc fix typos
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16580 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-07 17:54:26 +00:00
Georg Baum
fed31122c4 Tell X the selection status also after it is changed by the keyboard, since
we got a consensus on this on the list.
Some calls of haveSelection are still missing, but we need to decide the
"persistent selection" question before those can be implemented properly.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16572 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-07 14:44:44 +00:00
Georg Baum
31bc611f34 Fix bug 3067: Special column attributes can contain non-ascii characters,
so store them in a docstring.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16537 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-05 17:11:32 +00:00
Georg Baum
3c323c1a37 The uncontroversal part of the selection fix: Always set the X selection
after selecting something with the mouse

	* src/insets/insettabular.C
	(InsetTabular::doDispatch): Set the X selection if there is a
	selection after release of the left mouse button

	* src/mathed/InsetMathNest.C
	(InsetMathNest::doDispatch): Set the X selection after double and
	triple click of the left mouse button
	(InsetMathNest::lfunMouseRelease): Set the X selection if there is a
	selection after release of the left mouse button


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16530 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-05 13:31:37 +00:00
Jean-Marc Lasgouttes
bce5521446 * insetcollapsable.C (doDispatch): [LFUN_MOUSE_PRESS] reset selection
when mouse is pressed on the inset button (bug 3060).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16501 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-04 13:53:16 +00:00
Georg Baum
8f2243819a Let LFUN_PASTE always paste the most recent clipboard (internal or system)
* src/insets/insettabular.C
	(InsetTabular::doDispatch): Only paste the tabular clipboard if the
	system clipboard is not newer, else let the current cell paste the
	system clipboard
	(InsetTabular::getStatus): Only decide whether to enable LFUN_PASTE
	if the tabular clipboard is not empty and the system clipboard is
	not newer, else let the current cell decide.

	* src/mathed/InsetMathGrid.C
	(InsetMathGrid::doDispatch): Use the system clipboard for LFUN_PASTE
	if it is newer.

	* src/mathed/InsetMathNest.C
	(InsetMathNest::doDispatch): Use the system clipboard for LFUN_PASTE
	if it is newer.

	* src/text3.C
	(doInsertInset): Add a "0" argument to LFUN_PASTE, because we always
	want to use the internal clipboard here
	(LyXText::dispatch): ditto (when handling mouse button 2 press)
	(LyXText::dispatch): Use the system clipboard for LFUN_PASTE if it
	is newer.
	(LyXText::getStatus): Also enable LFUN_PASTE if the system clipboard
	is owned by another application


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16498 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-04 12:05:24 +00:00
Georg Baum
9479b1323f * src/insets/insettabular.C
(InsetTabular::getStatus): Correctly enable LFUN_PASTE when the
	special tabular clipboard is empty by removing an errornous
	fall-through to LFUN_INSET_MODIFY


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16495 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-04 11:05:22 +00:00
Georg Baum
129f5b6431 Get rid of InsetTabular::hasPasteBuffer. I verified that it was equivalent
to cap::tabularStackDirty().


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16494 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-04 11:00:09 +00:00
Georg Baum
b7c5197b7e forgot the break
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16493 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-04 09:50:25 +00:00
Georg Baum
c9bd56ab18 * src/insets/insettabular.C
(InsetTabular::doDispatch): Don't reset the table paste buffer
	when pasting from the external clipboard or selection, since no
	paste operation should ever change any clipboard.
	At the same time make the code more readable by removing the
	fall-through.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16492 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-04 09:48:54 +00:00
Abdelrazak Younes
a64d5ba362 Transfer x2pos() and pos2x from LyXText to TextMetrics.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16458 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-01 11:36:30 +00:00
Abdelrazak Younes
b2126408cf This commit do the Model/View separation of the LyXText and Paragraph classes. The separation is mostly complete for the Paragraph class but some more transfer should occur for the LyXText class.
* ParagraphMetrics.[Ch]: new files

* TextMetrics.[Ch]: new files.

* lyxtext.h/text2.C/text3.C: some code transferred to the TextMetrics class.

* paragraph.[Ch]: all screen oriented code transfered to ParagraphMetrics class.

* BufferView:
 - text_metrics_: new TextMetrics cache private member.
 - textMetrics(): new access method.
 - parMetrics(): ditto.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16433 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-29 23:54:48 +00:00
Jean-Marc Lasgouttes
7459f3ad6a * insetcollapsable.C (hasFixedWidth): new virtual method, returns
false by default.
	(metrics): do not set to openinlined if
	hasFixedWidth is true.

	* insetbox.C (hasFixedWidth): returns true if the box has a fixed
	width. 
	(metrics): use hasFixedWidth.
	



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16426 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-29 11:52:01 +00:00
Georg Baum
5e5dc39d2c fix typo
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16414 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-28 12:05:40 +00:00
Georg Baum
4de1cc0339 remove obsolete comment
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16413 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-28 12:01:27 +00:00
Bo Peng
36b485d842 Fix a crash caused by cur.text() != this for collapsable insets
* src/insets/insetcollapsable.C: test if inset is open before editing


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16406 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-28 03:00:48 +00:00
Georg Baum
979fdf7456 Fix strange bibtex problem by converting some more functions to use FileName
instead of std::string

	* src/support/lyxlib.h
	* src/support/getcwd.C
	(getcwd): return a FileName, not a std::string in filesystem encoding

	* src/support/filetools.[Ch]
	(makeAbsPath): return a FileName, not a std::string in undefined encoding

	* src/support/lyxlib.h
	* src/support/tempName.C
	(makeAbsPath): return a FileName, not a std::string in undefined encoding

	* many other files: Adjust to the changes above


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16399 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-27 10:56:11 +00:00
Georg Baum
6c4aa88c2e remove unused stuff
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16395 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-27 08:40:40 +00:00
Georg Baum
07e76f0911 get rid of more utf8 conversions
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16376 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-22 09:23:10 +00:00
Edwin Leuven
5ad83ced7c avoids updates on
1. mouse click (without selection)
 2. mouse movements (when selection doesn't change) 

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16373 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-21 21:27:04 +00:00
Jean-Marc Lasgouttes
9c513e90d1 * insetcollapsable.C (doDispatch): fix crash in previous patch
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16344 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-20 13:25:46 +00:00
Georg Baum
0d089d48ca fix formatting
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16340 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-19 18:04:42 +00:00
Jean-Marc Lasgouttes
6853846d98 * insetcollapsable.C (doDispatch): do nothing on mouse release if
there is a selection.




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16337 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-19 15:42:10 +00:00
Georg Baum
e4c3ce4627 Convert most of the bibtex machinery to docstring.
Don't limit citation keys to ASCII anymore, since InsetBibitem can generate
non-ASCII keys.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16310 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-17 10:52:04 +00:00
Edwin Leuven
6bfb3e6dc4 georg baum:
- add encoding arg to idocfstream
- open .bib files with idocfstream
- add ascii_lowercase that takes docstring

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16281 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-15 16:09:05 +00:00
Jürgen Spitzmüller
50eba7d4f2 * insettabular.C (doDispatch): call mouseSetCursor on mouse
click to ensure dEPM is triggered.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16245 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-11 17:10:11 +00:00
Abdelrazak Younes
a68da74622 unneeded header
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16200 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-07 12:06:10 +00:00
Bo Peng
af75e269c7 Add a copy constructor of InsetCollapsable to fix the follow bug:
mouse_hover_ is copied with copied collapsable insets. Should be false for
newly copied insets.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16182 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-05 05:36:59 +00:00
Bo Peng
b02d655347 fix a compiler warning regarding unused variable
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16179 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-05 02:18:29 +00:00
Georg Baum
9eab5fa88a more unicode filenames
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16173 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-04 15:46:57 +00:00
Georg Baum
3314702bf1 more unicode filenames
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16171 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-04 14:45:17 +00:00
Bo Peng
7c184e5426 Button face-lift: use mouse hover-buttons.
* src/insets/insetbase.h: add setMouseHover function
	* src/insets/insetcommand.h/C: handle setMouseHover
	* src/insets/insetcollapsable.h/C: handle setMouseHover
	* src/LColor.h/C: redefine some colors
	* src/insets/render_base.h: add state_
	* src/insets/render_button.C: draw differently according to state_
	* src/frontends/Painter.h/C: hover-stype button
	* src/frontends/qt4/GuiWorkArea.C: enable mouse tracking
	* src/BufferView.C: track mouse_motion without button events


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16162 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-04 04:31:18 +00:00
Georg Baum
ed99f752f9 more unicode filenames
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16133 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-02 16:07:15 +00:00
Georg Baum
c0a7417f20 fix display of hungarian umlaut
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16128 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-01 21:13:47 +00:00
Georg Baum
5afcd541fd more unicode filenames
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16127 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-01 20:09:08 +00:00
Abdelrazak Younes
e24bf64c68 * dimension.h: new operator!=() and operator=()
* InsetBase and all derivates:
  - metrics(MetricsInfo & mi, Dimension & dim) now returns a bool (true if metrics changed).

* MathData and all derivates:
  - metrics(MetricsInfo & mi, Dimension & dim): ditto.

* RenderBase and all derivates:
  - metrics(MetricsInfo & mi, Dimension & dim): ditto.

* lyxtext.h/text.C:
  - LyXText::metrics(MetricsInfo & mi, Dimension & dim): ditto.
  - LyXText::redoParagraph(): take into account potential change in inset metrics.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16091 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-28 15:15:49 +00:00
Jürgen Spitzmüller
288fbc7a6b * src/insets/insettabular.C (doDispatch): do not reset cursor/selection
if we have selected some cells (bug 2715).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16075 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-27 14:51:09 +00:00
Georg Baum
8e6e970d7b Next step of true unicode filenames: Use support::FileName instead of
std::string at many places (not all yet).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16069 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-26 21:30:39 +00:00
Michael Schmitt
f96236b5f5 * src/insets/insetpagebreak.C:
* src/insets/insetpagebreak.h: fix localization


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16039 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-25 16:52:09 +00:00
Georg Baum
82b0e98d54 missing bits of the new insets for \clearpage and \cleardoublepage
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16038 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-25 15:57:27 +00:00
Bo Peng
7b031e5d86 Add inset clearpage and cleardoublepage, from Urgas
* src/insets/insetert.C
	* src/text3.C
	* src/lfuns.h
	* src/factory.C
	* src/tex2lyx/text.C
	* src/text.C
	* src/LyXAction.C: add and handle LFUN_CLEARPAGE_INSET and LFUN_CLEARDOUBLEPAGE_INSET
	* src/insets/insetpagebreak.h/C: extend InsetPageBreak
	* lib/lyx2lyx/lyx_1_5.py: file format change
	* lib/ui/stdmenus.ui: add menu items


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16037 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-25 15:09:01 +00:00
Michael Schmitt
0777d41fef * insets/inset.h:
* rowpainter.C: visualize deleted/inserted end-of-par characters (change tracking)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16017 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-23 18:59:05 +00:00
Michael Schmitt
653c52e2d2 * insets/insetbase.h:
* buffer.C:
	* LaTeX.C:
	* frontends/qt4/ui/QPrefFileformatsUi.ui:
	* MenuBackend.C: fix typo: "can not" => "cannot"


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15981 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-19 12:43:22 +00:00
Georg Baum
34a773b8cf Split FileName into FileName and DocFileName. FileName will be used for all
file names, and DocFileName contains the special extensions for documents,
included figures etc.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15965 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-18 12:49:47 +00:00
Abdelrazak Younes
c66d2f1ee5 Optimize drawing.
* BufferView:
  - update(): returns a pair of bools in order to inform for singlePar cases.
  - workAreaDispatch(): ditto and simplify the logic by using cursor update flags.

* text.C
  - breakParagraph(): change the cursor update flag as needed.
  - insertChar(): ditto.
  - erase(): ditto
  - redoParagraph(): now returns true if there is a height change.

* text3.C: dispatch():
  - initialize the cursor flag at the beginning
  - LFUN_MOUSE_PRESS: no need to update.
  - LFUN_MOUSE_RELEASE: ditto.
  - add some FIXMEs and comments.

* LyXFunc::dispatch(): simplify the BufferView update.

* insets/insetcollapsable.C: clarify and simplify the logic in doDispatch().

* WorkArea::dispatch(): redraw only if needed.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15958 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-17 17:42:52 +00:00
Georg Baum
0735a7bcdc add clarifying comment
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15929 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-14 20:33:13 +00:00
Peter Kümmel
646c312740 don't pass temporary string objects as parameters
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15928 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-14 19:54:56 +00:00
Georg Baum
2734cc1548 Extend the navigate menu to child docs
* src/buffer_funcs.h
	(updateLabels): Add bool childonly argument

	* src/insets/insetbase.h
	(addToToc): New virtual method

	* src/insets/insetinclude.[Ch]
	(addToToc): New virtual method
	(updateLabels): New method

	* src/TocBackend.h: reorganize classes so that we can forward
	declare TocList

	* src/insets/insetfloat.[Ch]
	* src/insets/insetwrap.[Ch]
	(addToToc): Adjust to type changes in TocBackend.h

	* src/frontends/qt4/TocModel.[Ch]: ditto

	* src/frontends/controllers/ControlToc.[Ch]: ditto

	* src/TocBackend.C: ditto
	(TocBackend::update) Remove test for float and wrap inset,
	call virtual method instead

	* src/BufferView.C
	(BufferView::dispatch): make LFUN_PARAGRAPH_GOTO work even if the
	target paragraph is in a different buffer

	* src/MenuBackend.C: Adjust to type changes in TocBackend.h
	(expandToc): Add an entry for the master doc in child docs

	* src/buffer_funcs.C
	(setLabel): Add text class parameter
	(updateLabels): handle included docs if requested by the caller


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15904 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-13 16:53:49 +00:00
Georg Baum
5ed606f9c5 Add a cache for converted image files. This needs to be enabled in the
preferences file with \use_converter_cache true. It is disabled by default,
and no GUI support for changing the preferences is yet implemented.

	* src/insets/insetgraphics.C
	(InsetGraphics::prepareFile): Use image file cache

	* src/insets/ExternalSupport.C
	(updateExternal): Use image file cache

	* src/exporter.C
	(Exporter::Export): Do not use image file cache

	* src/graphics/GraphicsCacheItem.C

	(CacheItem::Impl::imageConverted): Add the converted file to the
	image file cache
	(CacheItem::Impl::convertToDisplayFo): Use image file cache

	* src/converter.C
	(Converters::convert): Use image file cache if the caller allowed that

	* src/converter.h
	(Converters::convert): Adjust arguments

	* src/Makefile.am: Add new files

	* src/support/lyxlib.h
	(chmod): new function
	(copy): add mode argument

	* src/support/copy.C
	(chmod): new function
	(copy): implement mode argument

	* src/support/mkdir.C
	(lyx::support::mkdir): Add warning if permissions are ignored

	* src/lyxrc.[Ch]: Add new settings \converter_cache_maxage and
	\use_converter_cache

	* src/ConverterCache.[Ch]: New image file cache

	* src/importer.C
	(Importer::Import): Do nut use the image file cache

	* src/lyx_main.C
	(LyX::init): Initialize the image file cache

	* src/mover.[Ch]
	(Mover::do_copy): Add mode argument
	(SpecialisedMover::do_copy): ditto

	* configure.ac: Check for chmod

	* development/cmake/ConfigureChecks.cmake: ditto

	* development/cmake/config.h.cmake: ditto

	* development/scons/SConstruct: ditto

	* development/scons/scons_manifest.py: Add new files


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15897 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-13 10:27:57 +00:00
Georg Baum
de38acaef0 unicode: ditch another utf8 roundtrip + some obsolete FIXMEs
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15866 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-11 21:09:51 +00:00
Georg Baum
a956cc56e6 unicode: ditch another utf8 roundtrip
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15865 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-11 20:59:04 +00:00
Georg Baum
f6730f66b0 Unicode: remove more utf8 roundtrips and faulty conversions to docstring
without from_utf8


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15864 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-11 20:55:40 +00:00
Abdelrazak Younes
479e9054db * Buffer
- new pimpled TocBackend member and associated accessors.

* toc.[Ch]: delete all toc related methods except outline.

* TocBackend:
  - goTo(): deleted, this gets rid of the LyXView dependency
  - made all accessors const.

* ControlToc: 
  - rework the controller to work exclusively with TocBackend.
  - goTo(): now call LyXView::dispatch() directly

all other files: update with the TocBackend or ControlToc API changes.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15852 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-11 00:35:14 +00:00
Georg Baum
d6988a6bb4 fix compiler warnings
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15842 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-10 21:13:17 +00:00
Georg Baum
44ff1604b3 fix docbook glossary export, from Ugras and me
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15839 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-10 15:45:42 +00:00
Georg Baum
35964d3e02 Do not call InsetCommandParams::read in InsetInclude::read anymore, since
the syntax of InsetInclude did not change when the syntax of InsetCommand
changed. Therefore we need to implement our own read method.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15833 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-09 17:45:42 +00:00
Jean-Marc Lasgouttes
d82439ccc0 * src/insets/insetbox.C (InsetBox::doDispatch): remove annoying debug message
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15822 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-09 14:45:53 +00:00
Michael Schmitt
298c01e167 replace "Notation Entry" by "Glossary Entry" and "Notation List" by "Glossary"
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15797 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-07 22:28:53 +00:00
Abdelrazak Younes
23b99d315b * InsetText::Wide() -> wide()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15780 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-07 15:24:34 +00:00
Abdelrazak Younes
03d9514bd7 * InsetText:
- wide_inset_ is not mutable any more
  - Wide(): split up in Wide() and setWide()

* rowpainter.C:
  - paintPar(): use a const_cast instead of the mutable InsetText::Wide()

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15779 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-07 15:21:47 +00:00
Georg Baum
e35725d5c0 New nomenclature inset from Ugras
* src/LyXAction.C
	(LyXAction::init): Add LFUN_NOMENCL_INSERT and LFUN_NOMENCL_PRINT

	* src/insets/insetbase.C
	(build_translator): ditto

	* src/LaTeXFeatures.C
	(LaTeXFeatures::getPackages): Add nomencl

	* src/insets/insetnomencl.[Ch]: new insets InsetNomencl and
	InsetPrintNomencl

	* src/insets/insetbase.h: Add NOMENCL_CODE and NOMENCL_PRINT_CODE

	* src/insets/insetcommandparams.C
	(InsetCommandParams::findInfo): Add nomenclature and printnomenclature
	(InsetCommandParams::getCommand): Extend end of command protection to
	cover commands with only optional arguments like printnomenclature

	* src/insets/insetert.C
	(InsetERT::getStatus): disable LFUN_NOMENCL_INSERT and
	LFUN_NOMENCL_PRINT

	* src/insets/Makefile.am: Add new files
	* src/frontends/qt4/Makefile.dialogs: ditto
	* src/frontends/qt4/Makefile.am: ditto

	* src/factory.C
	(createInset): Handle InsetNomencl and InsetPrintNomencl
	(readInset): ditto

	* src/buffer.C
	(LYX_FORMAT): increase

	* src/lyxfunc.C
	(LyXFunc::dispatch): Handle nomenclature

	* src/LaTeX.C
	(LaTeX::deleteFilesOnError): Delete .nls file
	(LaTeX::run): Run makeindex for nomenclature
	(LaTeX::runMakeIndex): handle nomenclature options
	(LaTeX::deplog): Recognize nomenclature file

	* src/frontends/qt4/QNomenclDialog.[Ch]: new
	* src/frontends/qt4/QNomencl.[Ch]: ditto
	* src/frontends/qt4/ui/QNomenclUi.ui: ditto

	* src/frontends/qt4/Dialogs.C
	(Dialogs::build): handle nomenclature dialog

	* src/text3.C
	(LyXText::dispatch): Handle LFUN_NOMENCL_INSERT and
	LFUN_NOMENCL_PRINT
	(LyXText::getStatus): Ditto

	* src/lfuns.h
	(kb_action): Add LFUN_NOMENCL_INSERT and LFUN_NOMENCL_PRINT

	* lib/lyx2lyx/LyX.py
	(format_relation): Update 1.5 format range

	* lib/lyx2lyx/lyx_1_5.py
	(revert_nomenclature): New
	(revert_printnomenclature): ditto

	* lib/chkconfig.ltx: Test for nomencl package

	* lib/doc/LaTeXConfig.lyx.in: Add nomencl package

	* lib/doc/Extended.lyx: Add documentation for nomencl

	* lib/ui/stdtoolbars.ui
	(Toolbar "extra" "Extra"): Add nomencl-insert

	* lib/ui/classic.ui: Add nomencl-insert and nomencl-print
	* lib/ui/stdmenus.ui: ditto

	* development/scons/scons_manifest.py: Add new files

	* development/FORMAT: Describe new format


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15739 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-04 17:55:36 +00:00
Georg Baum
dfee517417 Preparation for the nomencl inset: Add {} in InsetCommand rather than
InsetHFill. This is possible because InsetHFill is the only inset so
far without parameters.

	* src/insets/insetcommandparams.C
	(InsetCommandParams::getCommand): Add {} to commands without
	parameters.

	* src/insets/insethfill.[Ch]
	(InsetHFill::latex): Remove


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15736 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-04 14:55:15 +00:00
Georg Baum
49070b4c00 Fix problem with non-ascii branch names by converting more stuff to
docstring.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15713 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-03 15:16:45 +00:00
Georg Baum
bf542320ea put UNICODE FIXMEs where they belong
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15689 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-02 10:16:21 +00:00
Abdelrazak Younes
eb651c3d61 Move BufferView cached pointer out of LyXText:
* LyXText
  - bv(), bv_owner, : deleted.
  - These methods now need a (Buffer const &) argument: getFont(), applyOuterFont(), getLayoutFont(), getLabelFont(), setCharFont(), setLayout(), singleWidth(), leftMargin(), rightMargin(), computeRowMetrics(), isMainText(), spacing(), isRTL(), cursorX(), rowBreakPoint(), setRowWidth(), labelFill(), labelEnd().
  - These methods now need a (BufferView const &) argument and are propably candidates for future removal when 1.6 is opened for development: redoParagraph(), x2pos(), getRowNearY(), getColumnNearX(), checkInsetHit(), setHeightOfRow().
  - recUndo(): now need a LCursor argument.
 
* CoordCache::get(LyXText const *, pit_type):
  - now const.
  - use const_iterator instead of iterator.

* FontIterator:
  - add (Buffer const &) argument to ctor
  - buffer_: new const reference to applicable BufferView.

* InsetBase
  - xo(), yo(), covers() and neverIndent() are now const.

* InsetText::setViewCache(): deleted

All other changes are due to the LyXText and InsetBase API changes.



 
  

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15618 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 12:45:33 +00:00
Abdelrazak Younes
0a48776a9a Forgot that!
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15615 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 10:47:59 +00:00
Abdelrazak Younes
73ed0b5203 * Painter.h:
* Painter: new ctor that sets drawing_enabled_ to true.
  * setDrawingEnabled(), isDrawingEnabled(): new methods.

* QLPainter.C: only draw if drawing is enabled.

* nullpainter.h: deleted.

* rawpainter.C::paintPar(): only draw if we are inside the Paragraph.

* InsetTabular::draw(): use new Painter method instead of a NullPainter.

* InsetMathNest::drawSelection(): ditto.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15613 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-30 10:09:59 +00:00
Michael Schmitt
d53d4a5c35 change tracking:
* src/*.C:
	* src/insets/*.C: implement rejectChanges() in analogy to
	acceptChanges();
	
	* src/paragraph_pimpl.C: add assertions for pos, start, and 
	end parameters


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15542 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-24 21:38:47 +00:00
Michael Schmitt
00ffa3ca7c change tracking:
* src/paragraph.h: rename acceptChange() to acceptChanges()
        * src/insets/insetbase.h:
        * src/insets/insettext.h:
        * src/insets/insettabular.h: add acceptChanges()
        * src/*.C: fix acceptChanges() (& also accept changes in nested
        insets)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15520 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-24 06:11:45 +00:00
Georg Baum
91d244160d Revert faulty floatlist fix (revision 15376) and fix reading of floatlists
correctly.
The floatlist type is now stored in the InsetCommand parameter "type".
Formerly it was stored in the command name, which is not possible anymore
because all command names need to be known.
The file format of .lyx files is still the same.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15489 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-22 18:24:41 +00:00
Asger Ottar Alstrup
37e164c6f9 - rework update handling, make cursor movement faster,
fixing lots of navigation problems.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15470 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-22 11:46:36 +00:00
André Pönitz
eaa81aa13e some compile fixes, more to be expected
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15465 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-22 11:00:04 +00:00
André Pönitz
de6418f377 use more unicode in math
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15462 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-22 10:15:23 +00:00
José Matox
354fb450c2 More unicode fixes for docbook.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15459 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-21 19:40:29 +00:00
Asger Ottar Alstrup
a36aac0510 - Try to improve require(lyxdot) detection for insetgraphics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15458 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-21 19:37:53 +00:00
Lars Gullik Bjønnes
8d8d76a6bf some more unicode work. even more should be possible
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15457 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-21 19:27:02 +00:00
Asger Ottar Alstrup
51ed92d70c - Fix erase selections broken by "changeTracking" it
seems. ChangeTracking responsible please verify all 
  erase/eraseChar where we added false or where it is 
  called without changetracking bool (jug).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15456 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-21 17:05:20 +00:00
Asger Ottar Alstrup
2a9abde507 - InsetQuotes updates the inset cache
- Do not use the nullpainter for the rows outside the screen, because the nullpainter does not calculate the width of text, and thus the metric entries in the inset cache are completely wrong, causing assertions when using for instance page up or page down into an inset. This fixes the dreading assertion on navigation in the user guide, and elsewhere


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15455 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-21 16:03:53 +00:00
José Matox
5d6963b0ca Fix sgml::escapeChar and sgml::escapeString to return docstring.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15444 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-21 11:38:43 +00:00
Asger Ottar Alstrup
6ac15c5bb9 - Dump the inset position cache as well
- More debugging printing stuff


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15441 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-21 10:56:36 +00:00
André Pönitz
6c300f72a2 move everything into namespace lyx
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15422 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-21 00:16:43 +00:00
Abdelrazak Younes
b23807ec0b This commit re-enable the table adjustment with screen whenever the table is bigger than the screen. Here is some explanation form Georg about the setPos() method:
I believe that it is for horizontal
"scrolling": If you have a table that is wider than the screen and you go
to a cell that is at the right edge then, if you are lucky, the table is
shifted to the left so that you can edit the cell and even go further
right. This does however not work reliably.
If I am right then the variable name scx_ would make some sense: sc for
scrolling. The ChangeLog comments also seem to point in this direction. And
most of them were done by Jürgen Vigna who is AFAIK in Denmark.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15414 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-20 16:33:41 +00:00
Georg Baum
ffe7cb1b78 Use the new InsetCommandParams interface (inset part), from Ugras and me
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15413 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-20 16:12:49 +00:00
Abdelrazak Younes
7450a293de Fix multiple tabular crashes. This needs some more work by someone who knows what insettabular::resetPos() is for. At least navigating and editing tables seems "normal".
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15412 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-20 16:11:30 +00:00
Michael Schmitt
4ef2be0f11 change tracking:
* insets/insettext.C: comment on prior warning
	(and express my helplessness)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15409 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-20 14:06:18 +00:00
Michael Schmitt
b08f5ad69e change tracking:
* src/paragraph.h: insertXXX(...) requires either
        boolean parameter 'trackChanges' or a Change
        * src/insets/insettext.h: add trackChanges parameter
        to setText(...)
        * src/insets/*.C:
        * src/*.C: adjust properly & remove a couple of FIXMEs


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15399 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-20 11:44:58 +00:00
Lars Gullik Bjønnes
c985dce850 Get rid of warning.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15395 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-20 10:35:07 +00:00
Michael Schmitt
c3a9c54632 change tracking:
* src/insets/insetbase.h: replace markErased(...) by
        setChange(...)
        * src/insets/insettext.h: replace markErased(...) and
        markNew(...) by setChange(...)
        * src/insets/insettabular.h: replace markErased(...) by
        setChange(...)
        * src/insets/insettabular.C:
        * src/insets/insetbase.C:
        * src/insets/insettext.C:
        * src/paragraph_pimpl.C:
        * src/tabular.C: adjust properly


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15392 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-20 09:29:19 +00:00
Lars Gullik Bjønnes
0d449056ef Output docbook as utf8. Probably quite a bit more work needed, but then help form a docbook person is needed.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15387 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-19 21:00:33 +00:00
Martin Vermeer
a2933867d1 Fix for 2550.
* insettext.[Ch]
	(InsetText::covers): added to allow the click-sensitive area to grow
		with the Wide() condition.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15384 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-19 19:26:43 +00:00
Michael Schmitt
9acb432b0c change tracking:
* src/paragraph.h: remove eraseIntern(); pass trackChanges to
        erase(...) (2 methods)
        * src/paragraph_pimpl.h: rename eraseIntern() to erase();
        pass trackChanges to other erase(...) (2 methods)
        * src/insets/insettext.C:
        * src/*.C: adjust properly


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15380 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-19 17:46:50 +00:00
Georg Baum
850962d0ba Fix \hfill output which was broken by the InsetCommand changes.
getCommand does not include the {} anymore, because \hfill has no arguments.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15379 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-19 17:09:59 +00:00
Georg Baum
8b67659646 Use UTF8 for LaTeX export.
Known problems:
- No space is output after a \hfill. I probably broke this with the
  InsetCommand patch. I'll have a look later.
- Although the encoding is now UTF8 the arguments of the inputenc package
  are still the old ones, so LaTeX will not run.
- Labels and references with non-ASCII characters are broken. This needs to
  be fixed in lyx::support::escape(), but this is a file format change.
- Something seems to be wrong with index entries, but this is probably also
  due to the InsetCommand changes.

Have fun!


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15378 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-19 16:51:30 +00:00
Georg Baum
d266040df3 Adjust InsetFloatList to the new InsetCommand syntax.
I forgot this with when I changed InsetCommand.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15376 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-19 16:36:30 +00:00
Michael Schmitt
b55f70432c Change tracking:
src/paragraph.h: remove obsolete isChangeEdited(...);
        remove obsolete isInsertedText(...); turn 
        isDeletedText(...) into Paragraph::isDeleted(...)

        src/paragraph_pimpl.h: remove obsolete isChangeEdited(...)

        src/changes.h: remove obsolete isChangeEdited(...)

        src/insets/insetert.C:
        src/paragraph_pimpl.C:
        src/frontends/controllers/ControlSpellchecker.C:
        src/rowpainter.C:
        src/changes.C:
        src/paragraph.C:
        src/buffer_funcs.C: adjust properly


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15371 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-19 12:49:11 +00:00
Michael Schmitt
cbe1309573 Change tracking:
src/paragraph.h:
        src/paragraph.C:
        src/paragraph_pimpl.h:
        src/paragraph_pimpl.C: setChange(...) replaces markErased(...);
        pass Change parameters as const reference
        src/insets/insettext.C: adjust accordingly
        src/changes.h:
        src/changes.C: pass Change parameters as const reference


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15366 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-19 07:12:48 +00:00
Georg Baum
b02242bfaf Rework InsetCommandParams interface and file storage
* src/insets/insetcommandparams.[Ch]:
	(operator[]): New, access a parameter
	(clear): New, clear all parameters
	(info_): New, stire info about this command
	(cmdname): Rename to name_
	(contents, options, sec_options): Replace with params_. Parameters
	are now stored as docstring.
	(findInfo): New factor for command info for all commands
	(read, write): Use new syntax
	(parameter set and get methods): reimplemenmt for new parameter storage

	* src/insets/insetcommand.h
	(getParam): New, get a parameter
	(setParam): New, set a parameter
	(parameter set and get methods): Adjust to InsetCommandParams changes

	* src/insets/insetbibitem.[Ch]
	(write): Remove, not needed anymore
	(directWrite): ditto

	* src/insets/insetbibitem.C
	(InsetBibitem::read): Use InsetCommand::read

	* src/insets/insetref.C
	(InsetRef::latex): Use new InsetCommandParams interface

	* src/mathed/InsetMathHull.C
	(InsetMathHull::doDispatch): ditto

	* src/text3.C
	(LyXText::dispatch): ditto

	* src/factory.C
	(createInset): Create InsetCommandParams with command name
	(readInset): ditto
	(readInset): Remove error message for bibitem, since bibitem is
	now a normal command inset

	* src/buffer.C: Bump file format number

	* src/frontends/controllers/ControlCommand.[Ch]
	(ControlCommand): take an additional command name parameter

	* src/text.C
	(readParToken): Remove code for \bibitem

	* lib/lyx2lyx/LyX.py: Bump latest file format number

	* lib/lyx2lyx/lyx_1_5.py
	(convert_bibitem, convert_commandparams): new, convert to new format
	(revert_commandparams): new, convert to old format

	* development/FORMAT: document new format

	* many other files: Adjust to the changes above


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15357 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-17 21:07:16 +00:00
Abdelrazak Younes
4cc7a7708e This commit fixes a crash when accessing a math inset. This was due to an invalid CursorSlice::text() null pointer accessed in InsetMathNest::cursorPos():
CoordCache & coord_cache = sl.text()->bv()->coordCache();

As you can see, I used this indirection to access the BufferView::CoordCache(). Bad luck, the passed CursorSlice was not completely valid inside a mathed inset, hence the crash. My solution is to pass BufferView to InsetBase::cursorPos() and all its derivative.

* InsetBase::cursorPos(): pass BufferView const &

* bufferview_funcs::coordOffset(): ditto.




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15356 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-17 16:23:27 +00:00
Abdelrazak Younes
52bd213992 More unicode conversion
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15355 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-17 14:46:45 +00:00
Jürgen Spitzmüller
77e145a406 Remember the char style label state and make it globally switchable.
* src/buffer: 
	file format incrementation to 251
* src/insets/insetcharstyle.[Ch]:
	- make show_label a param and save its state
	- let all-insets-toggle togle the label in charstyles
* development/FORMAT: 
	document file format change
* lib/lyx2lyx/LyX.py:
	add new file format
* lib/lyx2lyx/lyx_1_5.py:
	remove char style label param on reversion to 250.
	

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15345 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-16 07:06:41 +00:00
Abdelrazak Younes
562d55989a MacOSX compile fix: The class Point conflicted with a struct defined in MacTypes.h.
* coordcache.[Ch]: put everything in the LyX namespace.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15340 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-15 22:32:56 +00:00
Abdelrazak Younes
c7e365365e This commit saves the need to check for lyx::use_gui in a number of places.
* lyx_main.h: define "extern bool lyx::use_gui" here.

* NoGuiFontMetrics.h: new class for command-line LyX

* NoGuiFontLoader.h: new class for command-line LyX

* Application.C:
  - theFontMetrics(): returns the above dummy FontMetrics when use_gui is false.
  - theFontLoader(): returns the above dummy FontLoader when use_gui is false.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15339 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-15 21:47:29 +00:00
Georg Baum
3db6e94596 fix typos
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15336 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-15 09:20:25 +00:00
Abdelrazak Younes
e049e75b6f revert change from previous commit and remove the FontMetrics access completely in order to be sure that bibitemWidest() gives the same bibitem GUI and no-GUI modes (even if that is potentially the wrong one.).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15333 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-14 15:31:50 +00:00
Abdelrazak Younes
a41282a1d6 Fix crash on LateX export.
* insetbibitem.C:
  - bibitemWidest() don't use theFontMetrics in non GUI mode.
  - Add 3 FIXMEs

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15332 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-14 15:22:08 +00:00
Abdelrazak Younes
d37fae169c In order to support multiple LyXView each BufferView needs its own CoordCache. This is what's implemented in this commit.
theCoords is now a thing of the past and all CoordCache accesses are done via BufferView::coordCache() now. I had to modify a number of methods to pass BufferView.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15324 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-13 16:44:44 +00:00
Abdelrazak Younes
83ffa28e77 This commit is purely mechanical and get rid of lyx_gui.[Ch].
Only qt4 is guaranted to compile and work. I did not remove gtk and qt3 lyx_gui.C because they might be needed for reference to complete the header declarations in "GuiApplication.C".

 - lyx_gui::use_gui transfered to lyx::use_gui in lyx_main.C
 - all remaining lyx_gui functions transfered to Application and corresponding GuiApplication implementations. 


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15306 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-12 14:10:13 +00:00
Georg Baum
79c876d4c3 Convert labels to unicode
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15305 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-12 10:50:45 +00:00
Michael Schmitt
1b5f5e58ed Change tracking:
* src/paragraph.h: remove enum ChangeTracking;
	remove default parameters for insertChar and insertInset
	* src/BufferView.h: constify getCurrentChange()
	* src/changes.h: make Change constructor explicit
	* src/insets/*.C: 
	* src/*.C: adjust accordingly; add FIXMEs


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15302 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-11 20:01:32 +00:00
Georg Baum
34b7650cbb Introduce wide streams. This fixes the remaining problems of plain text
export (e.g. the ToC) and the navigate menu.

	* src/insets/insetbase.h
	(InsetBase::plaintext): output to a docstream
	(InsetBase::textString): ditto

	* src/mathed/TextPainter.h
	(TextPainter::show): ditto

	* src/support/docstream.[Ch] New file and string streams for
	docstring. The file streams convert to UTF8 on the fly.

	* many more files: Adjust to the changes above


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15301 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-11 19:40:50 +00:00
Abdelrazak Younes
28ad960255 This commit cleans up everything related to singleton. The other important change is that lyx::dispatch() and lyx::getStatus become _the_ official way to use LyXFunc equivalent methods.
* lyxfunc.h:
  - theLyXFunc(): new function in the global namespace.
  - lyx::dispatch():  new function in the lyx namespace.
  - lyx::getStatus():  new function in the lyx namespace.

* bufferlist.h:
  - theBufferList(): new function in the global namespace.

* Clipboard.h:
  - theClipboard(): new function in the global namespace.

* Selection.h:
  - theSelection(): new function in the global namespace.

* FontLoader.h:
  - theFontLoader(): new function in the global namespace.

* FontMetrics.h:
  - theFontMetrics(LyXFont const &): new function in the global namespace.

* Application.C: implements the functions defined above.

* LyXView.h:
  - getLyXFunc(): deleted.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15298 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-11 17:24:46 +00:00
Jürgen Spitzmüller
05be07de9e Fix bug 2744:
* buffer.[Ch] (changeRefsIfUnique): extend to handle bibitems 
        as well (the function takes a InsetCode argument now);
        clean up by using InsetIterator.

* InsetMathHull.C (doDispatch): changeRefsIfUnique needs a
        InsetCode argument now (bug 2744).

* insetlabel (doDispatch): changeRefsIfUnique needs a
        InsetCode argument now.

* insetbibitem (doDispatch): use changeRefsIfUnique
        (actual fix for bug 2744).

* insetcommand.[Ch]:
* insetcite.[Ch]: implement replaceContents, which is
        used by changeRefsIfUnique.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15289 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-09 14:21:11 +00:00
Abdelrazak Younes
6b887d8b0f use new docstring += operator
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15275 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-08 09:56:41 +00:00
Abdelrazak Younes
055b0390dc * insetCollapsable:
- setLabel(), getNewLabel(), floatName(): converted to unicode


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15273 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-08 09:36:16 +00:00
Abdelrazak Younes
d81ffbdc23 Fix linking issue with MacOSX.
* insetcollapsable: new floatName method.

* insetfloat.C: floatname function deleted.

* insetwrap.C: floatname function deleted.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15272 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-08 08:47:26 +00:00
Georg Baum
6ada61e182 Rename namespace Alert to lyx::frontend::Alert.
This prevents a name clash with Qt 4.2.0 on OS X.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15267 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-07 16:47:54 +00:00
Abdelrazak Younes
00edcc582f This commit is a big rework of the FontLoader/FontMetrics interaction. Only Qt4 for now, I would be grateful is somebody steps up for qt3 and gtk.
Basically, I replaced all methods in the font_metrics namespace by a proper virtual interface FontMetrics. The FontLoader is _the_ container for FontMetrics.

This patch should also bring some optimizations in a number of place in the code. This is because we do not need any more to search for the LyXFont at each font_metrics call. In effect, the speed advantage is not as sensible and this is a bit deceiving considering that this was my primary motivation behind the patch. But I like the patch anyway as it cleans up the relation and interfacing between fonts, metrics and frontends.

* frontends/FontMetrics.h: new virtual interface. Renamed from font_metrics.h

* qt4/GuiFontMetrics: corresponding qt4 implememtation. Renamed from qfont_metrics.C. The smallCaps particular case treatment has been transfered here as well as the width cache for MacOSX and Windows.

* qt4/QLPainter.C: the smallCapsText has been reworked to return the width of the drawn text.C

all other files: replace font_metric helper function call with corresponding FontMetrics method calls.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15265 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-07 16:15:06 +00:00
Michael Schmitt
238b880c22 Change tracking:
Remove methods
   * trackChanges(...)
   * untrackChanges(...)
   * cleanChanges(...)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15262 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-06 19:59:41 +00:00
Michael Schmitt
eb11f2c542 Change tracking:
* rename output_changes to outputChanges
 * rename tracking_changes to trackChanges
 * add FIXMEs for later revision
 * remove trackChanges(); the CT data structure will always be set up
 * decouple LFUNs changes-output/change-accept/change-reject/
   all-changes-accept/all-changes-reject from LFUN changes-track



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15261 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-06 18:53:35 +00:00
Jürgen Spitzmüller
172ab6c70f Fix the fix for bug 2869.
* src/insets/insetvspace.C (doDispatch): open dialog on 
	mouse release (not press).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15216 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-03 14:50:41 +00:00
Jürgen Spitzmüller
db9235f095 Fix bug 2869.
* src/insets/insetvspace.C (doDispatch): set cursor properly on mouse 
	(button 3) press.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15207 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-03 10:08:15 +00:00
Georg Baum
2c72e0ecaa Fix bug 2868
* src/insets/insetgraphics.C
	(findTargetFormat): return pdf for vector graphics

	* src/format.h
	(Flags): new enum describing format flags
	(flags_): new member variable for format flags
	(vectorFormat): new, tell whether a format can contain vector graphics

	* src/format.C: adjust to flags changes

	* src/frontends/qt[34]/QPrefsDialog.C
	(QPrefsDialog::QPrefsDialog): handle new vector flag
	(QPrefsDialog::switch_format): ditto
	(QPrefsDialog::updateFormatsButtons): ditto
	(QPrefsDialog::new_format): ditto
	(QPrefsDialog::modify_format): ditto

	* src/frontends/qt3/ui/QPrefFileformatsModule.ui
	* src/frontends/qt4/ui/QPrefFileformatsUi.ui
	(vectorCB): new checkbox for vector flag

	* src/lyxrc.C
	(LyXRC::read): read vector flag
	(LyXRC::write): write vector flag

	* lib/doc/Customization.lyx: document format flags

	* lib/configure.py
	(checkFormatEntries): Add vector flag to some formats


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15205 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-03 08:34:59 +00:00
Abdelrazak Younes
ca5411f913 This commit introduces Application_pimpl and cleanup the header includes of the affected .C files.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15182 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-29 22:06:28 +00:00
Georg Baum
70d57a2300 Implement copying of rows and columns in tables
* src/insets/insettabular.C
	(InsetTabular::getStatus): enable COPY_ROW and COPY_COLUMN features
	(InsetTabular::tabularFeatures): handle COPY_ROW and COPY_COLUMN

	* src/tabular.h
	(TabularFeature): add COPY_ROW and COPY_COLUMN

	* src/tabular.[Ch]
	(LyXTabular::copyRow): new method, copy a row
	(LyXTabular::copyColumn): new method, copy a column


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15173 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-27 16:28:09 +00:00
Abdelrazak Younes
1396c73262 replace global variable bufferlist with Application class member access.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15161 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-27 10:24:13 +00:00
Abdelrazak Younes
0da12b129a delete unneeded BufferView.h declaration.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15159 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-26 21:11:22 +00:00
Abdelrazak Younes
b171e5f150 Free BufferView from LyXView!
* BufferView
  - layoutChanged: new boost signal.
  - LyXView owner(), owner_: deleted

* text3.C
  - emit BufferView::layoutChanged instead of calling LyXView::setLayout directly
  - LFUN_MOUSE_RELEASE: delete LyXView updateMenubar() and updateToolbars() direct calls.
    The update is of both bars is done in WorkArea::dispatch().

* WorkArea.C
  - dispatch(): add LyXView updateMenubar() call.

* LyXView
  - connects to BufferView::layoutChanged directly to Toolbars::setLayout()
  - setLayout(): deleted.

* qt4/GuiImplementation: modify BufferView construction (without LyXView).

All other files: cleanup header declaration of LyXView.h


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15153 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-26 10:06:46 +00:00
Abdelrazak Younes
12a82dd4f2 This commit replaces BufferView->LyXView->Gui->[selection,clipboard] with theApp->[selection,clipboard]
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15125 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-22 15:02:41 +00:00
Abdelrazak Younes
480b4f4fdc This commit replaces BufferView->LyXView->getLyXFunc() with theApp->lyxFunc() and BufferView->LyXView->dispatch() with theApp->lyxFunc().dispatch().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15121 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-22 14:26:06 +00:00
Jean-Marc Lasgouttes
2e1ba6d837 * lyxfunc.C (getStatus): fix handling of LFUN_RUNCHKTEX (bug 2831)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15101 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-21 10:43:49 +00:00
Jean-Marc Lasgouttes
9917aca0b7 * insettabular.C (cutSelection): reset cursor when it is invalid.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15088 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-20 12:16:26 +00:00
Abdelrazak Younes
311ac9b192 This is the continuation of my BufferView/LyXView cleanup. This commit replaces BufferView->LyXView->getDialogs().[show(), update()] with BufferView signal emissions.
The associated WorkArea is then responsible to connect these signals to its LyXView parent.

* BufferView:
  - showDialog, showDialogWithData, showInsetDialog: new boost signals

* LyXView:
  - connectBufferView(), disconnectBufferView(): new method in charge of the connection/disconnection of the above signal to associate private methods (showDialog(), etc).

* WorkArea
  - setBufferView(): will connect/disconnect the BufferView to its LyXView parent.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15068 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-19 13:36:20 +00:00
Jürgen Spitzmüller
023fb5433c Cleanup fix for bug 2382:
* src/CutAndPaste.C (pasteSelectionHelper): pass Cursor 
	as argument, remove cursor-dependent arguments, 	
	implement method to reset layout in insets which
	forceParagraphsToDefault.

	* src/CutAndPaste.C (pasteParagraphList): adapt call of 
	pasteSelectionHelper.

	* insets/insetbox.C (doDispatch):
	* insets/insetert.C (doDispatch):
	* insets/insetcharstyle.C (doDispatch):
	* insettext.[Ch] (forceParagraphsToDefault):
		remove ad-hoc-Code to 
		reset paragraph layout. 
		This is now done generally in CutAndPaste.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15062 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-19 09:39:17 +00:00
André Pönitz
2805c29734 rename Math*Inset into InsetMath*
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15023 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-16 18:11:38 +00:00
Abdelrazak Younes
a6444784dc A bunch of conversion to docstring.
- bformat(): contributed by Georg Beaum
- Alert::XXX
- error(): in SpellBase, ispell, psell, aspell, buffer, etc.
- message(), message signal
- displayMessage(), setMessage,
- ErrorItems
- prettyName()
- makeDisplayPath()

and maybe some more...


- etc... 

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14970 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-11 08:54:10 +00:00
Abdelrazak Younes
42a7588f32 winwin32 compilation fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14963 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-10 10:53:23 +00:00
Georg Baum
3000b1baff Fix return value of InsetInclude::plaintext
* src/insets/insetinclude.C
	(InsetInclude::plaintext): Add line counting code


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14958 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-10 09:28:00 +00:00
Georg Baum
9b5a63aaaf Fix return value of InsetText::plaintext
* src/insets/insetnote.C
	(InsetNote::plaintext): Move line counting code from here ...

	* src/insets/insettext.C
	(InsetText::plaintext): ... here.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14957 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-10 08:41:39 +00:00
Lars Gullik Bjønnes
b5fccd53ac Add a virtual in the child as well.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14954 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-09 22:18:05 +00:00
Lars Gullik Bjønnes
edd81011ce Change editMessage to return a docstring, change functions to not use to_utf8.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14953 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-09 18:52:00 +00:00
Lars Gullik Bjønnes
43b77ba2d7 Change _() to return a docstring. Fixup callers with the help of lyx::to_utf8.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14952 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-09 15:27:44 +00:00
Lars Gullik Bjønnes
5aa348d969 Make the l10n machinery work with ucs4. Update (as wip) callers to do manual conversion and a FIXME comment. Lots of work to do.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14951 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-09 11:16:28 +00:00
Jean-Marc Lasgouttes
fe8d08d72f Improve Inset dissolve capability (bug 2201).
* src/insets/insettabular.C (getStatus):
	* src/insets/insettext.C (doDispatch,getStatus): remove special code
	for LFUN_INSET_DISSOLVE.

	* src/text.C (dissolveInset): new method.
	(erase, backspace): use dissolveInset. 

	* src/text3.C (dispatch): use dissolveInset for LFUN_INSET_DISSOLVE.
	(getStatus): disable LFUN_INSET_DISSOLVE if the inset has more than one 	cell.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14940 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-08 14:08:26 +00:00
Jürgen Spitzmüller
bae41d8a3b fix getStatus of LFUN_DISSOLVE_INSET:
* src/text3.C (getStatus): 
	disable the lfun in MainText.
* src/insets/insettabular.C (getStatus):
	disable inset-dissolve completely.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14879 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-03 13:39:54 +00:00
Georg Baum
e33bac93cd Fix clipboard/selection encoding
* src/frontends/qt[34]/qt_helpers.[Ch]
	(toqstr): add variant for docstring
	(qstring_to_ucs4): Use docstring and port from qt4 to qt3

	* Many other files: Many std::string -> lyx::docstring conversions

	* src/support/lstrings.[Ch]
	(subst): Add variant for docstring and char_type
	(externalLineEnding): std::string -> lyx::docstring
	(internalLineEnding): std::string -> lyx::docstring


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14871 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-03 07:02:38 +00:00
Georg Baum
6afe0b915c Fix some conversion problems spotted by MSVC warnings
* src/insets/insetquotes.[Ch]
	(InsetQuotes::InsetQuotes): char -> lyx::char_type

	* src/support/lstrings.h
	(contains): new variant for docstrings

	* src/frontends/controllers/ControlSpellchecker.C
	(isLetter): Add missing conversion to utf8
	(nextWord): ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14867 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-02 10:18:20 +00:00
Georg Baum
1fc0c01877 convert lfun arguments to docstring
* src/support/docstring.[Ch]
	(from_ascii): new conversion function
	(from_utf8): new conversion function
	(to_utf8): new conversion function
	(operator==) new, compare docstring and ASCII C string
	(operator!=) new, compare docstring and ASCII C string

	* src/support/Makefile.am: add new file docstring.C

	* development/scons/scons_manifest.py: ditto

	* src/funcrequest.[Ch]
	(argument): change name to argument_ and type to docstring,
	add an accessor
	(FuncRequest): Add two new constructors taking a docstring argument

	* all other files: adjust to the FuncRequest changes above


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14861 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-01 15:41:38 +00:00
Lars Gullik Bjønnes
810f6e499b Use exceptions to avoid more than one call to the filesystem.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14857 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-31 19:32:12 +00:00
Michael Schmitt
609889cb35 drop linuxdoc support (part 2)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14817 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-23 10:47:11 +00:00
Michael Schmitt
f0d215f752 drop linuxdoc support (part 1)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14816 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-23 10:41:43 +00:00
Jürgen Spitzmüller
4758d556c9 * insetcite.C (getNatbibLabel): prevent filesystem exception
if the bib file is in a non-readable directory (bug 2782).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14807 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-19 10:39:03 +00:00
Jürgen Spitzmüller
9be166025a * insetcite.C (getNatbibLabel): prevent filesystem exception
if the bib file does not exist.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14805 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-18 16:03:48 +00:00
Jean-Marc Lasgouttes
020a793ef9 Fix crash when cursor is in an empty script and the user clicks
in the text.

	* src/insets/insetbase.h (notifyCursorLeaves): return a bool
	indicating whether cursor is invalidated.

	* src/mathed/math_nestinset.C (notifyCursorLeaves): 
	* src/mathed/math_hullinset.C (notifyCursorLeaves): adapt to
	prototype change.

	* src/mathed/math_scriptinset.[Ch] (notifyCursorLeaves): return
	true when an inset has been deleted.

	* src/BufferView.C (mouseSetCursor): do not call dEPM when cursor
	is invalidated by notifyCursorLeaves.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14796 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-17 21:32:04 +00:00
Jean-Marc Lasgouttes
bc6cf52e9f * src/BufferView_pimpl.C (getStatus, dispatch): do not handle
LFUN_GOTOERROR.

	* src/bufferview_funcs.C (findInset): exit early when at end of
	document (and avoid a crash).

	* src/insets/insetbase.[Ch]: remove ERROR_CODE



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14706 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-16 21:06:40 +00:00
Bo Peng
6be47509b8 Fix bug 2768 (inset comment eats space after it)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14692 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-15 15:12:26 +00:00
Lars Gullik Bjønnes
c46b7d8955 Merge the unicode branch into trunk.
- src/support/unicode.[Ch]: new files with functions for converting
  to and fro ucs4, ucs2 and utf8.
- src/support/docstring.h: specialization of basic_string that
  holds a uint32_t internally.
- Several functions changed to use char_type instead of char or unsigned char.
- Qt3 and Qt4 sends ucs2 on to core
- Gtk sends ucs4 on to core
- Read and write utf-8 .lyx files.
- font_metrics and painter updated to handle ucs4 chars as input.
- Quite a bit of ugly compability code, conversion string->docstring, etc.
- Have fun...


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14661 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-13 22:54:59 +00:00
Abdelrazak Younes
c5a4f61f33 This commit creates a error_lists map member inside the Buffer class.
I had no choice but to use string for the map key. This is
because the only information that could be passed to the controller is a
string.

With this new architecture, persistent error lists are now possible.

* Buffer
  - errorList_, addError(),  : deleted
  - std::map<std::string, ErrorList> errorLists_ : new member
  - errorList(std::string const & type): associated accessors

* buffer_funcs.C
  - bufferErrors(Buffer const & buf, TeXErrors const & terr): now needs a third errorList argument
  - bufferErrors(Buffer const & buf, ErrorList const & el): deleted.

* Converter
  - convert(): now needs an ErrorList argument instead of filling the Buffer errorList member directly.
  - runLaTeX(): ditto
  - scanLog(): ditto

* CutAndPaste.C
  - pasteParagraphList(): ditto
  - pasteSelection(): ditto

* lyxtext.h/text.C
  - readParagraph(): ditto
  - LyXText::read(): ditto

* importer:
  - Importer::Import(): ditto

* BufferView_pimpl.C
  - loadLyXFile(): send the Buffer::errors() signal instead of calling LyXView::showErrorList() directly.

* exporter.C
  - Export(): send the Buffer::errors() signal instead of calling LyXView::showErrorList() directly in lyxfunc.C

* ControlErrorList.C
  - initialiseParams(): translation operation transfered here from LyXView::showErrorList().

* LyXView.C
  - LoadLyXFile(): add a showErrorList("Parse") call.
  - showErrorList(): simplified due to code transferred to the ControlErrorList.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14652 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-13 16:16:43 +00:00
Jürgen Spitzmüller
0ce73aa2c4 Implement LFUN_INSET_DISSOLVE (bug 2201):
* src/LyXAction.C:
        * src/lfuns.h:
		- add new lfun LFUN_INSET_DISSOLVE.

        * src/insets/insettext.C
        (void InsetText::doDispatch):
		- dissolve inset when hitting backspace in the 
		  very first or delete in the very last position
		  of an inset.

        * src/text3.C
        (void LyXText::dispatch):
        (bool LyXText::getStatus):
		- implement new lfun LFUN_INSET_DISSOLVE.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14572 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-08 13:34:02 +00:00
Martin Vermeer
20a9acdece Fix "inset in tabular cell sticks out over cell border" bug
* insetcollapsable.C
	(InsetCollapsable::metrics): make sure openinlined_ does not 
	contain mi.base.textwidth

	* insettabular.C
	(InsetTabular::metrics): modify m.base.textwidth calculation



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14472 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-17 05:30:36 +00:00
Michael Schmitt
bc1582b0b1 remove LFUN_INSET_DIALOG_SHOW
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14450 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-14 08:11:23 +00:00
Abdelrazak Younes
e1a5cb74a8 GUI API Cleanup step 3: merge with "younes" branch.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14448 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-13 16:37:55 +00:00
Georg Baum
c9c6ed0b7f Split clipboard and X selection
* src/LyXAction.C
	(LyXAction::init): handle new LFUN_CLIPBOARD_PASTE

	* src/insets/insettabular.C
	(InsetTabular::doDispatch): ditto

	* src/insets/insetbox.C
	(InsetBox::doDispatch): ditto

	* src/insets/insetert.C
	(InsetERT::doDispatch): ditto
	(InsetERT::getStatus): ditto

	* src/insets/insetcharstyle.C
	(InsetCharStyle::doDispatch): ditto

	* src/BufferView_pimpl.C
	(BufferView::Pimpl::selectionRequest): stuff selection, not clipboard

	* src/mathed/math_nestinset.C
	(MathNestInset::lfunMousePress): get stuff selection, not clipboard
	(MathNestInset::lfunMouseRelease): clipboard -> selection in
	commented code

	* src/CutAndPaste.C
	(cutSelection): ditto

	* src/frontends/{qt3,gtk}/GuiImplementation.C
	(GuiImplementation::newWorkArea): create new selection, not clipboard,
	since the clipboard is now an object
	(GuiImplementation::destroyWorkArea): destroy selection, not clipboard

	* src/frontends/{qt4,qt3,gtk}/GuiSelection.h: new, copied from
	GuiClipboard.h

	* src/frontends/{qt4,qt3,gtk}/GuiSelection.C: new, copied from
	GuiClipboard.C

	* src/frontends/{qt3,gtk}/GuiImplementation.h
	(selection): new accessor for selection_
	(selection_): new, the global selection object

	* src/frontends/{qt4,qt3,gtk}/Makefile.am: add GuiSelection.C and
	GuiSelection.h

	* src/frontends/{qt4,qt3,gtk}/GuiClipboard.C
	(GuiClipboard::get): return clipboard, not selection
	(GuiClipboard::put): stuff clipboard, not selection

	* src/frontends/{qt4,qt3,gtk}/GuiClipboard.h
	(haveSelection): remove (this is now in GuiSelection)

	* src/frontends/{qt3,gtk}/GuiClipboard.h
	(old_work_area_): remove, since it is not needed anymore

	* src/frontends/gtk/ghelpers.C
	(getGTKStockIcon): handle LFUN_CLIPBOARD_PASTE

	* src/frontends/Clipboard.h
	(haveSelection): remove (this is now in Selection)

	* src/frontends/qt4/GuiImplementation.[Ch]
	(GuiImplementation::selection): new accessor for selection_

	* src/frontends/Gui.h
	(selection): New accessor for the global selection object

	* src/frontends/Selection.h; new, copied from Clipboard.h

	* src/frontends/Makefile.am: add Selection.h

	* src/text3.C
	(various): s/clipboard().haveSelection/selection().haveSelection/

	(LyXText::dispatch): handle LFUN_CLIPBOARD_PASTE
	(LyXText::getStatus): ditto

	* src/lfuns.h: new lfun LFUN_CLIPBOARD_PASTE

	* lib/ui/stdmenus.ui: add new lfun LFUN_CLIPBOARD_PASTE


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14408 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-10 11:32:25 +00:00
Georg Baum
82a4214f7b make FileName::isZipped more efficient by caching previous results
* src/insets/insetgraphics.C
	(copyToDirIfNeeded): replace file_in and zipped arguments with a
	FileName argument
	(InsetGraphics::prepareFile): adjust call of copyToDirIfNeeded

	* src/support/filename.C
	(FileName::FileName): set zipped_valid_
	(FileName::set): ditto
	(FileName::erase): ditto
	(isZipped): use zipped_

	* src/support/filename.[Ch]
	(zipped_): new cache for isZipped()
	(zipped_valid_): new, tell whether zipped_ is valid


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14376 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-08 14:16:56 +00:00
Jürgen Spitzmüller
1d8fa4fd2c * src/insets/insettabular.h: return true for allowSpellcheck (bug 2675)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14356 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-07 10:18:33 +00:00
Lars Gullik Bjønnes
fb97c0689b First part of r14315 from the younes branch:
* BufferView and BufferView::pimpl:
   		- getClipboard, stuffClipboard, haveSelection: deleted

	* CutAndPaste.C: use BufferView::owner()->gui().clipboard()
	* insettabular.C: ditto
	* math_nestinset.C: ditto
	* text3.C: ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14323 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-03 20:19:33 +00:00
Georg Baum
0c0c43b8eb merge booktabs branch
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14319 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-03 19:13:56 +00:00
Jürgen Spitzmüller
913a4129aa * src/insets/insettabular.C (doDispatch): set cursor properly on mouse
(button 3) press. Fixes crash.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14237 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-26 18:16:38 +00:00
Martin Vermeer
4cb9cd44ec Redefine the speed-up "Wide" patch to draw proper boxes
in available space instead of line pairs.

	* rowpainter.C
	(paintPar): change background rectangle

	* insets/insettext.C
	(InsetText::draw):
	(InsetText::drawSelection): simplify rectangle drawing

	* insets/insettext.h: dump Tall()

	* insets/insetcollapsable.C
	(InsetCollapsable::metrics): subtract button from available
	space in case of inlined inset



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14161 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-20 12:39:39 +00:00
Martin Vermeer
2e590eeee4 * insettabular.C (drawSelection): revision of previous patch:
initialize table background



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14158 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-20 10:44:49 +00:00
Abdelrazak Younes
d8ae51dbe1 This is the merging of the GUI API cleanup branch that was developed in svn+ssh://svn.lyx.org/lyx/lyx-devel/branches/personal/younes.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14152 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-20 08:39:16 +00:00
Martin Vermeer
40d8a3cce5 * insettabular.C (drawSelection): initialize cell background
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14141 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-18 09:27:57 +00:00
Martin Vermeer
85dc2d3ebd * insetbox.h: add noFontChange() == true to prevent LaTeX error for
multi-paragraph box insets



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14056 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-09 12:10:49 +00:00
Martin Vermeer
1a77233c5f Add support for framed.sty
* src/LaTeXFeatures.C: add framed.sty

	(const * simplefeatures[]: add framed.sty
	(const LaTeXFeatures::getPackages): define shadecolor

	* src/insets/insetnote.h

	* src/insets/insetnote.C
	(const init_notetranslator):
	(InsetNote::setButtonLabel): add Framed and Shaded
	(InsetNote::latex): add output
	(InsetNote::validate): require framed.sty

	* src/buffer.C
	(BufferList bufferlist): new LyX version 246

	* src/frontends/qt3/ui/QNoteDialogBase.ui: add

	* src/frontends/qt3/QNoteDialog.C: add

	* src/frontends/qt3/QNote.C
	(QNote::update_contents): add framed, shaded
	(QNote::apply): add framed, shaded

	* src/LColor.[Ch]: add background colour for shaded

	* lib/lyx2lyx/LyX.py: New version support

	* lib/lyx2lyx/lyx_1_5.py: convert/revert

	* lib/chkconfig.ltx: add framed.sty

	* src/frontends/xforms/FormNote.C
	(FormNote::build):
	(FormNote::update): add FIXME

	* src/frontends/gtk/GNote.C
	(GNote::doBuild):
	(GNote::update):
	(GNote::apply): add FIXME

	* development/FORMAT: document format increase



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13993 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-03 16:46:27 +00:00
Martin Vermeer
32a51961ae Slight improvement to caption inset
* insetcaption.C
	(InsetCaption::setLabel): added
	(InsetCaption::metrics): modified
	(InsetCaption::draw): modified

	* insetcaption.h
	(descendable): added
	(setCount): added



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13946 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-28 17:02:57 +00:00
Jürgen Spitzmüller
a6c099326c * insettabular.C (doDispatch):
set cursor after mouse (button 3) press
	(re-fix bug 2526).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13909 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-22 14:19:34 +00:00
Jürgen Spitzmüller
6116f95f83 * insettabular.C (doDispatch):
do not mark the cursor undispatched after mouse (button 3) press
	(prevents the cursor from leaving the tabular when opening the 	
	dialog).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13906 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-22 13:11:57 +00:00
Jürgen Spitzmüller
645f5e83fb * insettabular.C (doDispatch):
fix crash due to invalidated
	cursor after insertAciiString (bug 2603).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13905 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-22 10:19:27 +00:00