Commit Graph

27 Commits

Author SHA1 Message Date
Abdelrazak Younes
9aed8cf115 Still trying to solve the Toc panel crash with stdlib-debug enabled gcc.
* ControlToc::update(): get rid of the pure virutal method.
* QToc::initialiseParams(): overload ControlToc method.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17708 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-03 13:07:38 +00:00
Abdelrazak Younes
61dde5d797 Cleanup of the Toc model and controller: The objective is to let the View (TocWidget) decide which kind of list it want to show. The type given by InsetCommandParam() (as read by the controller (ControlToc) then just becomes a hint to the View. Most of the commit is about getting rid of the controller maintained list of types.
* TocBackend
  - addType(), types_, types(): deleted.

* ControlToc
  - tocs(): new
  - selectedType(): access to selected_type_
  - initialiseParams(): transfer code from QToc::update() and look for selected type.
  - getTypes(), getContents(): deleted

* QToc: do not maintain current type. Get the info from the View.
  - setTocModel(): deleted

* TocWidget: always pass the currently selected type to the model/controller.
  - setTocModel(): new slot.
  - updateGui(): transfer code to setTocModel().


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17455 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-16 14:14:55 +00:00
Abdelrazak Younes
cb81965b1e * ControlToc:
- initialiseParams(): overload ControlCommand::initialiseParams() so that we can update the model at this point (QToc is the controller _and_ the model).
  - update(): new 
  - updateBackend(): new protected method to update the TocBackend (called for the "Update" button).

* QToc:
  - is now a QObject
  - modelReset: new Qt signal to indicate a model reset to associated dialog(s).
  - QToc(): avoid the duplicate update() call that will be done in the show command anyway.

* Dialogs.C
  - use new TocWidget in a DockView.

* TocWidget.[Ch]: renamed from QTocDialog. This striped down widget is only a widget that connects to the 'QToc' model/controller.

* DockView.h: new template class that encapsulates a given Widget inside a DockWidget and presents a Dialog::View interface.

* QTocUi.ui:
  - now is a simple Widget.
  - rearrange the buttons a bit
  - get rid of the unneeded close button.
  - modify the shortcut to "Promote" to 'r' because of a clash with "Alt-p" number (we really need real, always valid, shortcuts for all outline action!)




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17416 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-12 14:23:44 +00:00
Georg Baum
2caff468e5 convert more GUI strings to docstring
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16377 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-22 10:06:40 +00:00
Georg Baum
2734cc1548 Extend the navigate menu to child docs
* src/buffer_funcs.h
	(updateLabels): Add bool childonly argument

	* src/insets/insetbase.h
	(addToToc): New virtual method

	* src/insets/insetinclude.[Ch]
	(addToToc): New virtual method
	(updateLabels): New method

	* src/TocBackend.h: reorganize classes so that we can forward
	declare TocList

	* src/insets/insetfloat.[Ch]
	* src/insets/insetwrap.[Ch]
	(addToToc): Adjust to type changes in TocBackend.h

	* src/frontends/qt4/TocModel.[Ch]: ditto

	* src/frontends/controllers/ControlToc.[Ch]: ditto

	* src/TocBackend.C: ditto
	(TocBackend::update) Remove test for float and wrap inset,
	call virtual method instead

	* src/BufferView.C
	(BufferView::dispatch): make LFUN_PARAGRAPH_GOTO work even if the
	target paragraph is in a different buffer

	* src/MenuBackend.C: Adjust to type changes in TocBackend.h
	(expandToc): Add an entry for the master doc in child docs

	* src/buffer_funcs.C
	(setLabel): Add text class parameter
	(updateLabels): handle included docs if requested by the caller


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15904 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-13 16:53:49 +00:00
Abdelrazak Younes
479e9054db * Buffer
- new pimpled TocBackend member and associated accessors.

* toc.[Ch]: delete all toc related methods except outline.

* TocBackend:
  - goTo(): deleted, this gets rid of the LyXView dependency
  - made all accessors const.

* ControlToc: 
  - rework the controller to work exclusively with TocBackend.
  - goTo(): now call LyXView::dispatch() directly

all other files: update with the TocBackend or ControlToc API changes.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15852 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-11 00:35:14 +00:00
Martin Vermeer
2219197cfe Brown paper bag for r13772
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13773 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-28 07:45:37 +00:00
Abdelrazak Younes
8c0bd3a77b * TocBackend.[Ch]: new files defining class TocBackend. This class contains adapted code from former toc.C
* toc.[Ch]:
    - rewritten to take advantage of new TocBackend class. The toc
    cache is implemented as a static variable:
    static map<Buffer const *, lyx::TocBackend> toc_backend_;

* buffer_funcs.C:
    updateLabels(Buffer const & buf) now calls
    "lyx::toc::updateToc(buf);"

* pariterator.h: added default constructor
    ParConstIterator(): DocIterator() {}

* insetfloat.C: added pit parameter to TocItem construction

* insetwrap.C: added pit parameter to TocItem construction

* MenuBackend.C: use a const ref instead of a copy of TocList

* ControlToc.[Ch]: optimisation of the API by using const reference instead of copy.

* qt4/TocPanel.[Ch]:
    - optimisation of the API by using const reference instead of
    copy
    - directly use of TocBackend::TocIterator instead of identification by paragraph contents.

* qt4/QToc.C:
    - optimisation of the API by using const reference instead of
    copy
    - makes use of TocBackend::Item::uid()

* qt2/QToc.C:
    - use TocItem::depth() and TocItem::str() instead of public member access.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13713 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-22 18:48:28 +00:00
Abdelrazak Younes
fc57e5e4ad Two ways toc navigation:
* Toc.[Ch]: new function getCurrentTocItem()
* ControlToc.[Ch]: new function getCurrentTocItem()
* QToc.[Ch]: new function getCurrentIndex()
* QTocDialog.C
  - QTocDialog::update() calls QToc::getCurrentIndex()



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13695 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-19 14:48:22 +00:00
Abdelrazak Younes
9db70c5346 * ControlToc.[Ch]
- bool ControlToc::canOutline(): new method to test if outline is possible.
* TocModel: new class
* QToc is now the controller (inheriting ControlToc directly) and the model (using TocModel)
* QTocDialog is now only the view (inheriting Dialogs::View directly)
* Dialogs.C: updated toc controller and view correspondingly



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13692 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-18 09:57:47 +00:00
Martin Vermeer
c0b204c0a8 Add outlining functionality to the TOC dialog.
* LyXAction.C
	(LyXAction::init): define command

	* BufferView_pimpl.C
	(BufferView::Pimpl::getStatus): 
	(BufferView::Pimpl::dispatch): add handling code

	* frontends/qt2/QTocDialog.C: add connections, adapters

	* frontends/qt2/ui/QTocDialogBase.ui: add pushbuttons

	* frontends/qt2/QTocDialog.h: add adapters

	* frontends/qt2/QToc.[Ch]
	(QToc::updateToc): 
	(QToc::select): add code for TOC window positioning, and 
	outlining methods 

	* frontends/controllers/ControlToc.[Ch]: implement methods

	* lfuns.h
	(kb_action {): define LFUN

	* toc.[Ch]: implement up, down, in and out operations in Outline
	method



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13521 a592a061-630c-0410-9148-cb99ea01b6c8
2006-03-29 05:08:42 +00:00
Jürgen Spitzmüller
7d978a119f Do not use localized strings internally (bug 1870)
Someone please check the gtk TOC dialog.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10363 a592a061-630c-0410-9148-cb99ea01b6c8
2005-07-27 15:22:08 +00:00
Jürgen Spitzmüller
200435f2d9 fix bug 1870 (List of tables windows shows list of figures)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10125 a592a061-630c-0410-9148-cb99ea01b6c8
2005-07-04 13:05:03 +00:00
Angus Leeming
2a31934f38 Wrap most of the frontend code up inside namespace lyx::frontend.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@8766 a592a061-630c-0410-9148-cb99ea01b6c8
2004-05-19 15:11:37 +00:00
Lars Gullik Bjønnes
44cd0fc9a1 The std::string mammoth path.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@7862 a592a061-630c-0410-9148-cb99ea01b6c8
2003-10-06 15:43:21 +00:00
Angus Leeming
0be0fcfd59 If I ever see another licence blurb again, it'll be too soon...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@7598 a592a061-630c-0410-9148-cb99ea01b6c8
2003-08-23 00:17:00 +00:00
Lars Gullik Bjønnes
20b42535af put namespace toc inside namespace lxy
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@7384 a592a061-630c-0410-9148-cb99ea01b6c8
2003-07-27 13:18:55 +00:00
Angus Leeming
cda53633ff Hold on to your hats.
Qt users should autogen.sh
Gnome users --- you're on your own ;-)
Happy recompiling.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@6253 a592a061-630c-0410-9148-cb99ea01b6c8
2003-02-25 14:51:38 +00:00
Lars Gullik Bjønnes
99d1627a47 dont use pragma impementation and interface anymore
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@6138 a592a061-630c-0410-9148-cb99ea01b6c8
2003-02-13 16:53:15 +00:00
Lars Gullik Bjønnes
ce708d095c ws fixes, formatting and some other small changes
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@5463 a592a061-630c-0410-9148-cb99ea01b6c8
2002-10-21 17:38:09 +00:00
Angus Leeming
1eb8155fa0 This file is part of LyX, the document processor.
Licence details can be found in the file COPYING.

and thank God for sed.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@5211 a592a061-630c-0410-9148-cb99ea01b6c8
2002-09-05 15:14:23 +00:00
Angus Leeming
6fac1dc980 Really dull and boring header shit
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@5210 a592a061-630c-0410-9148-cb99ea01b6c8
2002-09-05 14:10:50 +00:00
Angus Leeming
c265d16ed0 Nothing but a changed email address (trying to factor my tree in in small steps)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@4998 a592a061-630c-0410-9148-cb99ea01b6c8
2002-08-15 16:02:22 +00:00
Jean-Marc Lasgouttes
1c52d8f898 toc support reorganization; changes to xform_helpers; aspect ratio patch from herbert
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@4732 a592a061-630c-0410-9148-cb99ea01b6c8
2002-07-21 15:51:07 +00:00
Lars Gullik Bjønnes
f7ba7c8e9f ws cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@3806 a592a061-630c-0410-9148-cb99ea01b6c8
2002-03-21 21:21:28 +00:00
Lars Gullik Bjønnes
52153a589b floatlist work + handle lyxfuncs with args.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@1984 a592a061-630c-0410-9148-cb99ea01b6c8
2001-05-04 10:36:36 +00:00
Angus Leeming
071d35750a controller-view split for TOC popup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@1863 a592a061-630c-0410-9148-cb99ea01b6c8
2001-03-30 19:24:28 +00:00