Commit Graph

1042 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
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
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