Commit Graph

10652 Commits

Author SHA1 Message Date
Abdelrazak Younes
97f66c07f6 * RowPainter:
- paintOnlyInsets(): new public method for inset painting only in case the inset dimension didn't change within a Row.
- paintInset(): put out everything not strictly related to the inset painting itself.
- paintHfill(): new private method to cut the reduce code in paintText().

* TextMetrics::drawParagraph(): use paintOnlyInsets() when the Row text nor it's dimension changed.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19912 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 13:19:24 +00:00
Alfredo Braunstein
80df00006c solve Bug 3600 by eliminating a call to stripLeadingSpaces
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19911 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 12:28:22 +00:00
Abdelrazak Younes
3ee543a64e * RowPainter::paintFromPos(): transfer inset part to paintInset()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19910 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 09:01:30 +00:00
Martin Vermeer
99848328b6 Fix old error string in Cases
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19908 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 08:21:28 +00:00
Richard Heck
781f1af8d7 Fix bug 3999: Highlight search text.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19907 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 01:26:18 +00:00
Abdelrazak Younes
79ba8fe22a Bug fixes. changed_ was always true...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19901 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-29 23:06:14 +00:00
Richard Heck
7f17f13bfc Get package things working with modules prior to UI patch.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19900 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-29 22:59:25 +00:00
Abdelrazak Younes
8239945aa7 Enable use of Row::changed()
* TextMetrics::redoParagraph(): crop the RowList if it is too big.
* ParagraphMetrics::reset():  don't clear its RowList.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19897 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-29 21:33:11 +00:00
Abdelrazak Younes
8175971041 Transfer ParagraphMetrics::rowChangeStatus() to Row::changed(). Prepare for fine grained row redrawing.
^ Row:
- changed_: new boolean to inform change status at draw time.
- crc_: new crc_ signature
- inline pos() and endpos()
- replace width(), ascent() and descent() direct access with dimension().

* ParagraphMetrics
- do not maintain row_signature_ anymore
- rename calculateRowSignature() to computeRowSignature() and make it public

* TextMetrics
- redoParagraph(): don't clear the ParagraphMetrics row list, reuse and update it.
- rowHeight(), rowWidth(), rowBreakPoint(): take first/end positions instead of Row.





git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19895 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-29 21:03:41 +00:00
Richard Heck
8a947f63da This is one of a series of patches that will merge the layout modules development in personal/branches/rgheck back into the tree.
Design goal: Allow the use of layout "modules", which are to LaTeX packages as layout files are to LaTeX document classes. Thus, one could have a module that defined certain character styles, environments, commands, or what have you, and include it in various documents, each of which uses a different document class, without having to modify the layout files themselves. For example, a theorems.module could be used with article.layout to provide support for theorem-type environments, without having to modify article.layout itself, and the same module could be used with book.layout, etc.

This patch adds the backend. The ModuleList class holds a list of the available modules, which are retrieved from lyxmodules.lst, itself generated by configure.py. There are two LFUNs available: modules-clear and module-add, which do the obvious thing; you can test by typing these into the minibuffer, along with the name of one of the available modules: URL (a CharStyle), Endnote (a Custom Inset), and---with the spaces---End To Foot (View>LaTeX and look at the user preamble), which are themselves in lib/layouts. There are some others, too, that allow theorems to be added to classes like article and book.

The GUI will come next.

