Commit Graph

2213 Commits

Author SHA1 Message Date
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
Georg Baum
1b99ba9a57 forgot this in the last patch
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13899 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-22 09:21:43 +00:00
Georg Baum
dbb03f91f0 * src/insets/insetgraphics.C
(InsetGraphics::prepareFile): Rename file in the temp dir if the
	extension does not match the format (bug 2235)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13898 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-22 09:15:33 +00:00
Georg Baum
ff4b3ba8fc Prevent automatic opening of child docs because of natbib labels
* src/insets/insetinclude.h
	(updateBibfilesCache): adjust comment
	(getBibfilesCache): ditto

	* src/insets/insetinclude.C
	(getChildBuffer): new, return the buffer of the child if it exists
	(updateBibfilesCache): update the child buffer only if already loaded
	(getBibfilesCache): scan the child buffer only if already loaded

	* src/buffer.h
	(updateBibfilesCache): adjust comment
	(getBibfilesCache): ditto
	(bibfilesCache_): ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13869 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-19 07:21:43 +00:00
Lars Gullik Bjønnes
5e3b997b85 Remove the now superseeded SConscript files, and some small missing parts to SConstruct
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13825 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-10 18:05:12 +00:00
Michael Schmitt
1396ade8b1 fix LFUN enum values (some of them were broken by r13801)
adjust some commands according to the LyX naming conventions
(toggle-tooltip => tooltip-toggle, *-change(s) => change(s)-*) 


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13811 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-08 18:09:19 +00:00
Bo Peng
7168ce58b5 scons-based build system, by Bo Peng (ben.bob@gmail.com)
* SConstruct: main SConstruct file
	* scons_utils.py: utility functions
	* qt4.py: qt4 support is not yet official, and I have to patch this file
	* src/SConscript
	* src/insets/SConscript
	* src/graphics/SConscript
	* src/mathed/SConscript
	* src/frontends/qt3/SConscript
	* src/frontends/qt4/SConscript
	* src/frontends/SConscript
	* src/frontends/controllers/SConscript
	* src/support/SConscript
	* src/client/SConscript
	* src/tex2lyx/SConscript
	* boost/libs/SConscript
	* boost/libs/signals/src/SConscript
	* boost/libs/filesystem/src/SConscript
	* boost/libs/iostreams/src/SConscript
	* boost/libs/regex/src/SConscript


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13807 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-07 22:44:54 +00:00
André Pönitz
da65e2b7fb rename LFUN enum values according to their command (as used in th minibuffer/bind files
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13801 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-05 20:23:12 +00:00
Martin Vermeer
69429f22f5 Restore the caption inset to functionality on-screen
* insetcaption.[Ch]

	(InsetCaption::draw): draw label with surrounding-float-sensitive name
	and true counter number
	cursorPos, metrics, edit, editXY: add



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13797 a592a061-630c-0410-9148-cb99ea01b6c8
2006-05-05 05:51:51 +00:00
Abdelrazak Younes
8c0bd3a77b * TocBackend.[Ch]: new files defining class TocBackend. This class contains adapted code from former toc.C
* toc.[Ch]:
    - rewritten to take advantage of new TocBackend class. The toc
    cache is implemented as a static variable:
    static map<Buffer const *, lyx::TocBackend> toc_backend_;

* buffer_funcs.C:
    updateLabels(Buffer const & buf) now calls
    "lyx::toc::updateToc(buf);"

* pariterator.h: added default constructor
    ParConstIterator(): DocIterator() {}

* insetfloat.C: added pit parameter to TocItem construction

* insetwrap.C: added pit parameter to TocItem construction

* MenuBackend.C: use a const ref instead of a copy of TocList

* ControlToc.[Ch]: optimisation of the API by using const reference instead of copy.

* qt4/TocPanel.[Ch]:
    - optimisation of the API by using const reference instead of
    copy
    - directly use of TocBackend::TocIterator instead of identification by paragraph contents.

* qt4/QToc.C:
    - optimisation of the API by using const reference instead of
    copy
    - makes use of TocBackend::Item::uid()

* qt2/QToc.C:
    - use TocItem::depth() and TocItem::str() instead of public member access.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13713 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-22 18:48:28 +00:00
Jürgen Spitzmüller
6e836024f5 Don't jump back to cursor on inset clicking:
* src/insets/insetcollapsable.C
	(void InsetCollapsable::doDispatch): undispatch cursor after lmb button click.
* src/insets/insettabular.C
	(void InsetTabular::doDispatch):  undispatch cursor after rmb click.
* src/insets/insetref.C
	(void InsetRef::doDispatch):  undispatch cursor after rmb click.
* src/text3.C
	(void LyXText::dispatch): set cursor also after rmb click.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13684 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-15 15:10:03 +00:00
Jürgen Spitzmüller
1bed69439f Much better performance when using natbib (bug 2460):
* src/BufferView_pimpl.C
	(bool BufferView::Pimpl::dispatch): update bibfiles cache after adding or
	deleting a bib database
* src/buffer.C
	(bool Buffer::readDocument): update bibfiles cache after the document 
	was read
* src/buffer.[Ch]
	(void Buffer::updateBibfilesCache): new method to build or update a cached
	vector with all used bibtex databases. 
	(void Buffer::getBibfilesCache): new method that returns the actual cache.
	(Buffer * Buffer::getMasterBuffer): new (non-const) method to get the buffer 
	of the master document

* src/insets/insetbibtex.C
	(void InsetBibtex::doDispatch): update the bibfiles cache after the inset has
	been modified.
* src/insets/insetinclude.C.
	(void Insetinclude::doDispatch): update the bibfiles cache after the inset 
	has Been modified.
* src/insets/insetinclude.[Ch]:
	(void Insetinclude::updateBibfilesCache): new method to build or update 
	a cached vector with all used bibtex databases. 
	(void Insetinclude::getBibfilesCache): new method that returns the actual 
	cache.
* src/insets/insetcite.C
	(string const getNatbibLabel): store a map of timestamps for all used bibtex 
	files (buffer's bibfiles cache) and rebuild the list of keys only if the timestamps
	or the list of files have changed. This is the actual performance boost. 

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13681 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-15 11:46:17 +00:00
Jürgen Spitzmüller
6fb5b5cd4e * src/insets/insettabular (doDispatch): use insertAsciiString in
LFUN_PASTESELECTION. Simplifies the code a lot and fixes 
	wrong language settings.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13665 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-13 14:19:12 +00:00
Bo Peng
d7bccc5f88 Update on view-source feature (r13610), from Bo Peng (ben.bob@gmail.com)
* src/text3.C, src/lyxfunc.C: no special treatment of view-source dialog now.
	* src/frontends/controllers/ControlViewSource.h, .C:
		handle everything (get source type, code) in the controller.
	* src/insets/insetbibtex.C, insetexternal.C insetinclude.C:
		add dryrun mode to file copying etc.
	* src/frontends/qt2/QViewSource.C: small changes when calling the controller.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13627 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-10 16:27:59 +00:00
Bo Peng
eb485caa96 view-source feature, from Bo Peng <ben.bob@gmail.com>
* src/buffer.h buffer.C - getSourceCode()
	* src/lyxfunc.C -  open view-source dialog
	* src/text3.C - change LFUN_MOUSE_RELEASE
	* src/output_linuxdoc.C, src/output_docbook.C, src/output_latex.C 
		- intercept output
	* src/outputparams.h, outputparams.C - add par_begin, par_end, dryrun
	* src/insets/insetgraphics.C  - add dryrun mode of file conversion
	* lib/ui/stdmenus.ui - add view-source menu item under view
	* Add view-source dialog, add 
	    src/frontends/qt2/QViewSourceDialog.h, QViewSource.C, QViewSource.h, QViewSourceDialog.C
	    src/frontends/qt2/ui/QViewSourceDialogBase.ui
	    src/frontends/controllers/ControlViewSource.h ControlViewSource.C
	  modify
	    src/frontends/qt2/Makefile.dialogs, Makefile.am, Dialogs.C,
	    src/frontends/controllers/Makefile.am, po.POTFILES.in


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13610 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-09 02:48:54 +00:00