Richard Heck
2b3bd7b5f4
This is the last of the commits that hopes to enforce the distinction between "layout files" and "document classes" that was introduced by the modules code. For the most part, these changes just refactor code from TextClass between: (a) a TextClass base class; (b) a LayoutFile subclass, which represents the information in a .layout file; and (c) a DocumentClass subclass, which represents the layout information associated with a Buffer---a LayoutFile plus Modules. Methods from TextClass have been apportioned between the three classes depending upon what is needed where, and signatures have been changed where necessary so that the right kind of class is required.
...
At this point, there are no simple TextClass objects in the main LyX code, and it is impossible to create them, since the TextClass constructor is protected. Only LayoutFile and DocumentClass objects can be constructed, and for the most part these are constructed only by their respective containers: BaseClassList and DocumentClassBundle. There is an exception: LayoutFile does have a public default constructor, but if anyone knows how to make it go away, please do.
There will be one or two more commits along these lines, but these will be simple renamings. For example, BaseClassList should be LayoutFileList.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23343 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-29 02:45:33 +00:00
Richard Heck
2c382f2f47
More work towards type safety regarding TextClass's. A couple bugs have been fixed here, too, discovered along the way.
...
Note that we no longer rely upon BaseClassList to be sorted. This would allow layout descriptions---such as "article (AMS)"---to be translated, and the ordering of the list in Document>Settings will then follow the translations.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23334 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-28 21:04:55 +00:00
Abdelrazak Younes
0e67e8423f
GuiApplication::notify(): fine tune ErrorException handling; close all windows before showing the alert. This should get rid of the recursive alert box when an the exception is caught.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23333 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-28 20:40:55 +00:00
Edwin Leuven
eb84ab1af9
set parent
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23327 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-28 16:14:26 +00:00
Richard Heck
224e6ad0a3
baseclasslist --> BaseClassList singleton. Prep for further type safety.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23322 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-28 14:49:01 +00:00
Stefan Schimanski
5d0e49d4dc
* fix a memory corruption due to sligtly different semantics of btree iterators:
...
// We use the key() method here, and not something like it->first
// because the btree only returns (iterator-) temporary value pairs.
// If we returned the first component of those here, we get an
// invalid reference and therefore strange crashes.
return it.key();
* This should fix the completion for Windows users hopefully.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23321 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-28 14:46:47 +00:00
Stefan Schimanski
7ff4b67487
* the longest completion does not depend on the competion.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23317 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-28 12:43:56 +00:00
Stefan Schimanski
93d8667d39
* only remember the last selection if it didn't come by the cursor completion indicator
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23316 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-28 12:43:24 +00:00
Stefan Schimanski
7271db36c5
* resorted completion options. Now by text and math.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23314 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-28 12:42:34 +00:00
Stefan Schimanski
399ef7f80c
* small indicator in the cursor to show that a completion is available by pressing tab
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23313 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-28 12:41:57 +00:00
Stefan Schimanski
7e2c8ea4ff
* completion cursor
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23312 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-28 12:41:43 +00:00
Stefan Schimanski
0ca318af55
* cosmetic
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23311 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-28 12:41:33 +00:00
Pavel Sanda
180eb073b2
Fullscreen fixes (multiple windows & toolbar visibility).
...
Workaround for http://bugzilla.lyx.org/show_bug.cgi?id=4588 .
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23309 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-28 11:19:19 +00:00
Enrico Forestieri
268dce39b4
Fix crash on cygwin with completion in text mode.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23308 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-28 10:28:10 +00:00
Richard Heck
d8a6b5bfd0
Remove TextClassPtr without losing the type safety it provided.
...
See these threads:
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg136112.html
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg136062.html
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg135997.html
for some background.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23299 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-28 01:42:02 +00:00
André Pönitz
54e314c826
cosmetics
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23293 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-27 22:23:12 +00:00
Pavel Sanda
f8ba8db758
Fullscreen mode fixes:
...
- tabbar & frames respect fullscreen mode when adding/removing new tab.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23291 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-27 21:04:33 +00:00
Abdelrazak Younes
39ccaa2ea7
Add list of labels. If I have the time and energy the next step is to cleanup the cross-reference lookup so that we can integrate the cross references in the tree, hence the name "Labels and References".
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23282 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-27 15:23:22 +00:00
Abdelrazak Younes
8c8ff137da
Get rid of 'quitting' global variable. It is not needed anymore because all windows are closed in order now and the frontend/core is properly separated.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23280 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-27 12:30:41 +00:00
Abdelrazak Younes
3128c45b24
GuiView ctor: wrong property!
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23279 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-27 11:56:36 +00:00
Abdelrazak Younes
3ab0bcbf12
typo
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23278 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-27 11:45:43 +00:00
Abdelrazak Younes
1d163f25d9
Comment out setQuitOnLastWindowClosed() call.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23277 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-27 11:44:37 +00:00
Abdelrazak Younes
b39e9e6c8e
* GuiView: Make use of the default settings WRT last window closed and app quiting.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23276 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-27 11:35:12 +00:00
Abdelrazak Younes
7ca1eacac1
Fix http://bugzilla.lyx.org/show_bug.cgi?id=4498
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23275 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-27 11:23:41 +00:00
Abdelrazak Younes
8446d3dbfc
Get rid of LyXFunc::closeBuffer()
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23274 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-27 11:05:58 +00:00
Abdelrazak Younes
9940ca7730
Cleanup app quitting and window closing now that there is a clean separation between the frontend and the core.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23271 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-27 10:35:28 +00:00
Stefan Schimanski
d0de0f53ef
* set the column with in the popup before showing it. Then it even works.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23261 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-26 19:20:23 +00:00
Stefan Schimanski
eb86fb460e
* escape hides the completion
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23258 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-26 19:19:34 +00:00
Abdelrazak Younes
d1511fcb47
* GuiView::closeEvent(): adjust buffer closing WRT multi-view and child documents.
...
- a child document is kept loaded in any case. It is saved if needed before being hidden.
- a document which is not viewed in another window is closed now.
- we do nothing for documents that are also viewed in another window. There is two FIXME related to this last item in the code:
// FIXME 1: should we put an alert box here that the buffer
// is viewed elsewhere?
// FIXME 2: should we try to save this buffer in any case?
//saveBuffer(b);
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23250 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-26 14:15:32 +00:00
Stefan Schimanski
83ae753214
* undeflow fix for i == -1
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23249 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-26 13:46:54 +00:00
Stefan Schimanski
924ed25c61
* factored out hidePopup and hideInline
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23248 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-26 13:10:04 +00:00
Stefan Schimanski
eb2e971f6a
* "show popup without delay"-checkbox was missing a connect
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23247 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-26 13:09:44 +00:00
Stefan Schimanski
2c62c9d91c
* don't show inline if the user did not want it, even when using the popup
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23245 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-26 13:08:52 +00:00
Stefan Schimanski
cd5bad62e0
* paragraph support for the global word list. To make it buffer
...
dependent, we need the buffer pointer. In fact we already have a
pointer to the text inset. So as soon as inset know their buffer we
can easily switch to a buffer local word list.
* there might be missing some more places to update the words from a
buffer, like for example after backspace or more important when the
cursor leaves a paragraph.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23244 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-26 13:07:59 +00:00
Stefan Schimanski
7c5d585c84
* binary search can be tricky. I hope I got it right now.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23230 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 15:09:45 +00:00
Abdelrazak Younes
962fdc2923
Change CompletionList::data() signature and cosmetics.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23226 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 13:11:09 +00:00
Stefan Schimanski
32f9f03ebc
* fix for binary search if string was not found
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23225 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 13:08:51 +00:00
Stefan Schimanski
ff2e0db6c2
* fix longest prefix algorithm for sorted models: commonPrefix(...) returns the length, not the prefix.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23217 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 02:09:39 +00:00
Stefan Schimanski
b78dbb5999
* special faster algorithms for sorted completion lists
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23212 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 01:56:30 +00:00
Stefan Schimanski
c3bdbe38d7
* implemention of the WordList with iterator caching for a std::set string list.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23210 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 01:55:50 +00:00
Richard Heck
5a45ef653b
Improve comment.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23201 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-24 22:42:27 +00:00
Richard Heck
d667f7463e
Doxy bit.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23200 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-24 22:40:34 +00:00
Richard Heck
4c6180d209
Try to make the distinction between base classes and text classes clearer in the code.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23198 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-24 16:59:49 +00:00
Richard Heck
69de04feac
Restore Andre's TextClassIndex, but now in the form of BaseClassIndex. It seems worth distinguishing more clearly than we do at the moment between TextClass's and BaseClass's. The latter correspond to *.layout files; the former are based upon *.layout files but may be modified by modules.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23197 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-24 16:29:40 +00:00
Richard Heck
c7afa2d658
More cleanup from Andre.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23194 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-24 15:44:11 +00:00
Richard Heck
ebd4f002af
Andre's s/getBaseClass/baseClass/ cleanup.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23191 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-24 15:12:41 +00:00
Richard Heck
0362c6aae7
Andre's s/getTextClass/textClass/ cleanup.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23190 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-24 15:06:35 +00:00
Richard Heck
2e7d1199df
Revert 23154.
...
Sorry, Andre, but this broke not only the modules stuff but the general handling of TextClasses. I'm not opposed to doing this sort of thing, but it's going to be a little more complicated. I'll do it when I get a bit of time, or I can explain what the issue is here if you want to do it.
I'll separately re-commit some of the cleanup here.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23189 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-24 14:59:23 +00:00
Stefan Schimanski
b313333c1a
* setItemDelegate does not free the old delegate. So we better only create one instance and reuse that.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23172 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-24 00:49:57 +00:00
Richard Heck
14b7f34818
Fix drawing error on Linux, apprently caused by creation of static global instance of QItemDelegate. Fix due to STS.
...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23171 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-24 00:38:54 +00:00