Commit Graph

12 Commits

Author SHA1 Message Date
Abdelrazak Younes
a6933a9b4e Bug fixes from Ugras Baran:
Following patch corrects some misbehavior in TOC dialog:

- When clicking on Toc insets, dialog switches to correct list.
- cursor goes to correct entry when clicked..
- some other fixes..


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15949 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-16 12:37:55 +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
Abdelrazak Younes
f23082917e - Fix a crash when IN is clicked multiple time in a single line document.
- Polish the behavior when the TOC is empty (clearing the button and the TOC tree)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15373 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-19 14:35:06 +00:00
Abdelrazak Younes
0823fb6f86 Fix Toc dialog crash when TOC is empty.
* QToc::update(): return early if no TOC type.

* QTocDialog::updateGui(): return early of the Type model is empty and disable the outline buttons.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15346 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-16 08:51:55 +00:00
Georg Baum
34b7650cbb Introduce wide streams. This fixes the remaining problems of plain text
export (e.g. the ToC) and the navigate menu.

	* src/insets/insetbase.h
	(InsetBase::plaintext): output to a docstream
	(InsetBase::textString): ditto

	* src/mathed/TextPainter.h
	(TextPainter::show): ditto

	* src/support/docstream.[Ch] New file and string streams for
	docstring. The file streams convert to UTF8 on the fly.

	* many more files: Adjust to the changes above


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15301 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-11 19:40:50 +00:00
Abdelrazak Younes
ff83a99e94 * QToc.[Ch], QTocDialog.[Ch]: adaptation to ControlToc changes in r13772
* TocModel.[Ch]: small cleanup + eol-style set to native


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13774 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-28 09:16:48 +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
Abdelrazak Younes
107356b439 Transfered closePB handlling (GUI code) from QToc.C to QTocDialog.C
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13641 a592a061-630c-0410-9148-cb99ea01b6c8
2006-04-11 09:56:56 +00:00
Abdelrazak Younes
5a4d33d97e Add outlining functionality to the Qt4 TOC dialog.
The Toc dialog is not finished yet, there's some clean-up to do especially in select_adapdator which doesn't seem to work. This makes lyx crash when clicking on the Up, Down, In or Out buttons.

    * frontends/qt4/QTocDialog.[Ch]: add automatic slots

    * frontends/qt4/QTocDialog.[Ch]: add "enableButtons(bool)"

    * frontends/qt4/ui/QTocUi.ui: add pushbuttons

    * frontends/qt4/QToc.[Ch]: add move* methods.

The following Qt4 equivalent changes to revision r13521 are not done yet:
    * frontends/qt2/QToc.[Ch]: add move* method.
    (QToc::updateToc):
    (QToc::select): add code for TOC window positioning, and
    outlining methods



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13530 a592a061-630c-0410-9148-cb99ea01b6c8
2006-03-29 16:57:47 +00:00
Lars Gullik Bjønnes
12e5a52b92 Added initial qt4 work by Abdelrazak Younes
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13294 a592a061-630c-0410-9148-cb99ea01b6c8
2006-03-05 17:24:44 +00:00