Issues: (i) The configure.py script could be improved. It'd be nice, for example, if it tested for the presence of the LaTeX packages a particular module needs. But this would mean re-working the LaTeX script, and I don't know how to do that. Note that at present, the packages are ignored. This will change shortly. (ii) I've used std::string in LyXModule, following what seemed to be a precedent in TextClass. If some of these should be docstrings, please let me know, and I'll change them. (iii) There is at present no distinction between LaTeX and DocBook modules. Should there be? That is: Should there be modules that are available when the document class is a LaTeX class and others that are available only when it is DocBook? Or should there just be one set of modules? Each module can of course indicate for what it is suitable in its description.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19893 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-29 17:59:49 +00:00
Richard Heck
58d97d01d8 Fix bug 4170: Close window when user wants it closed.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19889 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-29 15:24:41 +00:00
Jürgen Spitzmüller
e606e5eacc * src/Text2.cpp:
- fix wrong DEPM in ct mode (bug 3961).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19884 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-29 13:04:29 +00:00
Abdelrazak Younes
a40d6cd7bc Take Track-Change into account when calculating row signature.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19876 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 22:44:09 +00:00
Abdelrazak Younes
34aba4a42b Update comment.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19870 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 18:30:15 +00:00
Abdelrazak Younes
3f54edc200 * TextMetrics::redoParagraph(): we need to check the returned value of Inset::metrics() nevertheless because some changes don't involves a dimension change (especially in multiline InsetText).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19868 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 18:25:28 +00:00
Abdelrazak Younes
235312c376 * InsetCollapsable::setStatus(): remove the Buffer::changed() signal emission. This causes a WorkArea redraw before the BufferView metrics update happens.
* WorkArea::dispatch(): replace the redraw() call with a Buffer::changed() signal emission in order to update all views of the Buffer, even though some view won't need the redraw...



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19867 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 18:13:17 +00:00
Abdelrazak Younes
0e7ef480f7 Don't draw if there's nothing to draw.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19866 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 18:05:55 +00:00
Abdelrazak Younes
1a57b660a1 Second Brown paper bag!
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19865 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 17:40:40 +00:00
Abdelrazak Younes
796724ebe1 Brown paper bag!
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19864 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 17:39:36 +00:00
Richard Heck
53bc63d95c This is one of a series of patches that will merge the layout modules development in personal/branches/rgheck back into the tree.
Design goal: Allow the use of layout "modules", which are to LaTeX packages as layout files are to LaTeX document classes. Thus, one could have a module that defined certain character styles, environments, commands, or what have you, and include it in various documents, each of which uses a different document class, without having to modify the layout files themselves. For example, a theorems.module could be used with article.layout to provide support for theorem-type environments, without having to modify article.layout itself, and the same module could be used with book.layout, etc.

This third patch just re-factors some code presently in QCitation*. (It also incorporates some bug fixes that have been committed separately.) We're going to use essentially the same set of widgets for choosing modules that is used for choosing citation keys, so we pull the controlling logic out into a new class, QSelectionManager. I did not make this a QWidget. That seemed to me to be overkill, and it would have made things much more complicated, I think...and I'm not all that experienced with Qt, anyway. Anyone who wants to do that is of course welcome.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19860 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 16:49:40 +00:00
Abdelrazak Younes
5440aad928 We are not forced to redraw the row each time the cursor is moved.
* TextMetrics.cpp: CursorOnRow() removed.
* TextMetrics::drawParagraph() do not check cursor position.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19859 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 16:39:46 +00:00
Abdelrazak Younes
be8de62ae2 Merge the Row and RowMetrics class. Those classes were separated in the 1.4 code base because the Row list was part of Paragraph. As it is now in ParagraphMetrics, there is no need to separate them. Also, only compute the rowmetrics once when the containing paragraph is redone.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19858 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 15:47:53 +00:00
Abdelrazak Younes
598e5ecb9a header cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19857 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 15:34:55 +00:00
Abdelrazak Younes
ee27b58a07 header cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19856 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 15:33:15 +00:00
Abdelrazak Younes
4590960f02 header cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19855 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 15:32:39 +00:00
Abdelrazak Younes
a276c05770 transfer margin declaration to BufferView.h
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19854 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 15:31:04 +00:00
Abdelrazak Younes
86624539f4 header cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19853 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 15:08:03 +00:00
Abdelrazak Younes
e7101b70f1 header cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19852 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 15:07:39 +00:00
Abdelrazak Younes
378c7af432 * Row: Use Dimension class.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19849 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 09:21:48 +00:00
Abdelrazak Younes
971c543b34 - Transfer rowpainter.cpp:paintPar() to TextMetrics::drawParagraph()
- move RowPainter class out of the anonymous namespace so that it can be used by TextMetrics::drawParagraph().


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19848 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-28 08:57:13 +00:00
Abdelrazak Younes
a43e822c98 Transfer rowpainter.cpp:paintText() to BufferView::draw()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19843 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-27 22:53:16 +00:00
Abdelrazak Younes
55f184563e - Transfer rowpainter.cpp:paintTextInset() to TextMetrics::draw()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19842 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-27 22:36:20 +00:00
André Pönitz
d65a564adf remove special handling of Package.cpp[.in]
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19840 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-27 21:29:56 +00:00
Martin Vermeer
def5620e58 Fix black float background
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19839 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-27 20:27:02 +00:00
Abdelrazak Younes
b52c339cce Bug fix: correctly redraw a Row containing and inset which Dimension slightly changed. This replace the need for the former leftEdgeFixed boolean in rowpainter.C:paintPar() before the removal of the wide() hack in revision 19834.
* Inset::dimension(): access to dim_

