Commit Graph

427 Commits

Author SHA1 Message Date
André Pönitz
83b326d204 avoid evalutation of lyxerr arguments unless really needed
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17675 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-01 10:09:49 +00:00
Georg Baum
f2769c00c7 Finish the transition to unicode of the kmap machinery and enable kmap files
again (bug 3304)

	* src/intl.C
	(Intl::initKeyMapper): Don't set the char set of trans anymore

	* src/chset.[Ch]: delete, no longer needed

	* lib/kbd/*.cdef: ditto

	* src/lyxrc.[Ch]: remove RC_SCREEN_FONT_ENCODING and font_norm,
	these are no longer needed

	* src/lyxfunc.C: adapt to lyxrc changes

	* src/Makefile.am: remove deleted files

	* lib/Makefile.am: ditto

	* development/scons/scons_manifest.py: ditto

	* src/text3.C
	(LyXText::dispatch): reenable the kmap mechanism

	* src/trans_mgr.[Ch]
	(TransManager::setCharset): remove, no longer needed
	(TransManager::insert): remove, since it would be identical to
	insertVerbatim now
	(TransManager::insertVerbatim): rename to insert


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17665 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-31 16:41:02 +00:00
Jean-Marc Lasgouttes
139168b5f2 * src/text3.C (dispatch): revert previous fix to 3143
* src/text.C (breakParagraph): setCursor does not set current_font when
	applied to a CursorSlice (fixes bug 3143)



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17654 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-30 20:41:38 +00:00
André Pönitz
fa1f10cbd8 enable LFUN_MATH_INSERT in text
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17647 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-30 13:29:09 +00:00
Abdelrazak Younes
ae4db7543f Fix bug 3356 by Bernhard Roider:
The crash happens on alt+up and alt+down if the position of the cursor
in the moved paragraph is beyond the length of the target paragraph.

To avoid it the Position of the iterators for the target paragraph must
be corrected. I set it to 0 as i assume it is not really used.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17613 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-28 16:01:32 +00:00
Abdelrazak Younes
3b9f86926d Fix bug 3143 by Richard Heck. Background information from Richard:
breakParagraph seems to be called five times: in buffer.C, by
insertStringAsLines; and in text3.C, for LFUN_BREAK_PARAGRAPH,
LFUN_BREAK_PARAGRAPH_KEEP_LAYOUT, LFUN_BREAK_PARAGRAPH_SKIP (which
itself calls LFUN_BREAK_PARAGRAPH if a paragraph will be broken), and
for LFUN_FLOAT_LIST. My sense was that the KEEP_LAYOUT version maybe
shouldn't reset the text style.  That's why I put it where I did. But I
doubt it matters very much, and I had it in breakParagraph myself at one
point.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17612 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-28 15:22:39 +00:00
Michael Schmitt
63023c18e5 * src/text3.C: fix float inset insertion in case the
user has selected some text


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17123 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-09 10:57:23 +00:00
Abdelrazak Younes
475232ed47 Revert commit 17010.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17025 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-02 10:31:22 +00:00
Bo Peng
8b56166641 Persistent-selection (and fix bug 3162)
* src/CutAndPaste.h/C: add selectionBuffer to save selected text
	* src/text3.C: proper handling of paste
	* src/lyxfind.C: save selection
	* src/BufferView.C: save selection
	* src/text.C: save selection
	* src/cursor.C: save selection
	* src/insets/insettabular.C: save selection
	* src/mathed/InsetMathGrid.C: save selection
	* src/mathed/InsetMathHull.C: save selection
	* src/mathed/InsetMathNest.C: save selection


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17022 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-02 03:10:15 +00:00
Abdelrazak Younes
35bb5af289 linux compile fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17013 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-01 17:36:56 +00:00
Abdelrazak Younes
cdd8c9e076 As explained in the comments, this is a partial fix for bug 2154:
http://bugzilla.lyx.org/show_bug.cgi?id=2154

This will automatically put the label inset _after_ a numbered section. It is possible to extend the mechanism to any kind of LateX environment.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17010 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-01 17:21:05 +00:00
Michael Schmitt
3988637488 * src/text3.C: fix comment (now it makes sense)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17009 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-01 16:23:24 +00:00
Abdelrazak Younes
42ff801ec9 Add empty paragraphs before and after the caption inset upon float (or wrap) inset creation.
Hopefully fix bug 675:

http://bugzilla.lyx.org/show_bug.cgi?id=675

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16999 a592a061-630c-0410-9148-cb99ea01b6c8
2007-02-01 09:22:03 +00:00
Abdelrazak Younes
ce7c45bb43 Fix 3188, update the labels at each Caption insertion.
http://bugzilla.lyx.org/show_bug.cgi?id=3188




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

* lyxtextclass.C: increase FORMAT format to 3.

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

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

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

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

* text3.C: enable LFUN_CAPTION_INSERT


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

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

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

* src/text2.C: add assertion

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

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

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

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16858 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-25 21:18:36 +00:00
Michael Schmitt
2e09a925a5 * src/lyxtext.h:
* src/BufferView.C:
* src/text3.C:
* src/text.C: merge methods acceptChange() and rejectChange() to acceptOrRejectChange() because they share a lot of tricky code

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

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

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

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16830 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-23 21:53:16 +00:00
Jürgen Spitzmüller
798af7d8f3 * src/text3.C (doDispatch):
- record undo on LFUN_BREAKLINE (bug 3111).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16730 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-17 15:40:55 +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
Georg Baum
a683072ea0 Fix enabling of LFUN_PRIMARY_SELECTION_PASTE: It was always disabled, because
we don't set the selection with qApp->clipboard()->put().
Therefore we get the status of the internal selection from the cursor, and
the empty flag for fake selections is not needed anymore.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16610 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-08 18:37:40 +00:00
Georg Baum
36ada6f267 Correctly enable/disable all paste lfuns
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16576 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-07 16:43:38 +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
1103be3d85 Fix thinko: default paste method for plain text
* src/lyxtext.h
	* src/text3.C
	(pasteString): Change argument to bool

	* src/text3.C
	(LyXText::dispatch): (LFUN_PASTE): Paste plain text as paragraphs,
	not as lines
	(LyXText::dispatch): Adjust to pasteString change

	* lib/bind/cua.bind:
	* lib/bind/sciword.bind:
	* lib/bind/mac.bind: Move shortcuts from "clipboard-paste paragraph"
	and "primary-selection-paste paragraph" to "primary-selection-paste"
	and "clipboard-paste", since the "paragaph" versions are used in
	LFUN_PASTE and middle-mouse-button paste. Now "primary-selection-paste"
	has the same shortcut it always had, and "clipboard-paste" has the
	shortcut that was originally assigned to
	"primary-selection-paste paragraph".


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16553 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-06 15:33:07 +00:00
Georg Baum
594a589bc4 Fix and document middle mouse button paste. This is probably the last of
the status quo fixes, I'll send a proposal how to proceed soon.

	* src/CutAndPaste.[Ch]
	(copySelection): Split into copySelection and copySelectionToStack

	* src/text3.C
	(LyXText::dispatch): Use copySelectionToStack instead of LFUN_COPY
	to copy the selection to the cut buffer for two reasons:
	- LFUN_COPY did not work (probably because bv.cursor() was not yet set)
	- If it would work it would put the selection to the system clipboard
	  which is clearly wrong.
	Document why we put the selection to the stack.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16534 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-05 14:40:49 +00:00
Georg Baum
8b9a33b656 Don't query cur.selection() twice
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16528 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-05 13:23:43 +00:00
Georg Baum
3772b9f662 reenable assertion
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16503 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-04 14:28:22 +00:00
Abdelrazak Younes
47fbb72398 comment out assertion in order to compile without warning.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16502 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-04 14:13:30 +00:00
Abdelrazak Younes
89ab910a4f delete unused variables.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16500 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-04 13:29:35 +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
Abdelrazak Younes
61f7ebd4a9 Factorise external pasting code.
* LyXText::pasteString(): new private method.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16475 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-03 07:30:50 +00:00
Abdelrazak Younes
ad84c0ce5d delete unused variables.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16443 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-30 15:53:19 +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
Abdelrazak Younes
361a97b070 Fix bug 3024 (http://bugzilla.lyx.org/show_bug.cgi?id=3024).
The use of top-level lyx::dispatch() ensure that the CoordCache is OK at each step.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16348 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-20 14:17:50 +00:00
Jürgen Spitzmüller
fc30e9f6bb Fix dEPM crash:
* src/BufferView.[Ch]: 
	- make mouseSetCursor a bool and pass dEPM return value.

* src/text3.C (doDispatch):
	- LFUN_MOUSE_PRESS: request update if mouseSetCursor
	  (i.e. dEPM) returned true.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16240 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-11 13:59:40 +00:00
Abdelrazak Younes
a5df789cae * LyXText::cursorNext(): Fix crash with PageDown when the next paragraph is a math inset bigger than the screen.
* LyXText::cursorPrevious(): Implement the same check for safety reason.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16092 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-28 17:24:44 +00:00
Abdelrazak Younes
5df2f4ed06 Fix screen updates with arrow key navigation.
* text2.C
  - LyXText::cursorUp(): ensure that BufferView::FitCursor() is tested.
  - LyXText::cursorDown(): ditto
  - LyXText::cursorRight(): ditto
  - LyXText::cursorLeft(): ditto

* text3.C
  - LyXText::dispatch(): add FIXME and ensure that update flag is at least equal to FitCursor.


  

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16072 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-27 12:49:28 +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
286a8e2676 * src/text3.C:
* src/BufferView.C: add comments on why several
	change tracking-related LFUNs are always enabled


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16034 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-24 23:01:24 +00:00
Abdelrazak Younes
34600f5055 * Status.15x: updates.
* buffer.h: changed() signal do not have an argument now.

* BufferView.C:
  - setBuffer(): changed update() call to updateMetrics().
  - update(): sanitize how the flags are used.
  - scrollDocView():  add a call to updateMetrics() at the end.

* LyXFunc::dispatch(): adjust changed() signal emission.

* LyXText/text3.C:
  - cursorPrevious(): delete BufferView::update call; adjust cursor flag.
  - cursorNext(): ditto.

* frontends/LyXView.C: adjust Buffer::changed() signal connection.

* frontends/WorkArea.[Ch]:
  - redraw(): no need to re-update the metrics if we don't change views.
  

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15997 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-20 14:42:18 +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
1c3755244f Fix bug 2393 (from Dov Feldstern)
* src/lyxtext.h
	* src/text.C
	(LyXText::charsTranspose): New method for transposing characters

	* src/text.C
	(LyXText::dispatch): Call charsTranspose for LFUN_CHARS_TRANSPOSE


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15951 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-17 09:03:30 +00:00
Georg Baum
bb8c9253e4 Add button for default layout to the toolbar
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15946 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-16 08:17:48 +00:00
Georg Baum
7e7d28a0ca Make it possible to uses non-ascii labelstring, endlabelstring and
labelstring_appendix in layout files

	* src/text2.C
	(LyXText::setLayout): Translate labelwidthstring for paragraph
	(LyXText::getStringToIndex): labelwidthstring is now a docstring

	* src/buffer.[Ch]
	(Buffer::translateLabel): New method for translating a label if it
	is not already translated by the user in the layout file

	* src/lyxtext.h
	(setParagraph): labelwidthstring is now a docstring

	* src/support/lstrings.[Ch]
	(bool isAscii): New utility function: Determine whether a docstring
	contains only pure ascii

	* src/text3.C
	(LyXText::dispatch): setParagraph() now takes a docstring

	* src/lyxlayout.C
	(LyXLayout::read): Don't use from_ascii when reading labelstring_,
	endlabelstring_ and labelstring_appendix_

	* src/buffer_funcs.C
	(setLabel): labelwidthstring is now a docstring
	(setLabel): Use Buffer::translateLabel instead of Buffer::B_ to
	translate labels
	(expandLabel): ditto


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15855 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-11 12:00:34 +00:00
Georg Baum
1354f4b6d6 Unicode: Avoid another from_utf8(to_utf8()) roundtrip
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15854 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-11 11:27: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
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
Lars Gullik Bjønnes
3674a8c003 LFUN_UNICODE_INSERT - unicode-insert
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15490 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-22 18:47:19 +00:00
André Pönitz
dc94575f2b make macrfos readable again
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15479 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-22 14:37:32 +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