Commit Graph

12155 Commits

Author SHA1 Message Date
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
Abdelrazak Younes
7c9f34d0b5 fix MSVC warning.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17567 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-26 10:33:27 +00:00
Georg Baum
925c17c058 Get rid of LyXRC::font_norm_type, since it is no longer needed for arabic
support.
LyXRC::font_norm stays for now, since it is still used for the kbmap stuff.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17566 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-26 08:24:38 +00:00
Georg Baum
728c361511 remove lyxrc variables that where only used by xforms
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17565 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-26 08:14:17 +00:00
Georg Baum
1c46866b71 compile fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17564 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-26 07:38:33 +00:00
Peter Kümmel
e11abd6c2e disable requirement for 2.4.4 version
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17562 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-26 06:55:16 +00:00
Bo Peng
07cc619a4c Present to Abdel: Syntax highlighting for LaTeX Log. (I know I should have been reading windows installers :-)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17561 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-26 04:25:49 +00:00
Enrico Forestieri
a33f6ed840 Avoid random kerning values.
* src/mathed/MathData.C
	(MathArray::metrics): Explicitly initialize kerning_ as it may
	contain random data when the nucleus is an empty MathFont inset.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17560 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-26 00:05:28 +00:00
Abdelrazak Younes
642adc3eb7 Fix crash in debug mode (MSVC) due to an assertion in Qt.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17559 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 23:22:25 +00:00
Peter Kümmel
745c9e91fd cmake:
- add flags for debug/release/profile
 - also build qt4 as one file with gcc
 
 


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17558 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 22:03:59 +00:00
Michael Schmitt
9b7bd6a910 * src/text.C: fix bug #2810
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17557 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 17:11:30 +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
2ccde85cb5 Add FIXME.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17554 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 16:22:13 +00:00
Abdelrazak Younes
be3fc71676 Third present for Bo: Add syntax highlighting to the LateX preamble.
TODO: extract the latexHighlighter class into its own .[Ch] files.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17553 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 16:13:14 +00:00
Abdelrazak Younes
68e8329644 Add a vertical spacer for nice resizing.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17552 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 15:50:32 +00:00
Abdelrazak Younes
9fc7e95b56 Second present for Bo: De-clutter the widget:
- spacing set to zero
- controls moved to the side.
 

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17551 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 15:34:23 +00:00
Edwin Leuven
4b4b5a55b3 correct tab order and remove duplicate shortcuts
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17550 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 15:28:33 +00:00
Michael Schmitt
877f513b05 add missing #include
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17549 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 15:22:54 +00:00
Abdelrazak Younes
8b0ca4b5d5 biblio.h is already included in bufferparams.h
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17548 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 14:04:54 +00:00
Georg Baum
0071cd8140 * src/rowpainter.C
(RowPainter::paintHebrewComposeChar): Convert characters 0xf8 and
	0xe3 from CP1255 to UCS4 encoding


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17547 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 14:04:29 +00:00
Abdelrazak Younes
b4831be219 Fix gcc warning.
Those arguments are not needed because update() will always look at what is currently selected and the info is there.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17546 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 13:21:23 +00:00
Georg Baum
816737b843 Better comment from Dov Feldstern (and remove now obsolete comment about
the isComposeChar functions)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17544 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 10:53:01 +00:00
Georg Baum
8703fa34b9 * src/encoding.C
(Encodings::isComposeChar_hebrew): Change code points from CP1255 to
	UCS4


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17543 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 10:45:03 +00:00
Georg Baum
a73baed13b Compilation fix: enums can't be forward declared.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17542 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 10:35:38 +00:00
Georg Baum
460e8b8c65 fix compiler warning
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17541 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 10:32:22 +00:00
Edwin Leuven
5fc7649ea9 make lyx compile again:
* qwidget doesn't have sizegrip property here

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17540 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 09:55:37 +00:00
Abdelrazak Younes
44efd43a1b Cleanup and polish of the Citation dialog:
- now simple citation insertion can be done with the keyboard only (enter key will close the dialog and insert the chosen key).
- now search also within bib entry information (very fast)
- new case sensitive option
- new regex option.
- QCitation: code simplified, some code went to ControlCitation.
- QCitationDialog: code simplified
- lots of polish in the dialogs...



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17539 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 01:32:12 +00:00
Abdelrazak Younes
14f3344f0b Present for Bo: Cleanup ViewSource and make it a DockWidget.
* DockView.h: add the orientation option.

* QViewSource: now a model and a controller

* QViewSourceDialog: now only a simple QWidget.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17538 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 01:25:29 +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
Abdelrazak Younes
35173d515b remove useless declaration
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17536 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 00:57:12 +00:00
Abdelrazak Younes
74b445ea42 * Buffer::fillWithBibkeys()
- replace unneeded dynamic_cast with static_cast
  - fix citation info for normal BIBITEM entries.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17535 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 00:56:01 +00:00
