Commit Graph

616 Commits

Author SHA1 Message Date
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
cdf1378200 Introducing TextClassPtr.h to minimize header dependencies.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21506 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-07 23:25:08 +00:00
Abdelrazak Younes
f84080f01c * Bufferview::updateMetrics(): Separate out the SinglePar optimization.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21463 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-06 08:32:25 +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
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
Abdelrazak Younes
5ddc612b73 Splitup Font in saner bits:
* Font::FontBits -> FontInfo
* Font::FONT_XXX -> all enums transfered to FontEnums.h and renamed to FontXxx

I've replaced Font uses with FontInfo were the language() member was not needed, basically all draw() and metrics methods. There's one problematic cases with InsetQuotes which I solved by taking the Buffer main language.




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21240 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-28 18:51:54 +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
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
Abdelrazak Younes
01ac256b90 compil fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21030 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-18 09:24:16 +00:00
André Pönitz
33e397dff8 use "real" resources
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21007 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-17 18:28:45 +00:00
Abdelrazak Younes
07ac8a473b Reduce use of dynamic_cast.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20980 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-16 06:50:09 +00:00
André Pönitz
200f5a292f mainly reduce include dependencies
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20976 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-15 22:43:55 +00:00
Abdelrazak Younes
9a458ec6e9 Move private part of BufferView to a private implementation.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20896 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-11 09:59:01 +00:00
Abdelrazak Younes
1a600cbff0 * GuiToc: make it work.
* GuiView::activate event: remove explicit updateToc() call as this is already done as part of updateBufferDependent().


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20864 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-09 08:06:36 +00:00
Abdelrazak Younes
0f67ab46b7 Transfer some more code from GuiView to TabWorkArea.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20807 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-07 08:12:20 +00:00
Abdelrazak Younes
769185bc90 Transfer some code from GuiView to TabWorkArea.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20806 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-07 08:05:02 +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
ee1c4b7aee Transfer the setting of the current LyXView from workArea::focusInEvent() to GuiView activation event.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20732 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-04 15:46:58 +00:00
Abdelrazak Younes
9271a64edd Fix tab text update when file name changes.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20729 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-04 10:16:06 +00:00
André Pönitz
095cf23394 shuffle some code around
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20706 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-03 18:56:37 +00:00
Abdelrazak Younes
4fc79439ad Add some more updates on window switch.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20684 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-03 08:03:01 +00:00
Abdelrazak Younes
4461bbc42e Fix toc widget on window switch.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20683 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-03 07:49:15 +00:00
Abdelrazak Younes
51b5c6ae04 Oups... Fix crash on startup...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20681 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-03 07:17:58 +00:00
Abdelrazak Younes
1fe543fcd5 Fix some crashes on exit and on windows switch.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20680 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-03 07:12:28 +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
Abdelrazak Younes
fce745f111 Simplify WorkArea (de-)registering: now done at WorkArea construction and destruction.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20665 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-02 16:32:58 +00:00
Abdelrazak Younes
f0402e69c6 Fix some issues with buffer closing.
* Switch WorkAreaManager to std::list instead of vector.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20664 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-02 14:39:48 +00:00
Abdelrazak Younes
5249b74e5b Cosmetics.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20656 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-02 09:12:13 +00:00
Abdelrazak Younes
4ce0961b5a Replace Buffer' changed() and closing() signals with a WorkAreaManager before Andre erase everything :-)
The resulting source code is not much bigger actually.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20654 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-02 09:00:08 +00:00
Abdelrazak Younes
fc742ab7d2 Some fixes and cleanup to command buffer.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20652 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-02 06:59:02 +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
Jean-Marc Lasgouttes
619a52ecc4 compilation fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20638 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-01 14:21:33 +00:00
André Pönitz
4eedb8abd6 cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20574 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-28 23:26:59 +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
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
André Pönitz
1e62913610 cosmetics.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20319 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-16 20:58:22 +00:00
Richard Heck
12ac451406 Surely we do not need to see this every time either.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20271 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-14 06:35:59 +00:00
Richard Heck
50a7ee7633 Surely we do not need to see this every time.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@20270 a592a061-630c-0410-9148-cb99ea01b6c8
2007-09-14 06:33:53 +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
André Pönitz
f82c3e8e65 xpm -> png
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19922 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-30 20:09:12 +00:00
Abdelrazak Younes
a6936fe7d5 disable painting updates when adding/removing a workArea. This fixes these spurious messages with Qt4.1:
When opening another document, the following is printed to the console:

