Commit Graph

136 Commits

Author SHA1 Message Date
Abdelrazak Younes
1ff60667a6 Put LFUN_UI_TOGGLE in its own method and add FIXMEs WRT multple workareas.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22901 a592a061-630c-0410-9148-cb99ea01b6c8
2008-02-09 17:54:28 +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
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
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
0743f576cb * BufferView:
- dispatch(): transfer LFUN_FILE_INSERT_PLAINTEXT_* to GuiView::dispatch()
- insertPlaintextFile(): split in BufferView::insertPlaintextFile() and GuiView::insertPlaintextFile()

This patch get rid of FileDialog use in BufferView. Remains Buffer, Converters and LyXFunc.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21930 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-02 20:05:17 +00:00
Abdelrazak Younes
c68601da9f * BufferView:
- dispatch(): transfer LFUN_FILE_INSERT to GuiView::dispatch()
- menuInsertLyXFile(): split in BufferView::insertLyXFile() and GuiView::insertLyXFile()


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21923 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-02 17:50:08 +00:00
Abdelrazak Younes
623389fdcc Move inclusion of "frontends/Delegates.h" to qt4/GuiView.h
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21815 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-27 08:24:56 +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
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
André Pönitz
dcac6d3375 small simplification
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21719 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-22 23:29:53 +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
dba4159cc2 Remove some methods from GuiView.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21672 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-18 23:49:52 +00:00
Abdelrazak Younes
c61ff2e0b8 cleanup and reorder initialisation code of GuiView and GuiToolbars. Move some things to GuiView::Private.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21670 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-18 23:30:41 +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
Abdelrazak Younes
9f26cdda31 rev 21667: Forgot this!
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21668 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-18 22:29: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
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
e5eabfe067 Transfer geometry related session code from LyX::newLyXView() to GuiView::setGeometry().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21606 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-14 13:56:13 +00:00
Abdelrazak Younes
0c6306060e Fix the disappearing minibuffer by don't pretending we are flexible.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21600 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-14 11:14:06 +00:00
Abdelrazak Younes
12ecafd76e Transfer createView() from Application to GuiApplication and get rid of LyXView::setGeometry() pure virtual interface. The goal is to switch to Qt session handling for geometry instead of our own house made one.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21585 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-13 15:29:15 +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
f111a8e322 Some cosmetics and a gcc compile fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21581 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-13 13:23:44 +00:00
Abdelrazak Younes
e2aba1b550 compile fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21579 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-13 10:31:37 +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
309232d26b make LyXView almost pure virtual. Merge implementation with GuiView
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21566 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-12 23:23:19 +00:00
André Pönitz
34859c9a4f make WorkArea a pure interface, move all implementation to GuiWorkArea
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21557 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-12 22:15:51 +00:00
Abdelrazak Younes
fe8bce6676 Transfer readOnly() and updateWindowTitle() from Delegates to WorkArea/WorkAreaManager. This permits to automatically update Windows and Tabs titles (thanks to Qt signal/slot connections).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21551 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-11 22:30:21 +00:00
Abdelrazak Younes
2480fa573c * GuiView:
- addTabWorkArea(): Implement split view.
- maintain current_work_area_ pointer for the need of future embedded workAreas.
- transfer and some code to GuiView::Private and simplify some other things.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21546 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-11 10:09:48 +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
Abdelrazak Younes
ff189f6c70 Rename GuiViewBase to GuiView.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21436 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-05 13:52:37 +00:00
André Pönitz
b99433e73b cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21157 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-23 21:41:17 +00:00
Abdelrazak Younes
3435635a7b Move TabWidget related code to TabWorkArea class in GuiWorkArea.{cpp,h}
The close button is back...


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20787 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-06 15:48:58 +00:00
Abdelrazak Younes
3ca9ddb6ed Move most of the Gui specific code in Toolbars to its new qt4 specialization GuiToolbars.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20644 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-01 20:45:50 +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
André Pönitz
c9ea6e6eef the fun begins....
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20077 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-05 20:33:29 +00:00
André Pönitz
9a95d2a936 rename a few view functions from foo() to fooView()
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20024 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-03 20:28:26 +00:00
André Pönitz
a1cec91afa move our stuff off the Q* namespace
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19935 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-31 05:53:55 +00:00
Abdelrazak Younes
ebff6bd6fb Transfer command buffer handling to QLToolbar.
* Toolbar::focusCommandBuffer(): new pure virtual method.
* Toolbars::display(): now return the address of the found toolbar.
* GuiView: get rid of command_buffer_, transferred to QLToolbar.
* QCommandBuffer: replace focus_command with setFocusProxy on edit_;



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19767 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-24 07:13:07 +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
a2022b1950 Delete include of config.h. This was needed only for the qt3 port.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19747 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 08:58:22 +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
588c4ba3ec Probable compile fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19557 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-14 13:20:16 +00:00
Abdelrazak Younes
3d1cfa550b Transfer Drag&Drop handling from GuiWorkArea to GuiView.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19556 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-14 13:14:47 +00:00
Peter Kümmel
69a81aecfa add tab close button
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18739 a592a061-630c-0410-9148-cb99ea01b6c8
2007-06-11 14:53:36 +00:00
Lars Gullik Bjønnes
897436efbb Whitespace cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18550 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-28 22:27:45 +00:00
Bo Peng
00e305c9d9 Rename .C ==> .cpp for files in src, part one
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18018 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-26 04:41:58 +00:00
André Pönitz
c6b932f467 code cosmetics whitespace, unneeded lyx:: qualification, indentation, unneeded destructors and the like
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17994 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-25 16:39:21 +00:00
Michael Schmitt
db36eae4c0 * frontends/LyXView.h:
* frontends/qt4/GuiView.C:
	* frontends/qt4/GuiView.h:
	* frontends/qt4/QLToolbar.C:
	* frontends/Toolbars.C:
	* frontends/Toolbars.h:
	* ToolbarBackend.C: use better names for ToolbarInfo variables


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17894 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-21 17:38:43 +00:00
Edwin Leuven
f73cedc1d0 * Refactoring of ToolbarBackend.[Ch] into
toolbaritems, toolbar(info) and backend

  stdtoolbars.inc now defines the toolbars inbetween
  a ToolbarSet/End tag just as the menus

