Commit Graph

287 Commits

Author SHA1 Message Date
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
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
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
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
Richard Heck
b2475f6625 Replace boost::shared_ptr<TextClass> with a global cache of sorts of the TextClass's used by Buffers---or, more strictly, constructed by BufferParams::makeTextClass(). The action is in TextClass.{h,cpp}.
I've left the typedef in TextClassPtr.h. At the moment, it's kind of silly. But I've left it mostly because it helps to identify where the TextClass's stored in the TextClassBundle are used, and maybe it'd be worth having some sort of strong typedef like the one for BaseClassIndex here.

I need to check whether the textClass_ member of InsetCollapsable is needed now. I think not.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23232 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 19:31:31 +00:00
Abdelrazak Younes
0655e4d78f Should Fix crash on exit.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23218 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-25 07:32:02 +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
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
Bo Peng
1aaa96e6f1 Load local textclass in addTextClass(), reload local layout correctly in LFUN_TEXTCLASS_APPLY and LFUN_TEXTCLASS_LOAD
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23175 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-24 06:14:48 +00:00
Abdelrazak Younes
ee4dcf105a fix crash on quit with Ctr-Q. Patch by Horst Schirmeier (see http://bugzilla.lyx.org/show_bug.cgi?id=4572)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23162 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-23 18:10:52 +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
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
Stefan Schimanski
f5fdd7cdab * cosmetic
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23133 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-22 15:38:26 +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
Abdelrazak Younes
2a725d7c23 Introduce LFUN_CLOSE_TAB_GROUP.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23097 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-21 14:53:09 +00:00
Pavel Sanda
3d87d2f724 Squash RC warnings.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23096 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-21 14:34:41 +00:00
Abdelrazak Younes
9d40f89b58 Introducing LFUN_SPLIT_VIEW
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23084 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-20 21:46:49 +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
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
Pavel Sanda
10426cb833 Wrong status of ui-toggle. Spotted by Bennett.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22986 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-14 00:06:39 +00:00
Pavel Sanda
c6161cfdc6 Remove LFUN_FILE_NEW.
Obsoleted by LFUN_BUFFER_NEW, moreover its was currently buggy.

See http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg135371.html .


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22977 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-13 14:07:50 +00:00
Pavel Sanda
b9cf09838f Improve fullscreen capabilities ( http://bugzilla.lyx.org/show_bug.cgi?id=4146 ).
- adding frames, adding fullscreen switch.
- LFUN_MENUBAR_TOGGLE, LFUN_STATUSBAR_TOGGLE -> LFUN_UI_TOGGLE.

There are still limitations wrt Outlining in MAC OS - someone could check, 
see http://www.nabble.com/Fullscreen-mode-to15314676.html#a15367830 .




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22893 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-09 11:58:01 +00:00
Abdelrazak Younes
28826a461c header cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22826 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-07 08:58:35 +00:00
Abdelrazak Younes
e6519eb5f6 Transfer some GUI oriented code from core to frontend.
* lyxFunc:
- doImport(): transfered to GuiView::inportDocument() together with LFUN_BUFFER_IMPORT


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22820 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-06 23:54:13 +00:00
Abdelrazak Younes
8d99df0c93 Transfer some GUI oriented code from core to frontend.
* Application/GuiApplication:
- restoreGuiSession(): new method for session restoration.

* LyXView/GuiView
- loadDocument(): new pure virtual interface

* lyxFunc:
- loadAndViewFile(): transfered to GuiView::loadDocument()
- openDocument(): transfered to GuiView.

* LyX.h
- Impl::files_to_load_ : now a simple vector<string>.
- restoreGuiSession(): removed.
- execBatchCommands(): simplified and make use of Application::restoreGuiSession().



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22816 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-06 23:02:57 +00:00
Pavel Sanda
c2e397cdee Add LFUN_MENUBAR_TOGGLE and LFUN_STATUSBAR_TOGGLE.
This partly solves the bug http://bugzilla.lyx.org/show_bug.cgi?id=4146 .


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22809 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-06 17:54:04 +00:00
Abdelrazak Younes
4b2c2f3578 header cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22750 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-02 15:48:58 +00:00
Stefan Schimanski
dd3842505b * a configuration value for the mouse wheel scrolling speed:
lyxrc.mouse_wheel_speed 


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22717 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-30 21:20:29 +00:00
Richard Heck
5bef46157c Add some comments, and change enum terminology to reflect actual purpose.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22685 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-26 20:25:25 +00:00
Richard Heck
20a5e94a86 Fix bug 4517.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22681 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-26 20:02:30 +00:00
Stefan Schimanski
8e212b98b4 * optional old-style editing mode for macros with a parameter list.
* combobox in the preferences dialog to choose the macro editing mode of choice.

The reason for the three choices (inline box, inline without box,
list) is that it seems that there are at least these three groups of
people, and each of them is very strong about their opinion what that
the best mode is. So here there are all of them, pick your favourite.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22670 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-25 22:02:38 +00:00
Stefan Schimanski
0a701fb254 * Option to make macro editing less "noisy" by hiding the grey box with the
macro name when the cursor is inside. The downside of the coin is that
you have to look into the statusbar to see which macro is used. But
some people prefer that than having the slight size change of macros
when the cursor enters.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22650 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-22 21:23:41 +00:00
Richard Heck
9a7cd29f5b Rationalize the handling of makeTextClass().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22388 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-05 17:04:56 +00:00
Richard Heck
d4dbefc749 Tiny comment.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22328 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-28 17:11:39 +00:00
Abdelrazak Younes
33eb188fb6 Add an RC setting to disable/enable the tooltips in the work area.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22313 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-26 13:52:56 +00:00
Stefan Schimanski
5caf1bb4de * Some dialogs are independent of the lyxview. Moreover it seems that
the Qt Mac application menu is handled differently such that no
  getStatus() is issued anymore later when opening it. Hence we have
  to return the correct (i.e. enable==true) value for those lfuns from
  the beginning.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22286 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-23 19:07:46 +00:00
Abdelrazak Younes
2b9153b8bc Fix navigation and bookmarks.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22255 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-22 10:19:26 +00:00
Stefan Schimanski
36dbec4506 * Lazy MathData to avoid unneeded interpretation of macro definitions
* DocIterator as MacroPosition
* Iterative search for macro in scope until a visible one is found.
This include the ability to resolve macro inside nested text insets.
* Speed up macro lookups by factor 2: only getMacro(name) call, no
further hasMacro(name) call before
* Both way child/master support
* Correct macro scope for multi-paragraph environments
* Correct macro scope for multi-depth-paragraphs
* Buffer::updateMacros made const
* Update macros when loaded (of master and child)
* Do not remove too many braces when unfolding a macro. This could
lead to a data loss because the relationship between arguments of
macros can be mixed up if nested macros are unfold at once.
* Reduce dependencies to MetricsInfo in MathMacro   
* Update macros when needed. Normally it's done just before doing
metrics. But in cases without a brace around some constructs (like
\left(bla\right)) there is some help needed.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22241 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-21 20:42:46 +00:00
Abdelrazak Younes
ddda272512 bug fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22228 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-21 11:22:17 +00:00
Abdelrazak Younes
96d2d6fc50 * LyXFunc::dispatch(): invert BufferView::dispatch() and cursor::dispatch() calling.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22227 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-21 10:42:59 +00:00
Jürgen Spitzmüller
8672364e1e * fix bug 4055, overdue patch from Stefan Schimanski:
"The idea of the beforeDispX/Y_ variables in the Cursor is to hold the position
of the cursor on screen before the lyxfunc is dispatched. But to get this the
metrics must be valid. It's updated in Cursor::dispatch before the dispatch
loop.
After inserting/deleting stuff (like when deleting the selected text before
inserting the alpha) the metrics are invalid. But the handler for the alpha
calls Cursor::dispatch after the deletion and hence the crash with your second
patch.

Here is a patch fixing that:

The beforeDispatchXY variable do not belong into the Cursor::dispatch because
Cursor::dispatch is often called "manually" by many handlers to some followup
action. So this logic must go somewhere else where it is sure that is not
updated after the metrics got invalidated."

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22193 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-17 18:13:02 +00:00
Abdelrazak Younes
7c392af6ea getting rid of superfluous lyx::support:: statements.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22106 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 19:57:42 +00:00
Abdelrazak Younes
9abb7db468 getting rid of superfluous std:: statements.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22104 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 19:28:07 +00:00
Abdelrazak Younes
b89cc942eb 'using namespace lyx::support' instead of 'using support::xxx'
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22103 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 18:57:56 +00:00
Abdelrazak Younes
9383f4c3c6 'using namespace std' instead of 'using std::xxx'
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22097 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 10:16:00 +00:00
Abdelrazak Younes
b95a68d476 Revert 22023 and really fix bug 4410 (http://bugzilla.lyx.org/show_bug.cgi?id=4410).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22024 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-08 16:36:56 +00:00
Abdelrazak Younes
acbb1c9b8c Split LyXFunc::menuNew() into LyXView::newDocument() and buffer_funcs::newUnnamedFile().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22002 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-07 11:57:13 +00:00
Abdelrazak Younes
23aff36f7e Avoid a second confirmation when reverting a Buffer.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21963 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-04 23:07:14 +00:00
Abdelrazak Younes
ac08e89095 Sanitize the way Buffers are saved, renamed and closed.
* LyXFunc: Transfer and simplify LFUN_BUFFER_WRITE, LFUN_BUFFER_WRITE_AS  and LFUN_BUFFER_WRITE_ALL to GuiView.

* BufferList: Transfer quitWriteAll() and close() to GuiView.

* Buffer: Transfer writeAs() and menuWrite() functionalities to GuiView.

* LyXView::closeBuffer(): new pure virtual method.




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21960 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-04 22:21:25 +00:00
Abdelrazak Younes
b1db731a98 * FileName::fileContents(): new argument to define the file encoding.
* BufferView:
- insertPlaintextString(): now accept a FileName.
- contentsOfPlaintextFile(): ditto and use FileName::fileContents().
 

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21915 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-02 11:55:25 +00:00
Abdelrazak Younes
f8b7c56580 * Buffer:
- tocBackend(), errorList(), texrow(), etc: now const.
- masterBuffer(): get rid of non const access.
- setParent(): set parent Buffer, replace setParentName()
- parent(), resetChildDocuments(): new.

* InsetInclude.{h,cpp}: new resetParentBuffer() method.





git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21879 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-30 17:41:27 +00:00
Uwe Stöhr
6cfb3e1344 LyXFunc.cpp: add missing case
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21872 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-30 00:04:44 +00:00
André Pönitz
2506e0d643 assimilate BOOST_CURRENT_FUNCTION
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21867 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-29 21:10:35 +00:00
André Pönitz
9d0ea8aeff Move debug.{cpp,h}, Messages.{cpp,h} and gettext.{cpp,h} to support/.
Now support/* should have no dependencies on src/* anymore.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21851 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-29 07:04:28 +00:00
André Pönitz
150cf11651 hand-crafted LyXErr
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21849 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-28 22:12:03 +00:00
Abdelrazak Younes
1060f922f0 Please JMarc: Make sure we always pass through LyXFunc::dispatch() even if this is a waste of CPU.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21807 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-26 22:45:17 +00:00
Abdelrazak Younes
1133419a59 Cleanup LyXFunc::dispatch() following JMarc advice.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21797 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-26 14:36:50 +00:00
André Pönitz
d95451ae5c s/isFileReadable/isReadableFile;
introduce isReadableDirectory
replace isReadable by either isReadableFile or isReadableDirectory
remove isReadable


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21769 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-25 11:18:16 +00:00
Abdelrazak Younes
662b5dba03 Introducing Application::getStatus() and Application::dispatch(). Transferring some LFUNs to those.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21759 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-24 07:58:12 +00:00
Abdelrazak Younes
b8cd772329 some more LFUN transfer from LyXFunc to GuiView.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21741 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-23 12:37:09 +00:00
Abdelrazak Younes
47f54dd68b get rid of LyXView::errors(). This was redundant with GuiBufferDelegate::errors().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21740 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-23 11:53:10 +00:00
Abdelrazak Younes
d4b02ad711 simplify window creation.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21735 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-23 09:56:33 +00:00
Abdelrazak Younes
42015a8ebd Transfer some more dialog related code from core to frontend:
- LFUN_INSET_APPLY handling goes to GuiView.
- Dialog needs a GuiView instead of a LyXView.




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21734 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-23 09:44:02 +00:00
Abdelrazak Younes
a3315920a2 Some more cleanup of LyXView:
- transfer GuiBufferDelegate and GuiBufferViewDelegate to GuiView
- delete showDialog() and use LFUN_DIALOG_SHOW in LyXFunc::dispatch().


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21702 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-21 22:48:13 +00:00
Abdelrazak Younes
8460c9a072 Introducing Application::resetGui() that will reset all dialogs in all lyx windows (including toolbars and menubars).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21689 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-21 15:12:47 +00:00
Abdelrazak Younes
ba3fa9bd03 - Cleanup and simplify the layout list GUI handling.
- Transfer toolbar, statusbar and layoutlist handling to the frontend.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21684 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-20 22:03:56 +00:00
Abdelrazak Younes
359ced5e65 Transfer some LFUNs from LyXFunc to GuiView.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21681 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-19 20:56:05 +00:00
Abdelrazak Younes
37a5647be1 Transfer LyXView::loadLyXFile() to lyxFunc::loadAndViewFile(). This enables to get rid of the flashing tabbar bug and is more correct anyway.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21677 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-19 12:03:38 +00:00
Abdelrazak Younes
7d209e5c32 Fix long standing initialisation FIXME.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21669 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-18 22:51:58 +00:00
André Pönitz
d5fc2425a9 consolidate showDialog() incarnations
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21662 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-18 00:39:15 +00:00
André Pönitz
55b4fbcf21 merge GuiView/Dialogs
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21661 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-18 00:01:14 +00:00
André Pönitz
12f435035a move view_ids from Application to GuiApplication
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21658 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-17 22:25:42 +00:00
André Pönitz
1005c166c2 merge frontend::Gui and frontend::Application
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21656 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-17 20:47:50 +00:00
André Pönitz
dac06728cb shuffle code around
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21653 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-17 15:32:12 +00:00
André Pönitz
72e3177e3d shuffle some code around
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21636 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-15 22:30:16 +00:00
André Pönitz
e1ce2f92db reduce line noise
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21631 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-15 20:04:51 +00:00
Abdelrazak Younes
e73f8040fe Use QSettings for session management of windows geometry. This commit also removes the possibility to fix the window dimensions in the RC file. Instead we have now a single check box for enabling/disabling geometry session management.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21625 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-15 12:58:44 +00:00
Abdelrazak Younes
f8490161bd Transfer some LFUNs from LyXFunc to GuiView and get rid of GuiView methods.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21583 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-13 14:49:50 +00:00
Abdelrazak Younes
fcdc4f8a6b Some more cosmetics and removal of unused methods in GuiView.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21582 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-13 14:04:32 +00:00
Abdelrazak Younes
c4db1d0f5a Push latest Andre's changes toward their true direction:
* WorkArea.h and LyXView.h: remove unneeded pure virtual interface.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21575 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-13 09:52:28 +00:00
André Pönitz
8d06b3049b cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21544 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-10 13:44:50 +00:00
Jürgen Spitzmüller
c159b9ece9 * src/LyXFunc.cpp (actOnUpdatedPrefs):
- add missing case LyXRC::RC_DEFFILE (and shut up compiler)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21542 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-10 11:22:19 +00:00
Pavel Sanda
87bd0e79ad Fix bug 2739: Option for alphabetical sorting of environments in the toolbar
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21536 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-10 00:21:42 +00:00
André Pönitz
cf7b238479 more use of support::FileName.
Would be nice if people tested read/write, and Bo perhaps the 'embedded'
feature?



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21492 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-07 19:52:11 +00:00
Dov Feldstern
ddd82f7aa4 Getting rid of LTR bias --- part 3/4
This is a continuation of r21128, r21244


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21448 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-05 19:41:16 +00:00
Jürgen Spitzmüller
ab8bbd9b88 * src/LyXFunc.cpp (actOnUpdatedPrefs):
- add missing LyXRC::RC_USE_PIXMAP_CACHE to switch,

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21441 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-05 15:50:00 +00:00
André Pönitz
09b7e6e60a some std::string -> filename changes
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21404 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-03 17:37:37 +00:00
André Pönitz
09df753df4 pimpl not needed here
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21395 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-02 23:42:27 +00:00
André Pönitz
c08309a9e2 cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21391 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-02 21:27:37 +00:00
André Pönitz
a8cd9a4b8f cosmetics. mainly replace #include "dostring.h" by #include "strfwd.h"
in header files when possible. Adjust .cpp files.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21358 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-01 22:17:22 +00:00
André Pönitz
9be03a87f9 start some work on file dialogs
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21238 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-28 16:32:20 +00:00
Abdelrazak Younes
eea79637c7 Move Color::color enum to ColorCode.h
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21198 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-25 12:41:02 +00:00
André Pönitz
93bd28f040 dissolve Importer 'class' to LyXFunc/Converter
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21195 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-25 06:09:38 +00:00
Richard Heck
4064d2c468 InsetInclude becomes an InsetCommand.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21149 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-23 15:02:15 +00:00
Bernhard Roider
1a77c867a2 CmdDef.cpp/h: A class that manages command definitions. The definitions are
by default read from lib/commands/default.def 
              A .def file allows to define a command with
              \define "Name" "lfun"
              where Name is the name of the new command and lfun is the code
              to be executed.
              \def_file "FileName"
              allows to include another .def file.
              The implementation of CmdDef is similar to KeyMap, i.e. there is 
              one instance created in the LyX.cpp that reads the .def file, holds 
              a list containing all definitions, and supplies access methods.


LFUN_CALL:    The new lfun is used to execute a command definition, e.g.
              call Name

If a toolbar item has the associated action "call Name" then the image 
lib/images/commands/Name.png is used for the button.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21093 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-20 23:27:03 +00:00
Bo Peng
36f7fcdee0 add another format (BindFile) to KeySequence::print()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21087 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-20 20:28:05 +00:00
André Pönitz
ee005614a3 saner borderline between buffer and exporter
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21080 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-20 10:51:13 +00:00
André Pönitz
f762cbf3c6 mainly cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21079 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-20 10:03:45 +00:00
Richard Heck
e158e07c29 InsetCommandParams() now takes an InsetCode rather than a string.
These changes are just adaptations to the new signature.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21072 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-19 17:22:55 +00:00
André Pönitz
a02653e4dd isome more FileName shuffling
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21048 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-18 23:03:51 +00:00
André Pönitz
988f372843 use FileName::isDirectory()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21047 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-18 21:10:35 +00:00
André Pönitz
0e08bc5e16 start using FileName::exists()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21044 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-18 19:29:32 +00:00
Abdelrazak Younes
55beda376a Refactor Undo/Redo framework into an Undo class owned by a Buffer. This reduces header dependencies from Undo.h which was including lots of stuff previously. This also solves the bug where undo/redo were reset upon buffer switching. Now, each buffer has a truly independant undo/redo architecture.
In the future, when Cursor has been fixed to work correctly with multiple views of the same Buffer, we could transfer the Undo owner from Buffer to Cursor.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21031 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-18 11:51:17 +00:00
Richard Heck
f2418483a0 Get LFUN_DIALOG_SHOW_NEW_INSET using InsetCode, too.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21025 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-18 05:08:16 +00:00
Richard Heck
83a1f1189f Cosmetics.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20983 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-16 08:09:15 +00:00
Bo Peng
34058aed9b Check and show proper error message if configure.py fails (part of buf 2829)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20967 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-14 14:51:05 +00:00
Uwe Stöhr
7075eaadef The huge URL patch:
- rename the lfun to href-insert.png
- rename the files to Hyperlink...
- the former URLUi produces now \href commands (hyperref)

Only missing thing is the lyx2lyx conversion routine - this will be done by Richard

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20950 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-13 19:06:09 +00:00
Abdelrazak Younes
36e9a1fd30 Inset::translate() -> lyx::insetCode()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20942 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-13 12:50:18 +00:00
Abdelrazak Younes
f7b1c86393 Move Inset::Code to InsetCode.h
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20936 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-13 09:04:52 +00:00
Abdelrazak Younes
70b938bf5a Transfer some LFUNs from LyXFunc::getStatus() to BufferView::getStatus(). What a mess!
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20902 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-11 13:20:21 +00:00
Abdelrazak Younes
59aae2aa83 Don't restart the blinking cursor inside WorkArea because some shortcuts can delete the current WorkArea.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20900 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-11 12:31:48 +00:00
Abdelrazak Younes
c2b139d5a0 fix in r20895 was not fully correct.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20897 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-11 10:05:04 +00:00
Abdelrazak Younes
a2bc74bca8 Crash fix. I don't know why this is triggered only now... I guess someone changed the way toolbars are initialized. The changes are safer anyway.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20895 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-11 09:57:52 +00:00
Abdelrazak Younes
57a8d370d4 Header cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20894 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-11 07:26:06 +00:00
Abdelrazak Younes
18137a6ad6 Fix cursor blinking after unknown action.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20893 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-11 07:03:17 +00:00
Abdelrazak Younes
e3032e7d0e * BufferView::update(): renamed to processUpdateFlags() to clarify the intent. Also get rid of the default argument which added to the confusion as to what was the purpose of update(). Now also emit Buffer::changed() signal internally instead of assuming that the caller will act upon the returned boolean.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20884 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-10 08:52:55 +00:00
André Pönitz
58ab972f71 last commit was incomplete... not sure how I managed this..
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20710 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-03 20:15:49 +00:00
André Pönitz
3f5dd9fb3e shuffle some code around
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20704 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-03 18:34:32 +00:00
André Pönitz
65d1912cfe shuffle code around.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20703 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-03 18:18:47 +00:00
André Pönitz
df2318f823 move some buffere related stuff from callback.cpp tpo Buffer.cpp.
simpler code.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20694 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-03 11:00:18 +00:00
André Pönitz
97770c4332 small simplification
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20688 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-03 09:21:15 +00:00
André Pönitz
c4033d4012 cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20671 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-02 21:51:54 +00:00
André Pönitz
5aaf4dce20 move font related stuff from bufferview_funcs to Font
delete bufferview_funcs, since it's now empty


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20579 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-29 11:00:18 +00:00
Richard Heck
0787ade6c0 This is the first part of a cleanup of how we handle the InsetCommand hierarchy. This part starts to disentangle the type of the inset from the command that a single instance of the inset represents. This involves two sorts of changes:
(i) The file format is changed, so that command insets are represented as:
    \begin_inset CommandInset insetype
    LatexCommand command
    ...
    \end_inset
This involves some lyx2lyx and changes to the readInset() routine in factory.cpp
(ii) The InsetCommand and InsetCommandParams classes also have to be changed, as the command name was used in these classes for various purposes for which the inset type ought really to be used.
Further clean-up to come.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20544 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-27 18:24:18 +00:00
Bo Peng
b762358eec Lyx now starts and asks for reconfigure if no textclass is found (bug 2829)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20522 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-26 19:36:09 +00:00
Richard Heck
e8da1771f2 Introduce LFUN_MASTER_BUFFER_VIEW and UPDATE. Code by Tommaso Cucinotta.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20366 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-20 05:00:23 +00:00
André Pönitz
978f65391e reduce #includes
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20363 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-19 22:37:22 +00:00
Richard Heck
e020bc1806 Fulfill promise to Andre: TextClass_ptr --> TextClassPtr.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20349 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-18 17:46:14 +00:00
André Pönitz
7afa73a0b3 small simplification
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20332 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-17 22:51:03 +00:00
André Pönitz
f86525fc2e simplify KeySymbol stuff. which hopefully works...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20322 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-17 18:41:03 +00:00
Richard Heck
63a190ef49 Add layout-reload LFUN. This is useful for people creating and editing layouts.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20215 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-11 16:42:22 +00:00
Richard Heck
ec29fd3461 Revert accidental commit.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20152 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-08 17:49:37 +00:00
Richard Heck
aebd5ebaf9 Fix crash when layout file cannot be read due to failure to call makeTextClass() in that case.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20150 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-08 17:46:02 +00:00
Richard Heck
1588f9d201 This addresses a bug in the module code so far committed. The problem is that changing the modules used would update the Buffer's TextClass---but it wouldn't update the layouts used by existing paragraphs, the way changing the TextClass does. The solution, obviously, is to do that update. So what I've done is extract that logic from LFUN_TEXTCLASS_APPLY into an updateLayout() routine and then call that from LFUN_BUFFER_PARAMS_APPLY, LFUN_LAYOUT_MODULE_ADD, and LFUN_LAYOUT_MODULES_CLEAR, which are the three places the modules could be changed.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19964 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-01 04:01:13 +00:00
Richard Heck
8a947f63da 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 patch adds the backend. The ModuleList class holds a list of the available modules, which are retrieved from lyxmodules.lst, itself generated by configure.py. There are two LFUNs available: modules-clear and module-add, which do the obvious thing; you can test by typing these into the minibuffer, along with the name of one of the available modules: URL (a CharStyle), Endnote (a Custom Inset), and---with the spaces---End To Foot (View>LaTeX and look at the user preamble), which are themselves in lib/layouts. There are some others, too, that allow theorems to be added to classes like article and book.

The GUI will come next.

Issues: (i) The configure.py script could be improved. It'd be nice, for example, if it tested for the presence of the LaTeX packages a particular module needs. But this would mean re-working the LaTeX script, and I don't know how to do that. Note that at present, the packages are ignored. This will change shortly. (ii) I've used std::string in LyXModule, following what seemed to be a precedent in TextClass. If some of these should be docstrings, please let me know, and I'll change them. (iii) There is at present no distinction between LaTeX and DocBook modules. Should there be? That is: Should there be modules that are available when the document class is a LaTeX class and others that are available only when it is DocBook? Or should there just be one set of modules? Each module can of course indicate for what it is suitable in its description.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19893 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-29 17:59:49 +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
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
4c1144c187 cosmetics: return early whenever possible to reduce indentation.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19724 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-22 14:36:18 +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
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
8f83eab31f Fix crash when the Outline dialog is opened on an empty document. This was caused by the commented out updateLabels() in LyXFunc::menuNew().
* Text: new empty() method.

* buffer_funcs.cpp:updateLabels(): return early in case of empty document.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19566 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-14 16:59:59 +00:00
Abdelrazak Younes
59aa19e920 * callback.cpp: newFile() takes a LyXView instead of a BufferView.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19564 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-14 15:32:58 +00:00
Abdelrazak Younes
32268e2632 cosmetics + move frontends/* to frontend namespace.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19553 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-14 09:54:59 +00:00
Abdelrazak Younes
55aafd2403 Cosmetic changes and more assertions.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19551 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-14 08:53:34 +00:00