Commit Graph

16290 Commits

Author SHA1 Message Date
Richard Heck
d5d665482e This commit changes the way individual LyXModule's are represented, both internally and in the .lyx files. The earlier version represented them by their `descriptive name', e.g., "Endnote" or "Theorems (AMS)", these being the same names used in the UI. This was a mistake, as becomes readily apparent when one starts to think about translating these strings. The modules ought to be represented by their filename, without the extension, just as TextClass's are.
The changes that accomplish this part are in ModuleList.{h,cpp}, configure.py, and the *.module files themselves. This is a format change, and the lyx2lyx is in those files.

By itself, that change would not be major, except for the fact that we do not want the module to be represented in the UI by its filename---e.g., theorems-std---but rather by a descriptive name, such as "Theorems". But that change turns out to be wholly non-trivial. The mechanism for choosing modules was the same as---indeed, was borrowed from---that in GuiCitation: You get a list of modules, and choosing them involves moving strings from one QListView to another. The models underlying these views are just QStringListModels, which means that, when you want to know what modules have been selected, you see what strings are in the "selected" QListView. But these are just the descriptive names, and we can't look up a module by its descriptive name if it's been translated. That, indeed, was the whole point of the change to the new representation.

So, we need a more complicated model underlying the QListView, one that will pair an identifying string---the filename minus the extension, in this case---with each item. This turns out not to be terribly difficult, though it took rather a while for me to understand why it's not difficult. There are two parts:
(i)  GuiSelectionManger gets re-written to use any QAbstractListModel, not just a QStringListModel. This actually seems to improve the code, independently.
(ii) We then subclass QAbstractListModel to get the associated ID string, using the Qt::UserRole slot associated with each item to store its ID. This would be almost completely trivial if QAbstractListItem::itemData() included the QVariant associated with this role, but it doesn't, so there are some additional hoops through which to jump.

The new model, a GuiIdListModel, is defined in the files by that name. The changes in GuiSelectionManger.{h,cpp} make it more abstract; the changes in GuiDocument.{h,cpp} adapt it to the new framework. 

I've also updated the module documenation to accord with this change.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22501 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-12 04:28:12 +00:00
Richard Heck
471cf26b11 New files, anticipating a later commit.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22500 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-12 02:31:32 +00:00
Pavel Sanda
4adf77cf7d Synchronize lfun thematical ordering and func_type.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22499 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-12 00:22:15 +00:00
Uwe Stöhr
54bcdec272 UserGuide.lyx: add a paragraph how to dissolve insets, fixes bug 3687
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22497 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-11 23:39:18 +00:00
Uwe Stöhr
33c95fc07b rename LFUNs math-nonumber and math-number to what they really do,
fixes bug 2608

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22496 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-11 22:45:19 +00:00
Jürgen Spitzmüller
4b799833e7 *** Support for generic sideways floats ***
* src/Buffer.cpp:
	- format is up to 312.
* src/LaTeXFeatures.cpp:
	- add rotfloat.
* src/Insets/InsetFloat.cpp:
	- handle starred and generic sideways floats.
* src/frontends/qt4/FloatPlacement.{cpp,h}:
	- adjust GUI to the new features.
* lib/chkconfig.ltx:
	- add rotfloat
* lib/lyx2lyx/LyX.py:
* lib/lyx2lyx/lyx_1_6.py:
	- add reversion methods for new floats
* lib/lyx2lyx/lyx_1_4.py:
	- add proper reversion method for sideways floats (this was missing).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22495 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-11 18:56:53 +00:00
Jürgen Spitzmüller
97c4feea71 typo.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22494 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-11 18:34:21 +00:00
Pavel Sanda
ac4b0dd692 Start of lfun reordering
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22493 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-11 12:46:12 +00:00
Pavel Sanda
871b6a7245 Preparing for lfun doxy movement
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22492 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-11 12:43:50 +00:00
Pavel Sanda
60c53dcd1e Renaming leftovers
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22491 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-11 12:40:26 +00:00
Richard Heck
a8d2d891ee Wow.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22489 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-11 08:03:48 +00:00
Richard Heck
d226da1559 Fix comment.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22488 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-11 04:44:56 +00:00
Bo Peng
b2278c0736 Make bibtex works with embedded bib file
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22487 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-11 03:57:22 +00:00
Bo Peng
f52b73747f Embedding: saving inzip name to .lyx file so that embedded files can always be found under different operating systems (even lyx versions). yet to be tested under windows
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22486 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 23:39:58 +00:00
Uwe Stöhr
8b3acb7092 stdtoolbars.inc: partly revert r22445
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22483 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 20:57:15 +00:00
Uwe Stöhr
18970a1c69 compile fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22482 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 20:55:52 +00:00
Uwe Stöhr
db088a816d FORMAT: document latest file format change
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22481 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 20:46:05 +00:00
Jürgen Spitzmüller
63c45ec226 * src/insets/InsetCitation.{cpp,h}:
* src/insets/InsetHyperlink.{cpp,h}:
* src/insets/InsetRef.{cpp,h}:
* src/insets/InsetSpace.{cpp,h}:
* src/insets/InsetSpecialChar.{cpp,h}:
	- fix textString member (bug 4472).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22480 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 16:09:01 +00:00