* the other files contain straightforward changes
  because of the toolbarbackend refactoring


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17867 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-19 19:43:15 +00:00
Peter Kümmel
38cdcd70c1 fix bug: vert. maximized window is completely maximized after restart
src/frontends/Application.h : enum for maximized
src/frontends/LyXView.h     : enum for maximized
src/frontends/qt4/GuiView.h : enum for maximized
src/frontends/Application.C : enum for maximized
src/lyx_main.C              : enum for maximized
src/frontends/qt4/GuiView.C : restore complete, vert. hor. maximized window



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17463 a592a061-630c-0410-9148-cb99ea01b6c8
2007-03-17 12:28:26 +00:00
Bo Peng
f189214a89 Session: restore toolbars in the right order and location
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16963 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-31 02:39:46 +00:00
Jürgen Spitzmüller
e36f9947cb * src/frontends/qt4/GuiView.[Ch]:
- fix false toolbar positioning for qt < 4.2.2
	- only add ToolBarBreak if the toolbar exceeds the line
	  (not perfect yet)

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16927 a592a061-630c-0410-9148-cb99ea01b6c8
2007-01-29 14:23:05 +00:00
Abdelrazak Younes
42426e1423 Fix focus on WorkArea after mini-buffer command.
* LyXView:
  - setFocus(): new pure virtual method.

* QCommandBuffer:
  - simplify Ctor
  - call GuiView::setFocus() instead of centralWidget()->setFocus()

* GuiView:
  - implement setFocus():
  - focusNextPrevChild(): use setFocus().


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16386 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-23 17:09:50 +00:00
Abdelrazak Younes
9e4ac7fca9 Fix Tab and Ctrl-Tab keys handling and focus problems related to it.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16381 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-22 16:13:19 +00:00
Abdelrazak Younes
8f90d0bb96 Partial Fix for Tab key press bug. It is now properly processed but the focus is not returned to the WorkArea afterward.
* WorkArea.h: processKeySym() is now public

* GuiView:
  * event(): new method to intercept Tab key press.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16352 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-20 21:28:05 +00:00
Jean-Marc Lasgouttes
4f8febc1b4 * QLMenubar.C (macxMenuBarInit): fix workaround for menu merging
with Qt/Mac. Still does not work in non-default locale.

	* QLPopupMenu.C (specialMacXmenuHack): remove, not needed anymore.

	* GuiView.C (init): remove Mac hack, not needed anymore.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16349 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-20 14:28:06 +00:00
