Commit Graph

840 Commits

Author SHA1 Message Date
Richard Heck
1741c87a4e Fix bug 4463. The crash was due to a call to X from inside a child process.
The main change is to support/ForkedCalls.{h,cpp}. We introduce a static variable IAmAChild and a corresponding accessor. This is set to true in a new fork() method, in the branch taken by the child. (Note: fork() is safe cross-platform, as it just returns -1 if we don't have fork().) This ForkedProcess::iAmAChild() method is then used to protect GuiView::message().

As Abdel has pointed out, there may be other such calls to be protected, e.g., the emission of the Buffer::changed() signal. Those are not addressed here.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22587 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-15 18:26:53 +00:00
Abdelrazak Younes
a84fa1ce00 Transfer Tab and Shift-Tab keys special handling from GuiView::event() to GuiWorkArea::event(). Add some comments.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22477 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-10 09:04:30 +00:00
Abdelrazak Younes
02fd454216 header cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22316 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-26 14:21:50 +00:00
Abdelrazak Younes
fc2658eff0 initial basic context menu support.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22309 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-26 12:40:58 +00:00
Abdelrazak Younes
722329490b Simplify MenuBackend and menubar interactions.
* GuiMenubar: freed from GuiView and QMenuBar, renamed to 'Menus'
* GuiView: just use the standard QMenuBar.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22308 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-26 10:55:43 +00:00
Abdelrazak Younes
518871a52b Don't pretend we have multiple menu backends: transfer the singleton to GuiApplication.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22303 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-25 22:27:32 +00:00
Stefan Schimanski
83980d504c * cosmetic
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22267 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-23 00:49:18 +00:00
Stefan Schimanski
4267ad00cd * math macro toolbar can be made automatic
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22265 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-23 00:47:37 +00:00
Abdelrazak Younes
93289e8fe1 Fix cursor positionning on new buffer.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22238 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-21 20:01:11 +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
Enrico Forestieri
d73f28eec1 Revert qprocess code. Revisions reverted: 22026, 22030, 22044, 22048,
22077, 22078, 22079, 22080, 22081.

Sorry Peter, but this was breaking too many things, see discussions
on lyx-devel.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22101 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 18:25:53 +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
b2d28409fe Change GuiProgress identifier and description.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22077 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-11 08:20:30 +00:00
Abdelrazak Younes
41681e7185 Add common session handling infrastructure for dialogs.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22061 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-10 13:05:00 +00:00
Abdelrazak Younes
604c1148ea Factorize general code out of GuiDialog and into the base Dialog class. This is now possible thanks to the moving of Dialog.{cpp,h} to qt4/. Any dialog must inherit QWidget within Qt so it is safe to use Dialog::asQWidget() method (which is similar to dynamic casting).
* GuiDialog now inherits DialogView. GuiDialog is only there to bring the ButtonController archaeological interface; any new dialog should inherit DialogView and any new dock widget should inherit DockView.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22049 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-09 22:35:04 +00:00
Abdelrazak Younes
2bdb10271c Fix Drag&Drop. LFUN_FILE_OPEN is not handled by GuiView::dispatch() (yet).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22029 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-09 08:43:08 +00:00
Peter Kümmel
3af56311a7 add progress view of system calls
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22026 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-08 20:46:03 +00:00
Abdelrazak Younes
8cd46dd3c3 No need to update the prefs dialog if it is not visible.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22015 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-08 14:29:29 +00:00
Abdelrazak Younes
e19ad69e81 New file is placed in current directory by default.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22005 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-07 22:28:03 +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
f53f60b1ce fix crash.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21881 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-30 18:34:25 +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
089c21ba76 no need to cast anymore
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21810 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-26 23:55:16 +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
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
f745a9c3c5 Take care of cursor update flags correctly and redraw if needed.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21739 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-23 11:45:20 +00:00
Abdelrazak Younes
3eb9c09679 Fix crash on exit.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21738 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-23 11:19:42 +00:00
Abdelrazak Younes
10cc0a8842 Simplify Dialog::name() handling.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21736 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-23 10:45:14 +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
95b1b94e32 cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21721 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-22 23:47:13 +00:00
André Pönitz
b43ce80676 cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21720 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-22 23:34:57 +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
573722b8de compile fix. Sorry.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21718 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-22 22:49:11 +00:00
Abdelrazak Younes
b42e2d61d8 Updates controls after reinitialization.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21712 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-22 07:33:18 +00:00
Abdelrazak Younes
a37a73e3c9 Introducing GuiMenubar::init() to avoid destructing the object in order to re-initialize it.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21694 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-21 21:14:34 +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
e615380e42 Fix crash when closing a buffer.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21685 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-20 22:23:06 +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
c0a9d2587c Painting tweaks:
- avoid one redraw on file loading due to a resize event.
- fix the initial offset_ref_ value of BufferView.
- add new TabWorkArea::addWorkArea() method.
- avoid tab bar flashing when only one file is opened.




git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21674 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-19 10:04:14 +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
André Pönitz
719a7beb48 make Application slimmer
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21659 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-17 22:37:33 +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
Abdelrazak Younes
ce46ca8653 Hopefully fix the ignored -geometry option under X11.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21645 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-16 21:52:04 +00:00
Abdelrazak Younes
ce84d0b6fc Work around X11 Windows manager limitations.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21643 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-16 17:19:46 +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
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
37d4a67e0d brown paper bag...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21580 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-13 10:47:40 +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
4eb2740a0d Cosmetics.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21577 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-13 10:20:55 +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
600db8e21d small refactoring
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21567 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-12 23:26:51 +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
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