Abdelrazak Younes
a84fa1ce00 Transfer Tab and Shift-Tab keys special handling from GuiView::event() to GuiWorkArea::event(). Add some comments.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22477 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 09:04:30 +00:00
Jürgen Spitzmüller
f585b6ba11 * lib/ui/stdtoolbars.ui:
- disambiguate "Review".

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22476 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 08:54:23 +00:00
Abdelrazak Younes
1406a54420 * CursorSlice::lastpos(): check for text emptiness (should fix a crash when releasing an empty buffer).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22474 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 08:46:04 +00:00
Abdelrazak Younes
50b994b08f * GuiWorkArea::event():
- case ToolTip: don't forget to accept the event!
- Clean up the method in order to extend to other events.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22473 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 08:19:54 +00:00
Richard Heck
098dc1f93b Remove comment.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22472 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 07:30:22 +00:00
Richard Heck
795c729776 Remove layout stuff made obsolete by modularization.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22471 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 07:24:53 +00:00
Richard Heck
9f8bf4c9da Dummy format change for AMS modularization.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22470 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 07:22:43 +00:00
Richard Heck
4aea2f6a73 More tweaks, and some fixes for missing files in the makefiles, while we're at it.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22469 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 07:19:07 +00:00
Richard Heck
736418751a AMS module tweaks.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22468 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 07:13:01 +00:00
Richard Heck
b258ae2d26 Move stuff around.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22467 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 06:34:33 +00:00
Richard Heck
5f91f39309 We do not need to update just because the class has been changed.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22466 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 06:22:42 +00:00
Richard Heck
9229dd9371 Compile fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22465 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 06:07:34 +00:00
Richard Heck
b4341a8dae Minor tweaks, and a new module for unnumbered theorems only.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22464 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 05:14:12 +00:00
Richard Heck
e66ced0383 File no longer needed.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22463 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 05:01:36 +00:00
Richard Heck
8d541e3675 Fix comments. Other credits are in other files.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22462 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 05:00:11 +00:00
Richard Heck
f5a5be4d18 Modularization of the AMS classes, and the theorem environments generally.
This is Part I: The changes to the layout files and modules. Part II, still
to come, will involve lyx2lyx to help people who were using the older classes.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22461 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 04:58:20 +00:00
Richard Heck
34bce8b33e amsthm support.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22460 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 04:14:22 +00:00
Richard Heck
3112bed419 Fix layout2layout.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22459 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 03:59:39 +00:00
Richard Heck
5faad9ca68 Additional UI logic related to module requires and excludes.
The logic here is really kind of a mess. If anyone can make it
simpler, I'd be thrilled.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22458 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 01:33:24 +00:00
Richard Heck
78cc57cd5a Fix copy-paste errors.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22457 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-09 23:06:16 +00:00
Richard Heck
7c28905b17 This commit adds some new functionality to the modules stuff. In particular, it introduces the concept of "required" and "excluded" modules: A given module may require one of some list of modules, or it may be incompatible with some other modules. (Complex Boolean combinations are not supported!!) These facts can be noted in the module file, and the UI responds appropriately: Required and excluded modules are noted in the description, and the "Add" button is enabled only if at least one of the required modules has already been selected and no excluded module is selected. Getting this to work involved a fair bit of cleanup of the existing code---including ways Angus, I think, had already pointed out were required---and also involved changing the syntax of the headers of the module files, but in ways that are probably best anyway.
None of the extant modules require any other modules, but the Theorem modules all exclude one another. (See the screenshot.) When I modularize the AMS classes---that is the next task---we'll have requires.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22456 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-09 18:51:02 +00:00
Richard Heck
e975835530 Make this more explicit.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22455 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-09 18:45:48 +00:00
Jean-Marc Lasgouttes
6e24d9c49d update japanese l10n
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22454 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-09 14:41:32 +00:00
Pavel Sanda
6be5a0cf52 Add ParIterator FIXME.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22453 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-09 13:14:14 +00:00
Abdelrazak Younes
a82d158e0c Remove archaeological work around scrollbar insanity.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22452 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-09 09:54:39 +00:00
Richard Heck
85ac3f0dc4 More whitespace.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22451 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-09 07:19:26 +00:00
Richard Heck
b84e210719 What happened to the whitespace?
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22450 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-09 07:18:41 +00:00
Bo Peng
7ecfcc9108 Embedding: fix a crash when extracting InsetInclude
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22449 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-09 05:11:16 +00:00
Bo Peng
b5153b3d26 Embedding: merge lyx::EmbeddedFiles to lyx::support::EmbeddedFileList
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22448 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-08 18:55:34 +00:00
Uwe Stöhr
b99297b2c2 stdtoolbars.inc: rearrange integral icons to avoid the impression that \intop is the default. \int is the default and also usual.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22445 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-08 18:40:39 +00:00
Bo Peng
c20f5a64d9 Embedding: simplify the interface of EmbeddedFiles, which will be later merged to EmbeddedFileList
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22444 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-08 18:33:43 +00:00
Bo Peng
52cd35cd5f Embedding: add embedding support for InsetBibtex. (params["embed"] is added, use EmbeddedFileList instead of FileNameList for bibtex handling, use checkable items in GuiBibtex)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22443 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-08 17:02:09 +00:00