Enrico Forestieri
d08210e961 Fix cancel on quit
* src/lyxfunc.C
	(LyXFunc::dispatch): Move to GuiView::closeEvent the session code
	for lastpos in LFUN_LYX_QUIT. Check for unsaved changes before
	initiating the quit procedure in LFUN_LYX_QUIT and LFUN_WINDOW_CLOSE. 

	* src/frontends/qt4/GuiView.h
	(class GuiView): New boolean member quitting_by_menu_.

	* src/frontends/qt4/GuiView.C
	(GuiView::GuiView): Initialize quitting_by_menu_.
	(GuiView::close): Set to true quitting_by_menu_ before calling
	the quit procedure and reset it afterwards.
	(GuiView::closeEvent): Account for the close window button.
	Save last positions to the session file. Remove wrongly placed
	call to quitWriteAll.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16248 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-12 01:39:50 +00:00
Peter Kümmel
f6cf871deb fix quit problems on Mac
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16153 a592a061-630c-0410-9148-cb99ea01b6c8
2006-12-03 10:05:41 +00:00
Peter Kümmel
9dfe4a10d3 also support the geometry option on Windows + Qt/Windows
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16105 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-29 16:45:38 +00:00
Peter Kümmel
dfb079e778 add tool bar popup with three icon sizes: small, normal, big
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16100 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-29 10:04:35 +00:00
Peter Kümmel
c7a3620eeb fix wrong toolbar icon size, default value is
in lyx_main.C. Size will be stored in the session
file.

*      src/lyx_main.C              : default value
*      src/frontends/Application.h : restore also icon size
*      src/frontends/LyXView.h     :        "
*      src/frontends/qt4/GuiView.h :        "
*      src/frontends/qt4/GuiView.C :        "
*      src/frontends/Application.C :        "



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16085 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-27 23:35:43 +00:00
Peter Kümmel
3ae92a71ed disable toolbar popup menu, this is better than the current state
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15809 a592a061-630c-0410-9148-cb99ea01b6c8
2006-11-08 23:10:46 +00:00
Peter Kümmel
8669b0087e Add tab support
frontends/LyXView.h
	- add tab update function 
	
frontends/qt4/GuiView.h
	- add tab update function
	- add function for setting up the tabs
	- add slot for the tab clicks
	- add pimpl
	
frontends/qt4/GuiImplementation.C
	- don't set the buffer as central widget 
	  but initilize the tabs
	  
frontends/qt4/GuiView.C
	- use QTabBar for switching
	- scan the bufferlist on updates
	
frontends/LyXView.C
	- also update the tabs
	


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15637 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-31 14:12:46 +00:00
Abdelrazak Younes
128a8ef3e8 This commit fixes 3 crashes when reverting a document:
1) crash in GuiWorkArea::paintEvent(), this one is solved by by encapsulating the file loading in LyXView by busy(true)/busy(false) and by disabling/enabling the work area update in GuiView::busy().

2) crash in the cursor blinking because the cursor is timed out at the moment you click on "Revert". So the blinking cursor is now disabled/enabled in GuiView::busy().

3) crash in BufferView::setBuffer() because the current buffer was already closed folling the "revert" command. 
* BufferView::loadLyXFile(): set buffer_ to 0 in case of a reload (when document is reverted)

* LyXView:
  - busy() is not const anymore (work_area_ is modified in GuiView) 
  - loadLyXFile(): encapsulate the file loading with busy(true)/busy(false)
  - setBuffer(): encapsulate the buffer-switching with busy(true)/busy(false)

* GuiView::busy()
  - disable/enable workarea updates.
  - disable/enable blinking cursor.

* WorkArea: new startBlinkingCursor() and stopBlinkingCursor() methods.

* rowpainter.C:
  - paintText(): make sure there is a Buffer from which to paint.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15556 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-26 13:29:10 +00:00
Abdelrazak Younes
55eae1a7f8 * Gui.h: new closeAll() pure virtual method.
* qt4/Alert_pimpl.C: make sure the proper Qt attributes are set.

* GuiApplication::quitLyx(): add the "force" argument to the funcRequest.

* GuiImplementation:
  - GuiImplementation(): remove the signal connection. This was triggered after the LastWindowClosed signal so was not useful.
  - cleanupViews(): renamed to unregisterView() and handle the WorkAreas as well.
  - closeAll(): new method (from LyXView).

* GuiView.C
  - clean up the includes order.
  - closeEvent(): make sure that theBufferList().quitWriteAll() is called if last window closed.

* lyx_main.C / LyX::quit():
  - remove noAsk argument
  - delete bufferList::quitWriteAll() call (this is handled in the frontend).
  - delete Session stuff (ditto)

