Commit Graph

2778 Commits

Author SHA1 Message Date
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
6fab0b0804 Cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23192 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-24 15:18:39 +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
André Pönitz
e05e2b6b19 (temporarily) add a Buffer * Inset::buffer_ membert
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23170 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-23 22:32:33 +00:00
Richard Heck
8e9410b3d0 After a hiatus, I'm returning to the rewrite of InsetCommandParams, the purpose of all of this being to make things more flexible, with the ultimate goal being biblatex support and a kind of InsetCommandFlex that will allow user-definable such things. The next step, really, is to fix up CiteEngine so that we can have different sets of parameters for InsetCitation depending upon what engine is in use. (Something like this also needs doing with InsetInclude.)
This patch reworks the machinery that holds information about what parameters there are and what their values are. There's enough flexibility here that true keyval support ought to be fairly easy at this point. I'll have a peek at that shortly.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23168 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-23 22:01:02 +00:00
Stefan Schimanski
323e3b0207 * Moved std::sets out of Buffer.h to reduce overall LyX compile time
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23163 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-23 18:11:35 +00:00
André Pönitz
0fb8f3fba1 mostly s/Paragraph::layout(...)/Paragraph::setLayout(...)/
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23159 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-23 16:45:38 +00:00
André Pönitz
b306e9a2e1 Replace the text class shared ptr by good old index-into-global-list.
Also a few cosmetical changes where I xould not resist.

Would be nice if the 'modules people' could verify that their baby 
is strill alive... 



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23154 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-23 11:36:15 +00:00
Richard Heck
0e48a81cc1 Cosmetics.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23153 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-23 03:48:57 +00:00
Stefan Schimanski
b7782d1973 * cleaned up word dimension calculation of completion. There is still a bug with RTL which moves the popup to left when completing.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23151 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-23 03:15:05 +00:00
Stefan Schimanski
8c2149d3aa * following Andre's advice to rename the method into
createCompletionList. This makes the ownership of the returned
  object clear.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23143 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-22 21:11:19 +00:00
Stefan Schimanski
67a9667232 * comments
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23141 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-22 20:45:42 +00:00
Stefan Schimanski
8527a08903 * simplify notifyCursorLeaves logic: We now only call it from strategic
places, i.e.
  - BufferView::setMouseCursor,
  - BufferView::mouseEventDispatch
  - LyXFunc::dispatch
  Before it was called from several dispatch handlers in the middle of the
  dispatch process. Because the cursor might get invalidated, this is
  not a good idea. We had plenty of crashes and odd behaviours because
  of this as nobody really understood those cases.

  This fixes (at least) #2069 and #4163.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23140 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-22 20:45:18 +00:00
Richard Heck
3257f3e066 Line length.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23137 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-22 16:26:40 +00:00
Richard Heck
2812202c2b Move the enum into InsetLayout.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23136 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-22 16:24:55 +00:00
Richard Heck
2c357c1d23 This should be the last of the commits refactoring the InsetLayout code.
This one just moves the Decoration enum into InsetLayout, changing the names
to avoid possible conflicts now that it is in the lyx namespace.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23135 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-22 16:15:21 +00:00
Richard Heck
561466d45d Sort table.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23134 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-22 16:12:36 +00:00
Stefan Schimanski
ab6ec965fd * stdlib-debug out of range fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23120 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-22 09:00:22 +00:00
Richard Heck
7889ccc0eb More headers.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23119 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-22 03:39:10 +00:00
Richard Heck
b032a9d7ba Headers.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23118 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-22 03:34:03 +00:00
Richard Heck
20cf42b741 This is the second commit in the process of making InsetLayout a real class.
Here, we move TextClass::readInsetLayout() to InsetLayout::read().


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23117 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-22 03:27:42 +00:00
Richard Heck
a8317afc4b This is the first of a series of commits that will make InsetLayout a real class.
In this commit, we do the minimal amount of work necessary to protect our data.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23116 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-22 02:32:52 +00:00
Stefan Schimanski
7fd88683b9 * typo
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23115 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-21 23:38:46 +00:00
Stefan Schimanski
6eb72bd1f2 * Reduce compilation time by removing the shared_ptr (which is not
really important because the ownership of the CompletionLists is
  easy enough) and by removing the deque for the half finished
  favorites implemention in InsetMathNest. I think this fits better
  into the GuiCompleter anyway.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23114 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-21 23:36:02 +00:00