QWidget::repaint: recursive repaint detected.
QPixmap::operator=: Cannot assign to pixmap during painting
Painter must be active to set rendering hints
[repeated many times here]
Painter must be active to set rendering hints
QPainter:🔚 Painter is not active, aborted
QPixmap::operator=: Cannot assign to pixmap during painting
QPixmap::operator=: Cannot assign to pixmap during painting
currentTabChanged 1File/c/work/file2.lyx

and, when closing LyX:

QPixmap::operator=: Cannot assign to pixmap during painting
QPaintDevice: Cannot destroy paint device that is being painted.  Be sure to QPainter::end() painters!

I suspect that solving these issues might also solve the missing close
tab button problem.




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19783 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-24 22:15:20 +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
Alfredo Braunstein
68748f5344 compilation fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19754 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 14:35:31 +00:00
Abdelrazak Younes
c7d83abbac Put LyXView on a diet, step 2: Transfer ControlCommandBuffer handling from LyXView to QCommandBuffer.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19753 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 13:20:01 +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
23c7c10656 Hide tab bar if there's only one tab.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19746 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-23 08:56:13 +00:00
André Pönitz
ef521debc2 add #include for BOOST_CURRENT_FUNCTION
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19738 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-22 22:58:31 +00:00
Abdelrazak Younes
13a2812c22 Fix crash on first load with mouse wheel: this was because the scrollbar was not updated.
* loadLyXFile::setBuffer(): get rid of a premature optimisation, we make sure that everything is properly drawn in any case.

* GuiView::setCurrentWorkArea(): make sure everything is updated if we don't change tab.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19717 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-22 08:48:01 +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
8ad113c30a Fix bug 4123:
http://bugzilla.lyx.org/show_bug.cgi?id=4123

* GuiView:
- closeEvent(): set quitting=true only when quitting. I don't know why and how this was changed but it was clearly wrong.
- update_view_state_qt(): only update when focus is in. Make sure this is the current LyXView.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19643 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-19 10:48:16 +00:00
Abdelrazak Younes
4d8c291cd0 cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19585 a592a061-630c-0410-9148-cb99ea01b6c8
2007-08-15 08:29:10 +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
Abdelrazak Younes
d3b4961e16 With or without multiview, a crash can happen randomly if the statusbar timer times out after the view is closed. Two reason for that:
1) LyXFunc::lyx_view_ is not set to 0
2) quiting is not set to true.

This patch add safe guards when closing a view and/or exiting.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19095 a592a061-630c-0410-9148-cb99ea01b6c8
2007-07-17 09:21:52 +00:00
Stefan Schimanski
dcaab3cfdd * make close tab button smaller
* remove spacing in the layout of the tab bar and the central widget


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18770 a592a061-630c-0410-9148-cb99ea01b6c8
2007-06-14 17:57:07 +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
e36fba33ab Last (?) batch of renames:
src/frontends/Alert.h src/frontends/alert.h
src/frontends/Alert.cpp src/frontends/alert.cpp
src/frontends/Alert_pimpl.cpp src/frontends/alert_pimpl.cpp
src/frontends/qt4/Alert_pimpl.cpp src/frontends/qt4/alert_pimpl.cpp
src/frontends/controllers/ButtonPolicies.cpp src/frontends/controllers/ButtonPolicy.cpp
src/frontends/controllers/ButtonPolicies.h src/frontends/controllers/ButtonPolicy.h
src/insets/InsetEnv.cpp src/insets/InsetEnvironment.cpp
src/insets/InsetEnv.h src/insets/InsetEnvironment.h
src/mathed/MathMacroTable.h src/mathed/MacroTable.h
src/mathed/MathMacroTable.cpp src/mathed/MacroTable.cpp
src/lyx_cb.h src/callback.h
src/lyx_cb.cpp src/callback.cpp
src/UpdateFlags.h src/update_flags.h


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18076 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-28 20:44:46 +00:00
André Pönitz
50016ccf3a rename LyXKeySym into KeySymbol
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18059 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-27 08:43:38 +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
Bo Peng
8c5f097b5d Rename .C ==> .cpp for files in src/frontends/qt4, part two
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18015 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-26 03:53:51 +00:00