Abdelrazak Younes
65c041095d remove useless assertion (already handled by std-debug), gets rid of two gcc warnings.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17534 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 00:49:09 +00:00
Abdelrazak Younes
d75143217c Bugfix: no need to update if the dialog is not visible.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17533 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-25 00:45:34 +00:00
Georg Baum
6862d3f972 Update special arabic support to UCS4
* src/encoding.C
	(arabic_table): Delete (this was used for fonts in iso8859-6 encoding)
	(arabic_table2): Rename to arabic_table and update code points to UCS4.
	The old code points in this table where a custom encoding:
	Some ASCII positions and some unused positions of the iso8859-6
	encoding where used to encode the shaped forms. Example:
	The character hamza was encoded with 0x41. The iso8859-6 encoding in
	lib/encodings contained ithe value 0xfe80 at position 0x41 before
	the transition to unicode => Change the value 0x41 to 0xfe80 in the
	table.
	This old custom encoding was needed because the transformed characters
	needed to be transported through 8bit characters.
	(Encodings::is_arabic_special): Change code points from iso8859-6 to UCS4
	(Encodings::isComposeChar_arabic): Ditto
	(Encodings::is_arabic): Ditto
	(Encodings::transformChar): Always use arabic_table


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17532 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-24 21:12:29 +00:00
Georg Baum
c27dce2b16 support direct conversion from format 1 to format 3
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17531 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-24 12:39:45 +00:00
Peter Kümmel
3a74b10d91 also improve build times when working on some files
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17530 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-24 11:33:03 +00:00
Peter Kümmel
65870c3168 final compilation: wheel was already invented :(
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17529 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-23 23:56:27 +00:00
Enrico Forestieri
e53e4d0672 Account for kerning when positioning scripts in the MathFontOld and
MathUnknown insets.

	* src/mathed/InsetMathUnknown.C
	(InsetMathUnknown::metrics): Cache kerning of last char.

	* src/mathed/InsetMathUnknown.h
	* src/mathed/InsetMathFontOld.h
	(InsetMathUnknown::kerning): New. Return cached kerning value.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17528 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-23 18:55:50 +00:00
Bo Peng
c79381b9aa Tidy up po/lyx_pot.py, I did not 'svn add' the latest version of the script
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17527 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-23 15:21:45 +00:00
Georg Baum
6c8520bb88 Fix bug 440
* src/frontends/controllers/ControlCharacter.[Ch]
	(reset_lang_) New flag (needed because the language is never
	inherited)

	* src/frontends/controllers/ControlCharacter.C
	(ControlCharacter::getLanguage): Use reset_lang_
	(ControlCharacter::setLanguage): Set reset_lang_ if needed


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17526 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-23 15:09:21 +00:00
Georg Baum
556bf23be9 add further comment
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17525 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-23 15:07:10 +00:00
Bo Peng
459bdcdecb po/Makefile.in.in, use $(srcdir) instead of $(top_srcdir)/po
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17524 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-23 14:56:48 +00:00
Bo Peng
fd3e6607a4 po/Makefile.in.in: call lyx_pot.py with correct -b option
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17523 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-23 14:49:48 +00:00
Bo Peng
205f2b30c2 Scons: add description to update_po target to INSTALL.scons
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17522 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-23 14:36:07 +00:00
Bo Peng
f6b9509ea5 Scons update_po target: Windows/cmd.exe is unhappy about single quotes
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17521 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-23 14:27:27 +00:00
Jean-Marc Lasgouttes
ded8e8a8e9 Make it possible to call lyx_pot.py when builddir != srcdir.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17520 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-23 14:22:08 +00:00
Georg Baum
fd867eafdc Workaround for bug 3040
* src/rowpainter.C
	(RowPainter::paintChars): Paint hebrew characters one at a time


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17519 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-23 09:18:07 +00:00
Enrico Forestieri
7fb8a4a595 Correctly implement rule 18a in appendix G of the TeXbook
* src/mathed/InsetMathScript.C
	(isAlphaSymbol): New. Return true if nucleus is a letter or a
	symbol whose type is mathord or mathalpha.
	(InsetMathScript::dy01): Apply rule 18a accounting for nucleus type.

	* src/mathed/MathData.C
	(MathArray::metrics): Account for the fact that some fonts (eg.
	mathcal) do not have a lower case x glyph.

	* src/mathed/InsetMathSymbol.[Ch]
	(InsetMathSymbol::isOrdAlpha): New. Return true if type of symbol
	is mathord or mathalpha.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17518 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-23 02:12:48 +00:00