The previous fix was nonsense. It appeared to be a shameful copy-paste error. GuiView::disconnectBufferView() was exactly the same as GuiView::disconnectBuffer().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31150 a592a061-630c-0410-9148-cb99ea01b6c8
We don't want a master buffer to release all its children immediately because that would close dirty childs without saving and would make it impossible to store the childs in a proper way in the session file.
As, we close all children of a buffer together with the master itself, it is also no longer necessary to do it automatically.
I'll leave it commented out for a while in case someone objects to it.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31130 a592a061-630c-0410-9148-cb99ea01b6c8
For now, I stick to the convention that closing a buffer, will close it in all tabworkareas and all views. Therefore, when choosing File->Close All, we still close all buffers.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31126 a592a061-630c-0410-9148-cb99ea01b6c8
Closing a tab group will now hide the buffers, but if buffers are dirty it will first ask you to save it.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31124 a592a061-630c-0410-9148-cb99ea01b6c8
This fixes yet another bug. Previously, when a master was closed, its child buffers were also released without asking to save dirty buffers. (What a mess!).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31104 a592a061-630c-0410-9148-cb99ea01b6c8
to add small width so all bullets are again inside the area.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31090 a592a061-630c-0410-9148-cb99ea01b6c8
Besides that, this can also been seen in 1.6.3. If you have a master and a dirty child, and the dirty child is the second tab, you'll see that when closing LyX, LyX will ask twice whether you want to save the file. Once if the file itself is closed, a second time if the master is closing all his children.
See also the previous commit that treats the case in which the tabs were switched around.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31074 a592a061-630c-0410-9148-cb99ea01b6c8
Now we can also pass the WorkArea we would like to close. This fixes also the problem that hideWorkArea still wasn't correct. That's a consequence of the fact that we relied on currentMainWorkArea(). I wanted to get rid of that anyway.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31063 a592a061-630c-0410-9148-cb99ea01b6c8
The first thing that bformat does is to check whether the string contains "%1$s". Otherwise it asserts.
Why didn't we see this happen before ? This was revealed by the emergency saves that Richard introduced in the Buffer dtor.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31062 a592a061-630c-0410-9148-cb99ea01b6c8
Use this function in closeBufferAll, and use closeBuffer to hide the buffer. Now, closeBuffer will decide whether we need to save the buffer or not. Previously, the buffer got hidden even if it was dirty.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31059 a592a061-630c-0410-9148-cb99ea01b6c8
In setCurrentWorkArea d.current_work_area_ is used which is invalidated by deleting the TabWorkArea.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31054 a592a061-630c-0410-9148-cb99ea01b6c8
The problem is that all toolbars are deleted and thus also the LayoutBox, which I made a member of GuiView.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31051 a592a061-630c-0410-9148-cb99ea01b6c8
Now, the option "Hide Tab" uses closeBuffer and asks for saving intead of instantly removing the workArea.
This is part of bug #5893: we try to make sure that there are no dirty hidden buffers.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31043 a592a061-630c-0410-9148-cb99ea01b6c8