* TextMetrics::redoParagraph(): don't trust Inset::metrics() returned boolean as the internal dimension is changed down in the inheritance chain for InsetFoot->InsetCollapsable->InsetText.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19838 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-27 16:30:57 +00:00
Abdelrazak Younes
f88feb9548 I may have gone a bit too far in revision 19834: restore the selection painting.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19835 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-27 14:59:23 +00:00
Abdelrazak Younes
3c92c2ab13 Remove the wide() hack. This simplifies quite a few things...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19834 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-27 14:38:29 +00:00
Abdelrazak Younes
b3b6f44755 Gather ParagraphMetrics initialization in ParagraphMetrics::reset().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19833 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-27 14:04:46 +00:00
Abdelrazak Younes
aa5c8a844f MacOS compil fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19832 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-27 13:12:51 +00:00
Abdelrazak Younes
42ad173cd7 Disable the pixmap cache for Qt4.1 because of font problems when resizing the window.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19830 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-27 11:13:09 +00:00
Abdelrazak Younes
8750d351da Lyx crashed after inserting, deleting and inserting float object.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19827 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-27 09:03:18 +00:00
Martin Vermeer
b6546d8a93 Compile fix after bg color patch, thx Bo
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19826 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-27 08:36:18 +00:00
Abdelrazak Younes
9484768959 New 'Save all on shutdown or cancel' feature from Stephan Witt.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19824 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-27 06:35:24 +00:00
Martin Vermeer
77b575e562 Move background colour into the layout files -- for all collapsables
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19813 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-26 20:32:58 +00:00
Martin Vermeer
5541f145fa Set up decoration handling for all collapsable insets
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19798 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-25 20:12:50 +00:00
Martin Vermeer
30506f8e11 Clean-up in CharStyles, externalize detection of undefined styles to
layout files



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19790 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-25 14:43:59 +00:00
Alfredo Braunstein
314bc39ae9 remove unused variable
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19789 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-25 12:38:54 +00:00
Martin Vermeer
6c74eefd9f One more changeover charstyle -> insetlayout
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19788 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-25 12:18:23 +00:00
Martin Vermeer
e4a160c6cf Make Richard happy, add inset layout parm 'Decoration'
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19786 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-25 09:57:32 +00:00
Martin Vermeer
52cf28be89 Make const
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19785 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-25 07:53:35 +00:00
Martin Vermeer
aa908d5f0f small move-over charstyle -> insetlayout
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19784 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-25 07:46:42 +00:00
Abdelrazak Younes
a6936fe7d5 disable painting updates when adding/removing a workArea. This fixes these spurious messages with Qt4.1:
When opening another document, the following is printed to the console:

QWidget::repaint: recursive repaint detected.
QPixmap::operator=: Cannot assign to pixmap during painting
Painter must be active to set rendering hints
[repeated many times here]
Painter must be active to set rendering hints
QPainter:🔚 Painter is not active, aborted
QPixmap::operator=: Cannot assign to pixmap during painting
QPixmap::operator=: Cannot assign to pixmap during painting
currentTabChanged 1File/c/work/file2.lyx

and, when closing LyX:

QPixmap::operator=: Cannot assign to pixmap during painting
QPaintDevice: Cannot destroy paint device that is being painted.  Be sure to QPainter::end() painters!

