Commit Graph

4104 Commits

Author SHA1 Message Date
Peter Kümmel
e5cf6e8566 remove recursive call
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20159 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-08 21:00:03 +00:00
Bo Peng
b0d904a2cc Dock the Embedding dialog (code copied from the ViewSource dialog and I do not really know what I am doing)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20156 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-08 20:04:28 +00:00
André Pönitz
7510c9f39d remove duplicate entry for Dialog.cpp in Makefile.am
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20155 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-08 19:45:45 +00:00
Bo Peng
2436921050 add missing header file
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20154 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-08 19:22:41 +00:00
Abdelrazak Younes
d69238ae62 remove dead code.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20151 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-08 17:48:14 +00:00
Abdelrazak Younes
9e3823945a Restore docked outline widget. Warning: still instable!
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20147 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-08 17:28:14 +00:00
Abdelrazak Younes
48901a7dc6 Dialog::name() is not really needed.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20146 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-08 16:53:54 +00:00
Abdelrazak Younes
133041073b header cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20145 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-08 16:36:53 +00:00
Abdelrazak Younes
9ad3cebbc7 oups...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20144 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-08 16:32:11 +00:00
Abdelrazak Younes
252b170b6d fix view source window title.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20143 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-08 16:31:28 +00:00
Abdelrazak Younes
f044fc3dd0 Restore docked View source widget.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20142 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-08 16:04:25 +00:00
Bo Peng
cf84439502 Embedding: use a vector to store multiple ParConstIterator of multiple insets referring to the same embedded file, polish the internal logics of EmbeddedFile(s)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20137 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-08 04:10:43 +00:00
Bo Peng
e9a2729037 Embedding: bring embedding dialog back to shape
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20129 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-07 16:33:55 +00:00
Enrico Forestieri
92065820e5 Register math fonts with Qt 4.2 or higher. Using Qt 4.1, the old
xft-fonts package is still required. However, on *nix there seem
to be no way to tell fontconfig to prefer our fonts instead of
others matching the requirements, so, in case of conflict, the
fontconfig files should be manually adjusted, or some existing
font package used (note that the quality of the bakoma fonts is
better than that of the xft ones). There is no such problem on
Windows where our private fonts are always preferred over the
installed ones (and I hope the same holds true for Mac).

	* src/LyX.cpp
	(LyX::exec): don't call addFontResources() and restoreFontResources()
	anymore, as the frontend code will do the job.

	* src/frontends/qt4/GuiFontLoader.{cpp,h}
	(GuiFontLoader::GuiFontLoader): register math fonts with Qt.
	(GuiFontLoader::~GuiFontLoader): unregister math fonts.

	* src/support/os.h
	* src/support/os_unix.cpp
	* src/support/os_win32.cpp
	* src/support/os_cygwin.cpp:
	remove code dealing with fonts.

	* configure.ac: don't check for fontconfig headers anymore.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20128 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-07 16:22:05 +00:00