* LyXFunc::dispatch()
  - LFUN_LYX_EXIT: close all window before exiting from user command (as opposed to last window closed).



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15535 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-24 15:01:07 +00:00
Abdelrazak Younes
f4857dab04 new LFUN_WINDOW_CLOSE
* LyXFunc:
  - dispatch(): transfer assertion on lyx_view_ to each LFUN on a case by case basis.
  - dispatch(): new LFUN_WINDOW_CLOSE
  - getStatus(): special treatment for LFUN_LYX_QUIT

* LyX:
  - views_, addLyXView(): deleted
  - quit(): call saveGeometry() on each LyXView before exiting.

* GuiApplication:
  - is now a QObject.
  - quitLyX(): new Qt slot for lastWindowClosed signal.

* Gui.h:
  - destroyView(), destroyWorkArea(): deleted
  - viewIds(): new method

* GuiImplementation:
  - implement above changes.
  - GuiImplementation is now a QObject
  - cleanupViews(): new private slot.
  - buildViewIds(): new helper method
  - views_ and work_areas_ are now maps of raw pointers instead of schared_ptr.

* LyXView
  - now stores its id.
  - dispatch(): special treatment for LFUN_WINDOW_CLOSE.
  - workAreaIds(): new method.
  - close(): new pure virtual method.
  - saveGeometry(): new pure virtual method.

* GuiView:
  - implements above changes.
  - GuiView(): set WA_DeleteOnClose and Qt::WA_QuitOnClose to let Qt manage the destruction on close().
  - closeEvent(): session stuff transfered to saveGeometry()

* WorkArea
  - now store its id.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15514 a592a061-630c-0410-9148-cb99ea01b6c8
2006-10-23 16:29:24 +00:00
Abdelrazak Younes
3a1f656e4e * Application: new createView() method
* gtk/qt3/qt4/GuiApplication: createView() method deleted

* LyXView:
 - init(): is now a pure virtual method. autoSave code transferred to constructor and updates to the frontends.
 - setGeometry(): new pure virtual method

* gtk/GView, qt3/QtView, qt4/GuiView: adapted to above change
 - setGeometry(): code transfered from GuiApplication

* lyx_main.C: call LyX::ref().addLyXView() in there instead of in Application::createView()


* 

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15183 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-29 23:10:17 +00:00
Abdelrazak Younes
12a82dd4f2 This commit replaces BufferView->LyXView->Gui->[selection,clipboard] with theApp->[selection,clipboard]
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15125 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-22 15:02:41 +00:00
Abdelrazak Younes
a6444784dc A bunch of conversion to docstring.
- bformat(): contributed by Georg Beaum
- Alert::XXX
- error(): in SpellBase, ispell, psell, aspell, buffer, etc.
- message(), message signal
- displayMessage(), setMessage,
- ErrorItems
- prettyName()
- makeDisplayPath()

and maybe some more...


- etc... 

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14970 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-11 08:54:10 +00:00
Abdelrazak Younes
c9c47c6464 * LyXView.h:
- makeToolbar(): new pure virtual method

* qt4/GuiView.h:
  - makeToolbar(): new method transferred from QLToolbar

* qt4/QLToolbar: derive from QToolBar instead of owning a QToolBar member.

* Toolbars.h: remove make_toolbar() prototype (use LyXView::makeToolbar instead).



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14964 a592a061-630c-0410-9148-cb99ea01b6c8
2006-09-10 11:03:21 +00:00
Abdelrazak Younes
58d136aa60 * GuiView:
- mainWidget(): deleted

* GuiImplementation.C: adapted to above change.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14624 a592a061-630c-0410-9148-cb99ea01b6c8
2006-08-12 16:25:51 +00:00
Abdelrazak Younes
e1a5cb74a8 GUI API Cleanup step 3: merge with "younes" branch.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14448 a592a061-630c-0410-9148-cb99ea01b6c8
2006-07-13 16:37:55 +00:00
Lars Gullik Bjønnes
d2b2aa8124 Make signals and slots to not be defined, and replace them with Q_SIGNALS and Q_SLOTS
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14277 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-30 14:37:33 +00:00
Abdelrazak Younes
3287c44f33 GUI API Cleanup step 2: merge of the "younes" branch.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14231 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-26 16:55:35 +00:00
Peter Kümmel
04cfa65a96 fix: qt3/qt4 save/restore of the window geometry and maximize status
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14166 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-21 10:30:32 +00:00
Abdelrazak Younes
d46add7754 QtView renamed to GuiView
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14154 a592a061-630c-0410-9148-cb99ea01b6c8
2006-06-20 09:33:01 +00:00