I suspect that solving these issues might also solve the missing close
tab button problem.




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19783 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-24 22:15:20 +00:00
Enrico Forestieri
9e8f0b9d91 Compile all minizip sources also on *nix platforms, as platform
specific code is #ifdef'd out.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19782 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-24 18:02:14 +00:00
Bo Peng
2a2a5e13dd Remove unused std::time in src/DepTable.cpp
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19781 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-24 17:09:28 +00:00
Martin Vermeer
89287ef7ee Oops -- cut off wrong part of label
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19771 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-24 14:42:41 +00:00
Martin Vermeer
540f3564f0 Inset configurability: separate charstyle and custom insets
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19769 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-24 12:45:40 +00:00
Abdelrazak Younes
2cf5e9b563 LyXView::loadLyXFile(): only add a new work area if the file is not already loaded.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19768 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-24 07:19:40 +00:00
Abdelrazak Younes
ebff6bd6fb Transfer command buffer handling to QLToolbar.
* Toolbar::focusCommandBuffer(): new pure virtual method.
* Toolbars::display(): now return the address of the found toolbar.
* GuiView: get rid of command_buffer_, transferred to QLToolbar.
* QCommandBuffer: replace focus_command with setFocusProxy on edit_;



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19767 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-24 07:13:07 +00:00
Abdelrazak Younes
91f8cbe204 * BufferView::workAreaResize(): renamed to resize.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19766 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-24 07:05:19 +00:00
Abdelrazak Younes
f041baca3a Fix recursive painting with Qt4.1 and add a comment.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19765 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-24 06:59:11 +00:00
Alfredo Braunstein
09b0a337ca move forwardIdx to CursorSlice from DocIterator, as it was the only one able to travel into an invalid cursor position
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19763 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 21:35:40 +00:00
Alfredo Braunstein
ebab4e7033 remove fake constness in DocIterator
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19761 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 21:13:01 +00:00
Alfredo Braunstein
fbf4b51c7b allow one past-the-end position in CursorSlice, as it eases iteration
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19760 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 21:00:41 +00:00
Alfredo Braunstein
c0d2633b8c remove fake constness in CursorSlice
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19759 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 20:55:34 +00:00
André Pönitz
39c7e2faf0 rename Layout_ptr into LayoutPtr
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19758 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 19:59:07 +00:00
André Pönitz
50d78265aa do not compiler iowin32.* on Non-Windows
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19757 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 19:01:46 +00:00
Richard Heck
6e93e77f22 This is one of a series of patches that will merge the layout modules development in personal/branches/rgheck back into the tree.
Design goal: Allow the use of layout "modules", which are to LaTeX packages as layout files are to LaTeX document classes. Thus, one could have a module that defined certain character styles, environments, commands, or what have you, and include it in various documents, each of which uses a different document class, without having to modify the layout files themselves. For example, a theorems.module could be used with article.layout to provide support for theorem-type environments, without having to modify article.layout itself, and the same module could be used with book.layout, etc.

This first patch does some reworking of the infrastructrue. We need to distinguish between the TextClass that a particular document is using and the layout of that document, since modules, in particular, can modify the layout. The solution adopted here is to add a TextClass pointer to BufferParams, which will hold the layout. The layout itself is then constructed from the TextClass the document is using. At present, this is completely trivial, but that will change when modules are added.

The pointer in question is a boost::shared_ptr. This is needed because CutAndPaste saves a copy of the layout with each cut or copied selection. We cannot assume the selection vanishes when the document is closed, so there are two options: (i) keep a list of all the layouts that have ever been used by any document; (ii) used some kind of smart pointer. The latter seems preferable, as the former would waste memory. More importantly, the use of a smart pointer allows modules to be modified on disk and then reloaded while LyX is running, and it will eventually allow the same for layout files.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19756 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 16:41:13 +00:00
Abdelrazak Younes
24a36d01a0 header cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19755 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 16:31:58 +00:00
Alfredo Braunstein
68748f5344 compilation fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19754 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 14:35:31 +00:00
Abdelrazak Younes
c7d83abbac Put LyXView on a diet, step 2: Transfer ControlCommandBuffer handling from LyXView to QCommandBuffer.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19753 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 13:20:01 +00:00
Abdelrazak Younes
8381d36098 delete unneeded Menubar virtual interface.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19751 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 12:54:35 +00:00
Abdelrazak Younes
77d4d1256d Put LyXView on a diet, step 2: get rid of menubar direct access from the core. Menubar handling is a frontend thing.
* LyXView:
- getMenubars(): deleted.
- menubar_: transfered to GuiView::private.
- updateMenubar(): deleted, QLMenubar::update() is a void method anyway (to be deleted soon).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19750 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 12:44:21 +00:00
Abdelrazak Younes
674632104f Put LyXView on a diet, step 1: get rid of toolbars direct access from the core. Toolbar handling is a frontend thing; the goal is to progressively transfer that to the frontend.
* LyXView:
- getToolbars(): deleted.
- toolbars_: now protected. The goal is to transfer that to GuiView.
- openLayoutList(): new method. The core should not know how this list is displayed.
- showMiniBuffer(): new pure virtual method to show the mini-buffer.
- focus_command_buffer: deleted.