Abdelrazak Younes
45bcfce52d compile fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23113 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-21 22:39:46 +00:00
Richard Heck
dde5b63fd5 Cosmetics. And silence some warnings.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23110 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-21 20:04:17 +00:00
Stefan Schimanski
833f0bab52 * minimize redraws during completion
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23105 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-21 19:43:16 +00:00
Stefan Schimanski
1bf7b59d60 * completion infrastructure
* completion support for mathed
* experimental completion support for text


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23104 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-21 19:42:34 +00:00
Richard Heck
a51525c416 Add empty InsetLayout for undefined cases. Should avoid possible bugs caused by empty layout_ pointer in InsetCollapsable.
NOTE: Some cleanup is needed here, and I'll do it shortly. Doing it properly, though, requires making InsetLayout a proper class. (At the moment, it's just a C-style struct.) That should be committed separately.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23103 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-21 16:31:59 +00:00
Richard Heck
0902821097 Fix crash by setting Layout before calling InsetText::read().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23081 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-20 16:56:33 +00:00
Abdelrazak Younes
f0b51ef8c9 Various small cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23064 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-19 09:10:59 +00:00
Richard Heck
7dcffe09f4 It used to be that things like InsetFlex, InsetCaption, and the like used the default layout, whatever that is---usually Standard. That gave rise to bug 2178, the solution to which is to define a new empty layout, which insets like these use instead of the default. See r22966.
So, when we have an older LyX file, it will look like this:
\begin_inset ERT
status open

\begin_layout Standard

this that
\end_layout

\end_inset
which is now invalid, because ERT uses only PlainLayout. So I had put some code into Text::readParToken, where the layout for a paragraph gets set as it is read:
       if (par.forceEmptyLayout()) {
           // in this case only the empty layout is allowed
           layoutname = tclass.emptyLayoutName();
       } else if (par.useEmptyLayout()) {
           // in this case, default layout maps to empty layout
           if (layoutname == tclass.defaultLayoutName())
               layoutname = tclass.emptyLayoutName();
       } else {
           // otherwise, the empty layout maps to the default
           if (layoutname == tclass.emptyLayoutName())
               layoutname = tclass.defaultLayoutName();
       }
This turns out not to work, because par.forceEmptyLayout() and par.useEmptyLayout() always return false here, because par.inInset() always returns a null pointer, because the paragraph's inset hasn't yet been set when Text::readParagraph() gets called from Text::read() gets called from InsetText::read(). The solution is to set the paragraph's inset when it is created, which means passing a pointer to the various read() routines along the way.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23057 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-19 02:35:07 +00:00
Abdelrazak Younes
2bf1c09376 header cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23049 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-18 07:14:42 +00:00
Abdelrazak Younes
8d5bcad767 header cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23046 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-17 20:17:33 +00:00
Abdelrazak Younes
cabae2b079 cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23024 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-15 14:30:08 +00:00
Jürgen Spitzmüller
fa10443c54 * src/insets/InsetTabular.cpp:
- fix check for top- and bottomlines (rev. 23011).
	  topLine and bottomLine take a cell argument, not a row.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23020 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-15 11:36:05 +00:00