Bo Peng
fc2f8c8e4f Embedding: remove AUTO feature, remove STATUS from embedding dialog
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20120 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-07 03:10:42 +00:00
Bo Peng
d4a2219813 Embedding: remove AUTO feature, barely make it compile
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20119 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-07 03:02:24 +00:00
André Pönitz
665119e4f6 simplify About dialog
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20088 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-05 22:54:47 +00:00
André Pönitz
5c8f9bc525 compile fix. inclomplete transactioN???
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20078 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-05 20:52:35 +00:00
André Pönitz
c9ea6e6eef the fun begins....
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20077 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-05 20:33:29 +00:00
Edwin Leuven
9044e9d68a resuscitate menus
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20064 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-05 11:55:03 +00:00
Enrico Forestieri
b66091dfd4 Compile fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20051 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-04 21:44:52 +00:00
Peter Kümmel
9ecadac14d GuiView is a template
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20046 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-04 18:40:58 +00:00
Peter Kümmel
9862ca834e move getSecond to frontend_helpers.h
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20044 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-04 18:35:58 +00:00
Edwin Leuven
f427215caf lil' cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20042 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-04 18:08:51 +00:00
Bo Peng
3611b0ff33 Embedding patch 4: interaction between buffer and the embedding dialog. Emit embeddingChanged signal to update the embedding dialog.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20038 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-04 14:34:42 +00:00
Edwin Leuven
39ee5b3fb2 renaming of some methods that hurt the eyes + removal of:
- column and row count, 
- tabular width and method that goes with it
- method declaration without implementation: void delete_column(col_type)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20032 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-04 10:52:08 +00:00
André Pönitz
9a95d2a936 rename a few view functions from foo() to fooView()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20024 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-03 20:28:26 +00:00
Bo Peng
cec37055da Fix scons for Andre's patch, add a missing header file
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20023 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-03 20:13:26 +00:00
André Pönitz
ff3b32e8b7 move stuff from a class template to a ordinary class...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20022 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-03 18:22:17 +00:00
Edwin Leuven
f3870fccc0 make lyx compile
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20020 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-03 13:01:38 +00:00
André Pönitz
9f88315d52 fix thinko
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20019 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-03 06:11:51 +00:00
André Pönitz
212386be8a merge ButtonController and its view (Qt2BC in this case)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20018 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-03 05:59:32 +00:00
Bo Peng
c247f0ffe0 Embedding: fix a few embedding bugs
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20017 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-03 04:03:43 +00:00
Edwin Leuven
80a05b1eb5 get rid of (cyg)win path panel in prefs by moving it to the latex panel
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20013 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-02 20:17:36 +00:00
Alfredo Braunstein
a00ef3ff93 crash fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20012 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-02 19:54:01 +00:00
Richard Heck
9f2848f4f7 Another compile fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20006 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-02 14:57:30 +00:00
Richard Heck
398f5f7b6c Compile fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20003 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-02 14:48:49 +00:00
Abdelrazak Younes
af06ed5ff1 Transfer current_font and real_current_font from Text to Cursor.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19999 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-02 13:35:48 +00:00
André Pönitz
904fd84bba all CheckedWidgets are line edits...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19988 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-02 08:19:43 +00:00
André Pönitz
dd7059d798 simplify ButtonPolicy machinery
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19987 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-02 07:53:07 +00:00
Bo Peng
f8422ebb00 Embedding: fix a file selection and a file copy bug
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19986 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-02 05:36:39 +00:00
André Pönitz
0fa9160767 forgot this
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19982 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-01 21:05:31 +00:00
Bo Peng
044d958788 Embedding dialog: use two buttons (will have more) for the actions
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19981 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-01 20:48:51 +00:00
André Pönitz
af8621ea73 merge GuiBC<.,.> into Qt2BC
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19979 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-01 20:44:14 +00:00
Bo Peng
a7e45a7376 Embedding dialog: add extract and extractAll functions
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19977 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-01 20:08:16 +00:00
Abdelrazak Younes
aef5a7b9f7 comment out debug info.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19969 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-01 09:26:37 +00:00
Bo Peng
7a6edab5c1 Embedding: add 'addFile' to embed arbitrary file, fix a few bugs along the way
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19967 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-01 04:20:34 +00:00
Richard Heck
d7a33bc841 This patch continues 19964. It takes advantage of the work there to simplify a few things elsewhere. First, in ControlDocument::dispatchParams(), we're setting the TextClass and then dispatching the BufferParams, which sets it again now. So we can get rid of the first call. This, however, requires loading the TextClass somewhere other than LFUN_TEXTCLASS_APPLY, which I do in BufferParams::setBaseClass(), which is when you'd actually need to do it. So I've moved some of the loading logic there. (It seemed a good idea to make setBaseClass() return whether it was successful, then, though this isn't used at the moment.)
That makes another simplification both possible and desirable. For some reason, whenever you change the Document Class combobox in Document Settings, LyX tries to read whatever you choose _before_ you try to hit "Apply". Why? I see no good reason. You get the warning earlier that way, but maybe you weren't going to try to load it anyway and were going to change your mind. So I have removed that behavior, in which case you'll get the warning when you try to apply the parameters. This means we can also remove ControlDocument::loadTextclass().

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19965 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-01 04:03:24 +00:00
Bo Peng
9ff98fb5bc Fix compiling error caused by Andre's patch.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19963 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-01 02:43:14 +00:00
André Pönitz
d5483e3551 somewhat more uniform naming
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19962 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-31 22:37:05 +00:00
André Pönitz
fc36725282 Merge QController into individual dialogs. Also various cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19961 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-31 22:16:11 +00:00
Bo Peng
e4e09c4b0b Embedding: small adjustments of interfaces, single and double click in the embedding dialog
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19960 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-31 22:02:34 +00:00
André Pönitz
7bf090853f fix make dist
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19958 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-31 18:30:23 +00:00
André Pönitz
5f21448516 fix typo
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19957 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-31 18:16:50 +00:00
Bo Peng
cc6fe67c35 Embedding feature patch 3: basic gui support
*  lib/ui/stdmenus.inc: add menu item embedded files
	*  src/BufferParams.cpp: set default embedded status to false
	*  src/EmbeddedFiles.h|cpp: add a few member functions
	*  src/frontends/qt4/Dialogs.cpp: add embedding dialog
	*  src/frontends/qt4/GuiEmbeddedFiles.h|cpp: embedding dialog
	*  src/frontends/qt4/ui/EmbeddedFilesUi.ui: embedding dialog
	*  src/frontends/controllers/ControlEmbeddedFiles.h|cpp: embedding dialog control
	*  src/frontends/qt4/Makefile.am: build system update
	*  src/frontends/controllers/Makefile.am
	*  development/scons/scons_manifest.py


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19953 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-31 15:42:35 +00:00
Martin Vermeer
b779dbc683 Fix ambiguity in translation
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19943 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-31 11:09:46 +00:00
André Pönitz
a1cec91afa move our stuff off the Q* namespace
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19935 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-31 05:53:55 +00:00
André Pönitz
edd3e65556 compile fiz
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19923 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 20:14:33 +00:00
André Pönitz
f82c3e8e65 xpm -> png
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19922 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 20:09:12 +00:00
Edwin Leuven
d927e69716 single depth for preference items,
fixes bug http://bugzilla.lyx.org/show_bug.cgi?id=4153

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19914 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 14:22:56 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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