* GuiView:
- focus_command_widget(): deleted.
- showMiniBuffer(): implemented.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19748 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 12:21:47 +00:00
Abdelrazak Younes
a2022b1950 Delete include of config.h. This was needed only for the qt3 port.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19747 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 08:58:22 +00:00
Abdelrazak Younes
23c7c10656 Hide tab bar if there's only one tab.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19746 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 08:56:13 +00:00
André Pönitz
b1401eb791 mention source of inspiration
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19741 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-22 23:53:24 +00:00
André Pönitz
ef521debc2 add #include for BOOST_CURRENT_FUNCTION
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19738 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-22 22:58:31 +00:00
Martin Vermeer
e38b581bcb add preamble snippets to charstyles
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19732 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-22 18:55:03 +00:00
Abdelrazak Younes
65e16cdb27 add comments and remove dead code from revision 19721.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19726 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-22 14:44:34 +00:00
Abdelrazak Younes
7e6d5cb553 bug fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19725 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-22 14:38:25 +00:00
Abdelrazak Younes
4c1144c187 cosmetics: return early whenever possible to reduce indentation.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19724 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-22 14:36:18 +00:00
Martin Vermeer
a921f1b7ae layout2layout, changeover to version 5
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19723 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-22 14:36:07 +00:00
Abdelrazak Younes
e809647c77 simplify BufferView::moveToPosition() use for the external use (in LyXView and LyXFunc).
* BufferView::moveToPosition()
- now only return success boolean
- now schedule a screen centering
- now set the current font to the new position.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19722 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-22 14:25:51 +00:00
Abdelrazak Younes
5203c56db4 Fix bug 3427:
http://bugzilla.lyx.org/show_bug.cgi?id=3427

The problem was that offset_ref_ was calculated based on an empty metrics. The solution is delay the calculation up until the next metrics update.

* BufferView:
- center(): now just set the anchor_ref and program a new screen recentering.
- updateOffsetRef(): update the offset_ref_


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19721 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-22 14:14:52 +00:00
Abdelrazak Younes
8202f63160 transfer cursor position saving (in the session) from ~WorkArea to ~BufferView.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19719 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-22 09:06:13 +00:00
Abdelrazak Younes
a0e5ee9fac * restore lastfile feature.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19718 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-22 09:04:31 +00:00
Abdelrazak Younes
13a2812c22 Fix crash on first load with mouse wheel: this was because the scrollbar was not updated.
* loadLyXFile::setBuffer(): get rid of a premature optimisation, we make sure that everything is properly drawn in any case.