Abdelrazak Younes
c3a8b3a566 * Inset: Prepare for an eventual merge of updateLabels() and addToToc()
* TocBackend: add non const toc() and tocs() access methods.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23018 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-15 10:13:32 +00:00
Abdelrazak Younes
5b7eb343ec InsetFoot::updateLabels(): fix potentially dangerous bug.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23017 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-15 09:41:53 +00:00
Abdelrazak Younes
d8ee26ec6c * InsetXXX::addToToc(): properly use passed ParConstIterator.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23015 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-15 08:39:58 +00:00
Abdelrazak Younes
0a64dfa594 * ParConstIterator::push_back(): new method for easier iterative construction.
* InsetCaption::addToToc(): use that.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23014 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-15 08:32:27 +00:00
Uwe Stöhr
82984ec711 InsetTabular.cpp: revert the \bottomline fix from the previous commit because it inly works for certain cases. (I'm running out of ideas to fix this for all case, see http://bugzilla.lyx.org/show_bug.cgi?id=4554#c6 )
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23012 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-15 01:28:46 +00:00
Uwe Stöhr
c9329d272b InsetTabular.cpp: check for top and bottom lines, fixes http://bugzilla.lyx.org/show_bug.cgi?id=4554
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23011 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-15 00:28:42 +00:00
Abdelrazak Younes
1a4891dec0 InsetNote::addToToc(): Stupid Bug fix causing crash on Mac.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23004 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-14 15:29:22 +00:00
Abdelrazak Younes
b0b7fbad8e InsetText::draw() Painting tweaks; reduce the frame by two pixels.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22998 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-14 08:24:52 +00:00
Abdelrazak Younes
f30f4129e9 * InsetNote::addToToc(): Prefix toc entries with note type.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22997 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-14 07:30:33 +00:00
Richard Heck
14d7b57487 Cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22996 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-14 07:10:12 +00:00
Richard Heck
10476b2264 Protect our data.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22995 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-14 05:28:59 +00:00
Richard Heck
485478e47c Do not inherit from std::map.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22993 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-14 05:00:54 +00:00
Richard Heck
b9670d7209 Fix previous commit.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22990 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-14 03:49:12 +00:00
Richard Heck
3dc5bc09dd Make sure we write a valid file even if InsetFlex is undefined.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22989 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-14 03:42:54 +00:00
Richard Heck
ada361baf8 Warnings
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22987 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-14 03:35:03 +00:00
Abdelrazak Younes
eb8468994f Add list of Marginal Notes.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22976 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-13 13:33:56 +00:00
Abdelrazak Younes
6c14a1c406 Add list of Indexes.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22975 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-13 13:19:39 +00:00
Dov Feldstern
ea3dce8c69 fix r22935, which was an attempt to fix a bug of mine in r22929.
This brings things back to the way they were (semantically) before r22929, 
which is the way they should be (visual mode has not been implemented for
tables, yet, and therefore tables should not be semantically changed here).


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22967 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-12 20:58:12 +00:00
Richard Heck
040f3431e7 Fix bug 4037 and related problems. The patch has been cleaned up a bit
from the one posted to the list.

The basic idea has two parts. First, we hard code an "empty layout"
(called PlainLayout, for want of a better name) in TextClass and read it
before doing anything else. It can therefore be customized by classes,
if they want---say, to make it left-aligned. Second, InsetText's are
divided into three types: (i) normal ones, that use the "default" layout
defined by the text class; (ii) highly restrictive ones, such as ERT and
(not quite an inset) table cells, which demand the empty layout; (iii)
middling ones, which default to an empty layout and use the empty layout
in place of the default. (This is so we don't get the same problem we
had with ERT in e.g. footnotes.) The type of inset is signaled by new
methods InsetText::forceEmptyLayout() and InsetText::useEmptyLayout().
(The latter might better be called: useEmptyLayoutInsteadOfDefault(),
but that's silly.) The old InsetText::forceDefaultParagraphs() has been
split into these, plus a new method InsetText::allowParagraphCustomization(). 
A lot of the changes just adapt to this change.

The other big change is in GuiToolbar: We want to show LyXDefault and
the "default" layout only when they're active.

There are a handful of places where I'm not entirely sure whether we
should be using forceEmptyLayout or !allowParagraphCustomization() or
both. The InsetCaption is one of these. These places, and some others,
are marked with FIXMEs, so I'd appreciate it if people would search
through the patch and let me know whether these need changing. If they
don't, the FIXMEs can be deleted.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22966 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-12 17:31:07 +00:00
Richard Heck
969a998f8b Tranlatable strings.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22965 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-12 16:41:49 +00:00
Martin Vermeer
6820d18e11 Tooltips for collapsables and branches
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22956 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-12 09:11:06 +00:00
Richard Heck
feae27d3ce Better error messages.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22948 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-11 19:42:36 +00:00
Abdelrazak Younes
4068d50058 Fix List of Figures and Tables in the Outliner and Navigate menu. We should really merge updateLabels() and addToToc() someday...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22943 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-11 13:23:42 +00:00
Abdelrazak Younes
7c38391754 Add list of notes and list of footnotes to the outline pane.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22942 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-11 13:06:01 +00:00
Abdelrazak Younes
8e831bb602 modify Inset::EntryDirectionType to follow style used in FontEnums.h for enums.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22936 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-11 08:20:13 +00:00
Abdelrazak Younes
4bc9498c7d Fix warning and probably a bug.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22935 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-11 08:10:02 +00:00
Dov Feldstern
11a6b3c4c7 visual mode for bidi cursor movement
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22929 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-10 19:52:45 +00:00
Stefan Schimanski
59e75f8cb5 * notifyCursorLeaves does not necessarily get a cursor pointing to the inset.
It should only be used to set the update flags. Use the BufferView pointer as
  a pointer to the inset.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22909 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-09 22:05:49 +00:00
José Matox
03fb3b0aec Patch to please gcc 4.3. Less bloat in the include headers means that
we need to include explicitly some header files now.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22846 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-07 17:04:06 +00:00
Richard Heck
a3b3115915 Make right click open minimalistic insets. See bug 4400.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22804 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-05 23:29:15 +00:00
Stefan Schimanski
2f1699747a * Do not keep pointers to data structures around if you don't know
whether the data structure outlives the pointer:

  InsetLayouts are really owned by the corresponding TextClass. So
  keep the TextClass alive by keeping a TextClassPtr around for the
  pointers lifetime. This fixes Bug #4538.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22782 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-05 10:34:01 +00:00
Jean-Marc Lasgouttes
11bea5a763 Use a set<string> instead of a vecctor<string> for list of features. This
allows to simplify the code to some extent.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22734 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-01 15:12:04 +00:00
Jürgen Spitzmüller
cbf599b911 ** Fix language switch issue introduced by the CJK patch **
* src/output_latex.{cpp,h}:
	- (latexParagraphs, TeXEnvironment, TeXOnePar, TeXDeeper): pass Text element 
	   instead of ParagraphList. This is necessary to detect whether we are in the main text.
	- check if we are in the main text for language switches, if needed.
* src/Buffer.cpp:
* src/insets/InsetEnvironment.cpp:
* src/insets/InsetText.cpp:
* src/mathed/InsetMathMBox.cpp:
	- adapt to new latexParagraphs definition.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22666 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-25 13:27:08 +00:00
Uwe Stöhr
a3dfd2f10b InsetBox.cpp: fix the LaTeX-output, fixes bug 2492 http://bugzilla.lyx.org/show_bug.cgi?id=2492
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22540 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-13 14:41:49 +00:00
Bo Peng
efbbf7a31f Fix r22486, which causes an infinite loop when a bibtex file is not available. Reported by Horst
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22505 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-12 06:17:37 +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
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
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
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
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
Bo Peng
09a6f725d0 Embedding: add embedding support for InsetExternal. (params["embed"] is added)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22442 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-08 16:42:28 +00:00
Bo Peng
c81fd7337d Embedding: add embedding support for InsetInclude. (params["embed"] is added)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22441 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-08 16:35:43 +00:00
Pavel Sanda
569a82cb86 Remove todo
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22440 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-08 16:26:25 +00:00
Bo Peng
06254d11df Embedding: display a pin at the top left corner of embedded figures
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22439 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-08 16:22:05 +00:00
Jürgen Spitzmüller
9e5eebc14c *** Requires tag for classes, layouts and custom insets ***
* src/TextClass{cpp,h}:
	- implement Requires tag for class and InsetLayout.
* src/Layout.{cpp,h}:
	- implement Requires tag for layouts.
	- increase layouts format to 6.
* src/Paragraph.cpp:
	- request required features for paragraph layouts.
* src/LaTeXFeatures.cpp:
	- add some packages needed by modules.
	- remove Preamble method for InsetLayout. This is now done
	  in InsetFlex::validate.
* src/BufferParams.cpp (validate):
	- request required features for the class.
* src/insets/InsetLayout.h:
	- new member "requires".
* src/insets/InsetFlex.{cpp,h}:
	- implement validate method and request required features and preamble snippets.

* lib/layouts/*.{layout,module,inc}:
	- increase layouts format to 6.
	- use Requires tags in some modules (more can be done later).

* lib/doc/Customization.lyx:
	- document Requires tag.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22414 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-07 16:59:10 +00:00
Bo Peng
c9a7e8c416 Embedding: After another round of EmbeddedFiles changes, embedded figures should more or less work now.
* src/insets/InsetExternal.cpp: fix compiling. (Does not work yet)
	* src/insets/InsetGraphics.cpp: use latexFilename to produce output.
	* src/insets/InsetGraphicsParams.cpp: use availableFile to show preview.
	* src/EmbeddedFiles.h|cpp: More things are moved from EmbeddedFiles to EmbeddedFile
	* src/frontends/qt4/GuiGraphics.cpp: remove embeddable-related operations.
	* src/support/FileName.h: make isReadableFile virtual


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22410 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-07 03:34:21 +00:00
Bo Peng
06e1d50c7e Minor format fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22395 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-06 16:24:19 +00:00
Bo Peng
56a1dfe65f Embedding: adjust how InsetGraphics interacts with EmbeddedFiles, the ?th overhaul of the EmbeddedFile class :-(
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22377 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-05 05:28:39 +00:00
Bo Peng
0264dd05b0 Embedding: temporarily disable embedding for include and external insets (focusing on graphics)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22375 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-05 04:44:41 +00:00
Bo Peng
995a1353df Embedding: does not write inzipName option in InsetGraphics because inzipName is now automatically determined
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22374 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-05 04:43:13 +00:00
Jean-Marc Lasgouttes
b605ba6e8c translating empty strings is not a good idea
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22358 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-04 15:44:51 +00:00
Jean-Marc Lasgouttes
67615fba80 fix compilation warnings: more unused parameters
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22348 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-03 16:10:44 +00:00
Jürgen Spitzmüller
a229a78dff Support for \nocite* from Berhard Reiter. Increments file format to 210.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22327 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-28 16:56:57 +00:00
Jürgen Spitzmüller
636b655216 Fix multiple cell pasting on Windows and Mac (bug 4436):
* src/Clipboard.h:
* src/frontends/GuiClipboard.{cpp,h}:
	- new member hasInternal() which indicates whether the OS knows
	  the concept of clipboard ownership.

* src/insets/InsetTabular.cpp (doDispatch):
	- consider hasInternal() while pasting.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22325 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-28 15:56:05 +00:00
Abdelrazak Younes
fc2658eff0 initial basic context menu support.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22309 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-26 12:40:58 +00:00
Jürgen Spitzmüller
cfb1d4027b * src/insets/InsetSpace.cpp:
- further improve appearance of protected space.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22307 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-26 10:38:59 +00:00
Abdelrazak Younes
518871a52b Don't pretend we have multiple menu backends: transfer the singleton to GuiApplication.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22303 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-25 22:27:32 +00:00
Abdelrazak Younes
7c832d2d84 Implement tooltips for visible insets.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22298 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-25 18:53:38 +00:00