* GuiView::setCurrentWorkArea(): make sure everything is updated if we don't change tab.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19717 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-22 08:48:01 +00:00
Abdelrazak Younes
2419c80657 Fix crash when session is empty.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19716 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-22 08:34:48 +00:00
Abdelrazak Younes
5eb43656d7 revert 19714, this is not the right fix. LyXView::loadLyXFile() is not about displaying a buffer.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19715 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-22 08:22:32 +00:00
Abdelrazak Younes
0c00916333 Fix crash on first load with mouse wheel: this was because the scrollbar was not updated. The solution is just to force a redraw in LyXView::loadLyXFile().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19714 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-22 07:51:39 +00:00
Enrico Forestieri
468d29423e Compile fix for mingw
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19713 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-22 04:52:40 +00:00
André Pönitz
9d711c62fc simplify build process of tex2lyx
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19712 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-21 23:17:37 +00:00
André Pönitz
212f6d10df "proper" fix for utime use in filetools.cpp
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19711 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-21 23:16:49 +00:00
André Pönitz
61e6445f2e compile fix for ubuntu, probably not generic enough
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19710 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-21 23:05:48 +00:00
Bo Peng
bb045a4fba Fix file inclusion in src/support/filetools.cpp under mac
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19707 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-21 22:10:58 +00:00
Abdelrazak Younes
8db4a8dd46 * LyXView:
- setBuffer(): LyXView has no business in setting parent document.
- loadLyXFile():  delete dead code.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19703 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-21 21:41:12 +00:00
Martin Vermeer
612af5c5f0 inset configurability: ERT
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19702 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-21 21:29:13 +00:00
Peter Kümmel
281f44e295 minizip fixes for msvc and cmake
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19700 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-21 21:09:45 +00:00
Bo Peng
25b22bc54d Add autotools support for src/support/minizip stuff
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19699 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-21 20:40:02 +00:00
Bo Peng
0f7d814280 Change src/support/minizip/* from K&R to ANSI style so that a C++ compiler can compile them
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19698 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-21 20:02:05 +00:00
Bo Peng
52fa9e584e Embedding feature patch 1: add zipFiles and unzipToDir to support
* src/support/lyxlib.h: add makedir(), used by unzipToDir
	* src/support/filetools.[h|cpp]: add zipFiles() and unzipToDir()
	* src/support/mkdir.cpp: add makedir() and mymkdir(char*).
	* src/support/minizip: add zlib-1.2.3/contrib/minizip files to lyx svn
	* src/support/minizip/iowin32.h
	* src/support/minizip/ioapi.c
	* src/support/minizip/zip.c
	* src/support/minizip/unzip.c
	* src/support/minizip/crypt.h
	* src/support/minizip/ioapi.h
	* src/support/minizip/zip.h
	* src/support/minizip/unzip.h
	* src/support/minizip/iowin32.c
	* development/scons/scons_manifest.py: adjust scons
	* development/scons/SConstruct


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19692 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-21 14:48:47 +00:00
Abdelrazak Younes
0fcae6cc10 * BufferView::buffer() returns a reference instead of a pointer.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19691 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-21 13:03:55 +00:00
Alfredo Braunstein
c1b155fbe8 simplify setInsetFont, removing a potential bug (an invalid DocIterator was built). Use CursorSlices when possible.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19690 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-21 10:54:04 +00:00
Abdelrazak Younes
1356543c45 The BufferView/WorkArea/LyXView reorg a.k.a Multiple WorkAreas:
* Buffer:
- get rid of cursor_ and anchor_
- ~Buffer(): update the labels of its master buffer before closing
- closing(): pass the Buffer address.

* BufferView():
- BufferView(): needs a valid Buffer (should be const in the future.
- most of the change is about removing all test of buffer_ nullity.
- resize(): deleted.
- setBuffer(): deleted.

* Application:
- newLyXView(): simplification
- updated design description in Application.h

* Gui/GuiImplementation: remove all WorkAreas and BufferView creation/Deletion. Workareas are directly handled by  LyXView/GuiView and BufferView is created/delete by WorkArea.

* LyXView/GuiView: implement the new design

What is not working yet:
- the close tab button: it is implemented but does not show up.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19686 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-21 07:33:46 +00:00
Abdelrazak Younes
7206f23872 fix MSVC warnings
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19685 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-21 07:17:49 +00:00
Bo Peng
f982b5e051 Fix crash when a user removes a formula when its preview is being generated. (Another signal/destructor/gcc3 bug)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19667 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-20 21:30:33 +00:00
Martin Vermeer
f289399bf5 Inset configurability, LaTeX work
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19665 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-20 19:02:38 +00:00
Georg Baum
aff3772b34 fix bug 4132: parse some more column specifiers
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19662 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-20 17:30:45 +00:00
Georg Baum
d81eb848ff compile fix for qt 4.2.1.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19661 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-20 17:23:33 +00:00
Richard Heck
cd772c60a5 Biblio.{h,cpp} --> BiblioInfo.{h,cpp}
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19660 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-20 17:04:36 +00:00
Richard Heck
7a870a41d1 Fix margin problem.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19659 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-20 17:04:00 +00:00
Richard Heck
b3bff4232a Improvements to the citation dialog UI. It is now possible to search particular fields (author, title, etc) and to filter keys by entry types (article, book, etc).
The changes are essentially of three types. 

First, the std::maps previously used here for storing BibTeX data have become full-fledged classes and so what were previously just a bunch of functions have now become methods of these new  classes. This leads to a lot of minor changes in other files, to adapt to the  new signature. The changes in insets/ are mostly of this kind.

Second, there are some slightly more substantial changes in src/insets/InsetBibtex.cpp. We now store lists of the field names and entry types that have been used.

Finally, there are the changes to the citation UI. These are mostly straightforward, though adding the new functionality exposed some inadequacies in the previous code that also had to be fixed.

One other change: BibTeX keys are now docstring. This solves some Unicode issues.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19657 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-20 16:30:02 +00:00
Martin Vermeer
063a289171 small Note cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19655 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-20 04:58:29 +00:00
Martin Vermeer
5c1ffabd05 Cleanup 3: move dispatch stuff from CharStyle to Collapsable
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19654 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-20 04:56:04 +00:00
Martin Vermeer
2b927e1575 Cleanup 2: moving more stuff charstyle -> collapsable
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19648 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-19 15:45:35 +00:00
Martin Vermeer
3e13089402 Forgot this
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19647 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-19 15:42:14 +00:00
Abdelrazak Younes
e08e5afeea rev 19644: I forgot this.
* Cursor::fixIfBroken(): return fix status.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19645 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-19 13:40:09 +00:00
Abdelrazak Younes
8d8dbfd51c Fix bug 4117.
http://bugzilla.lyx.org/show_bug.cgi?id=4117


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19644 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-19 13:32:21 +00:00
Abdelrazak Younes
8ad113c30a Fix bug 4123:
http://bugzilla.lyx.org/show_bug.cgi?id=4123

* GuiView:
- closeEvent(): set quitting=true only when quitting. I don't know why and how this was changed but it was clearly wrong.
- update_view_state_qt(): only update when focus is in. Make sure this is the current LyXView.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19643 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-19 10:48:16 +00:00
Martin Vermeer
d39896da58 Small cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19642 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-19 10:08:09 +00:00
André Pönitz
6d5a52b8e3 implement --enable-monolithic-{client,frontend-qt4,controllers}. Careful with frontend-qt4, it takes ~490 MB to build (but 3 instead of 8 minutes...)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19641 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-19 09:44:34 +00:00
Martin Vermeer
3c504502bf Further inset configurability, moving charstyle stuff to collapsable
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19640 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-18 23:26:07 +00:00
Abdelrazak Younes
f91f682ef9 * Text:
- singleWidth(Buffer...): transfered to TextMetrics.
- singleWidth(Paragraph...): transfered to ParagraphMetrics.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19639 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-18 21:17:10 +00:00
Abdelrazak Younes
861e1e4dc5 * TextMetrics.cpp
- access par_metrics_ directly instead of parMetrics()
- redoParagraph() simplify the changed calculation.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19638 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-18 21:10:45 +00:00
Abdelrazak Younes
98008dc568 * Layout.h
- leftMargin, rightMargin, labelsep, labelindent, parindent are now docstring.

* TextClass.h:
- leftMargin() and rightMargin(): now return a docstring.

All other files: adapt to change above.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19633 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-18 13:21:12 +00:00
Abdelrazak Younes
2f751fe117 cosmetics.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19632 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-18 13:08:36 +00:00
Abdelrazak Younes
ba379f05d7 * Paragraph::getFontSettings(): small optimisation: avoid a Font copy
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19631 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-18 13:00:07 +00:00
Martin Vermeer
f20ff85503 Brown paper bag
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19627 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-18 11:48:53 +00:00
Martin Vermeer
dc2a40e7e9 Partial merge of CharStyle and InsetLayout stuff, first part
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19621 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-17 15:38:58 +00:00
Abdelrazak Younes
f32757e3ef * InsetCollapsable::geometry(): shut up warning by returning a dummy value and cosmetics.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19620 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-17 12:11:32 +00:00
Jean-Marc Lasgouttes
6599f01d3f * buffer_funcs.cpp (setLabel): use a switch instead of nested ifs.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19619 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-17 09:15:04 +00:00
Alfredo Braunstein
4966873264 select one row less in some cases
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19617 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-17 07:39:50 +00:00
Abdelrazak Younes
e62684db34 disable pixmap cache under X11
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19616 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-17 07:14:03 +00:00
Bo Peng
81031b4cea Fix crash when a user removes the underlying figure of a graphic inset that has been copied and pasted (Bug 4108). Revert Andel's fix r19591
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19612 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-16 18:37:38 +00:00
Martin Vermeer
f0ece382e4 Streamlining CollapseStatus stuff
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19610 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-16 16:36:50 +00:00
Abdelrazak Younes
5a82011b90 Fix color of \Omega.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19609 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-16 16:35:38 +00:00
Jean-Marc Lasgouttes
412e3b8052 revert inadvertent patch
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19608 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-16 16:18:04 +00:00
Jean-Marc Lasgouttes
06c43ec975 rename TextClass::ctrs_ to counters_
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19607 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-16 15:26:00 +00:00
Jean-Marc Lasgouttes
d3463fed60 some doxygen comments
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19606 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-16 14:44:22 +00:00
Jean-Marc Lasgouttes
7fe51efeb8 remove annoying debug message
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19605 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-16 12:42:56 +00:00
Jean-Marc Lasgouttes
f756c02329 The counters labelstring patch. Part 2: Use the new code.
* src/Paragraph.cpp (expandLabel): if the labelstring is empty,
	use \thecounter instead; when processing @layout@ tokens, pass the
	process_appendix boolean.

	* src/buffer_funcs.cpp (setLabel):
	* src/insets/InsetFoot.cpp (updateLabels): 
	* src/insets/InsetCaption.cpp (updateLabels): use
	Counters::theCounter.

	* src/insets/InsetBibitem.cpp: remove the ad-hoc numbering code
	and replace it with a proper updateLabels-based solution.

	* src/insets/InsetCommands.cpp (refresh): new method.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19603 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-16 11:12:56 +00:00
Jean-Marc Lasgouttes
88177a89cb The counters labelstring patch. Part 1: the infrastructure.
* src/Counters.cpp (Counter::labelString/labelStringAppendix): new
	accessors for two new variables
	(Counter::setMaster): removed
	(Counter::Counter): add a version with arguments.
	(Counters::newCounter): add relevant arguments; allow to redefine
	an existing counter.
	(Counters::reset): reset the current float float.
	(Counters::theCounter): return a representation of a given counter
	using its labelstring or by default \themaster.\arabic{counter}.
	Handle appendix too.
	(Counters::counterLabel): add support for macros of the form
	\thecounter. 

	* src/TextClass.cpp (readCounters): also read LabelString and
	LabelStringAppendix. 
	(readFloats): allow to update an existing float; create the
	counter associated with the float.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19602 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-16 11:07:00 +00:00
Richard Heck
5bb22d9498 Re-write of the BibTeX representation. The main change is that we now have
a structure representing field->value instead of just a single string with
all the data. The data structures are defined in src/Biblio_typedefs.h, and
the main changes are to the parser code in src/insets/InsetBibtex.cpp.

-src/Biblio_typedefs.h
 Contains typedefs for new representation. Separating them out limits how much 
 gets #include'd by other files, and also resolves a circularity problem with
 Buffer.h.

-src/Biblio.{h,cpp}
 Signature changes and massive simplifications to routines that report
 BibTeX data, since we now have an articulate representation.

-src/insets/InsetBibtex.{h,cpp}
 Re-write the parser code so we store a key->value map of the BibTeX data
 rather than just one long string. This is the main work.

-src/frontends/controllers/ControlCitation.{h,cpp}
-src/insets/InsetBibitem.{h,cpp}
-src/insets/InsetCitation.cpp
 Adaptations and simplifications.

-src/insets/Inset.h
-src/Buffer.{h,cpp}
-src/insets/InsetInclude.{h,cpp}
 Signature changes.

-src/Makefile.am
-development/scons/scons_manifest.py
 Add src/Biblio_typedefs.h


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19598 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-16 01:59:20 +00:00
Enrico Forestieri
3f35b50b05 Fix tex2lyx linking
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19597 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-16 01:18:55 +00:00
André Pönitz
de137b3013 fix client linking
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19596 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-15 23:12:45 +00:00
Abdelrazak Younes
bf33e34869 fix signal crash with gcc 3.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19591 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-15 15:13:22 +00:00
Jean-Marc Lasgouttes
9ac7aa9115 compilation fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19590 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-15 13:47:32 +00:00
Abdelrazak Younes
5958daf51b Fix child document labeling (const missing from overloaded updateLabels()).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19589 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-15 12:15:16 +00:00
Abdelrazak Younes
20c7daed31 eol-style to native.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19587 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-15 08:57:58 +00:00
Abdelrazak Younes
eb14ee5e22 * Buffer.cpp: load all child documents in one go where it makes sense. This has the advantage to call updateLabels() only once for the master buffer. We can think of maintaining a child document list in the future.
* Biblio.cpp: fillWithBibKeys(): ditto.

* InsetInclude.cpp: loadIfNeeded(): set the parent name in any case.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19586 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-15 08:55:36 +00:00