Commit Graph

50 Commits

Author SHA1 Message Date
Simon Rozman
770e0bcd16 Improve high DPI support in wxAui
Window initial/minimum/maximum sizes are now treated as logical pixels.

Furthermore, many margins and paddings are now converted using
wxWindow::FromDIP() to allow their growth in accord with screen DPI.
This places buttons on toolbars more apart on high DPI screens providing
space for easier touch operations.

Closes https://github.com/wxWidgets/wxWidgets/pull/933
2018-09-17 22:54:29 +02:00
Vadim Zeitlin
64fc4dc6cd Merge branch 'aui-docview'
Make it possible to easily use AUI classes instead of the standard MDI
docview frames.

Also fix a few old and dirty hacks in AUI code.

See https://github.com/wxWidgets/wxWidgets/pull/808
2018-06-10 14:53:39 +02:00
Vadim Zeitlin
67cb0ad260 Fix signed/unsigned comparison warning in wxAuiMDIClientWindow
This was introduced in c2fcc14bac, see
https://github.com/wxWidgets/wxWidgets/pull/802
2018-05-15 18:45:37 +02:00
Vadim Zeitlin
a57c192023 Adjust wxAuiMDIClientWindow tabs height to icons automatically
Don't explicitly set the default icon size, this isn't really necessary
and just prevents things from working correctly if the child frames use
icons of a different (especially bigger) size.

Still try to use the icons of the standard size by default, but let
wxAuiNotebook adjust to bigger icons if this is what we have.
2018-05-13 02:47:21 +02:00
Vadim Zeitlin
be696ed8a4 Reuse base class icon-related functions in wxAuiMDIChildFrame
Don't define GetIcon(), GetIcons() and SetIcon() at all as the base
class already implements them and just keep SetIcons(), which can now be
marked as overridden as it's inherited from wxTopLevelWindow via
wxTDIChildFrame.
2018-05-13 02:46:33 +02:00
Vadim Zeitlin
f7b0ec38dd Remove useless wxAuiMDIClientWindow::SetSelection()
It just called the base class version, so it's better to not have it at
all.
2018-05-13 02:45:40 +02:00
Vadim Zeitlin
6cdd564237 Redo layout from wxAuiMDIChildFrame::Show()
This makes using this class more similar to using wxMDIChildFrame and
fixes the initial appearance of docview sample child windows in AUI
mode.
2018-05-13 02:45:40 +02:00
Vadim Zeitlin
2e5554019a Allow calling wxAuiMDIChildFrame::Show()
Even if it doesn't do anything, allow calling this method even after
creating the child frame for consistency with the normal MDI
implementation.
2018-05-13 02:45:40 +02:00
Vadim Zeitlin
24e06054fc Remove wxAuiMDIChildFrame::DoShow()
This method is confusing as it's not used for implementing Show(), which
is the usual naming convention when both Foo() and DoFoo() members
exist, and gives no clear indication about what does it really do.

Just call wxWindow::Show() directly instead.

Also create the wxAuiMDIChildFrame window hidden from the beginning,
instead of creating it in a visible state and then hiding it.
2018-05-13 02:45:40 +02:00
Vadim Zeitlin
ceee16c01a Remove sizing hacks from wxAuiMDIChildFrame
There doesn't seem to be any reason for overriding DoSetSize() and
DoMoveWindow(), so just stop doing it.

Notice that this was already changed for wxGTK many years ago in
a94476deb9 and there is no reason to use
different code wxGTK and other ports.
2018-05-13 02:44:18 +02:00
Vadim Zeitlin
c1bcf16eb9 Derive wxAuiMDIChildFrame from wxFrame for consistency
Make it easier to use AUI-based MDI child frame class instead of
normal wxMDIChildFrame itself by inheriting it from the same base class.

This also allows to get rid of duplicate stubs in wxAuiMDIChildFrame.
2018-05-13 02:41:58 +02:00
Robin Dunn
c2fcc14bac Ensure the selection is in range.
There are some cases when in the process of closing wxAuiMDIChildFrames that this method will be called while the current selection is out of range.
2018-05-02 19:12:41 -07:00
Dimitri Schoolwerth
8f8d58d193 Use wx-prefixed macros throughout the repository.
Change {DECLARE,IMPLEMENT}_*CLASS and {DECLARE,BEGIN,END}_EVENT_TABLE
occurrences to use the wx-prefixed version of the macros.
2015-04-23 22:00:35 +04:00
Vadim Zeitlin
3f66f6a5b3 Remove all lines containing cvs/svn "$Id$" keyword.
This keyword is not expanded by Git which means it's not replaced with the
correct revision value in the releases made using git-based scripts and it's
confusing to have lines with unexpanded "$Id$" in the released files. As
expanding them with Git is not that simple (it could be done with git archive
and export-subst attribute) and there are not many benefits in having them in
the first place, just remove all these lines.

If nothing else, this will make an eventual transition to Git simpler.

Closes #14487.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-26 16:02:46 +00:00
Vadim Zeitlin
91ad3a26e3 Test for wxAuiMDIClientWindow being non-NULL before using it.
wxAuiMDIParentFrame::GetActiveChild() may be called before the client window
is created, don't crash in this case but just return NULL.

Closes #14684.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72601 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-01 09:55:27 +00:00
Vadim Zeitlin
0d1dd76baa Merge "selected" and "active" child in wxAuiMDIParentFrame.
They are one and the same thing and so just make them really synonymous
instead of (unsuccessfully) trying to keep them synchronized.

Closes #14684.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72556 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-26 12:20:07 +00:00
Vadim Zeitlin
445a98c7d2 Explicitly include wx/aui/dockart.h from the file needing it.
src/aui/tabmdi.cpp needs wxAuiDockArt declaration as it uses it, don't rely on
wx/aui/dockart.h being included from other wxAUI headers and include it from
here explicitly.

See #14098.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71000 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-25 17:55:52 +00:00
Vadim Zeitlin
9827ce9208 Enable/disable "Window" menu items in AUI MDI correctly.
Add EVT_UPDATE_UI handlers for "Close", "Close All" as well as "Next" and
"Previous" menu commands.

Closes #14102.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70909 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-15 13:49:54 +00:00
Vadim Zeitlin
9a29fe70bc Change variables naming convention in wxAUI code.
Use the standard wxWidgets camelCase convention instead of the
old_one_using_underscores for all the private variables.

Closes #13476.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69590 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 14:20:03 +00:00
Vadim Zeitlin
74e0e33a85 Remove apparently unnecessary wxAuiMDIClientWindow dtor.
This dtor doesn't seem to do anything useful as the base class dtor already
destroys all window children anyhow and removing it is reported to fix some
crashes in wxAUI (which is surprising and probably hides some other bug...).

Closes #13547.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69588 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-30 14:19:55 +00:00
Vadim Zeitlin
d3b9f782ef don't use annoying and unneeded in C++ casts of NULL to "T *" in all other files neither
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58227 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-19 13:55:27 +00:00
Benjamin Williams
8691bf118c applied patch 1908782 wxAuiMDIChildFrame not removed from wxAuiMDIClientWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-05-09 18:59:19 +00:00
Vadim Zeitlin
6e42617af4 don't assign the returned value in wxMDIParentFrame::OnCreateClient() to any member variables, this is the job of the caller (according to documentation and wxMSW code) (modified patch 1910602)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52537 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-15 03:12:47 +00:00
Paul Cornett
cedd7b22f4 indentation cleanup, unused variables, constant expressions, etc
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47122 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-04 20:54:36 +00:00
Benjamin Williams
092d7f88f6 prevent disappearing menus in tabmdi
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44783 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-12 13:52:34 +00:00
Vadim Zeitlin
ccc8c01a11 don't delete m_pActiveChild twice in wxWINDOWCLOSEALL event handler (patch 1665395, bug 1661995)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44658 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-07 22:59:11 +00:00
Robin Dunn
b0a54b8a6b Fixes for segfaults when the parent frame is destroyed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44104 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-01-06 08:59:01 +00:00
Benjamin Williams
d606b6e977 added wxAuiNotebook::Split(); hooked up wxAuiMDIParentFrame::Tile() to it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43704 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-28 15:25:59 +00:00
Benjamin Williams
254a342953 renamed wxAUI_ART to wxAUI_DOCKART
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43465 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-17 11:28:17 +00:00
Benjamin Williams
ca0d44071c tab ctrl height api fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43388 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-13 07:03:51 +00:00
Benjamin Williams
9fbb7d80f8 tab sizing and split sizing fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43366 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-12 20:32:40 +00:00
Benjamin Williams
e7e324bed8 ability to create tab mdi children without activating page
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43262 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-10 08:11:01 +00:00
Benjamin Williams
c5e2ca7c52 wxAuiMDI* now more accurately respects normal mdi event sequence
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43245 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-09 22:06:40 +00:00
Benjamin Williams
ea53a6014a flicker reduction on gtk
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43229 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-09 16:42:01 +00:00
Benjamin Williams
e0dc13d470 wxAuiMDI* patches through images to wxAuiNotebook
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43206 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-08 19:07:52 +00:00
Benjamin Williams
f39fddcd9e accessor functions for wxAuiMDIParentFrame
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43190 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-08 10:31:52 +00:00
Benjamin Williams
7e1f1a1328 fixed event processing bug in tabmdi
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43157 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-07 12:52:02 +00:00
Benjamin Williams
695c008862 implemented wxAUI_NB_TAB_SPLIT and wxAUI_NB_TAB_MOVE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42951 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-02 15:40:02 +00:00
Benjamin Williams
8856768e6e fixed bad rename
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42920 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-01 20:02:40 +00:00
Benjamin Williams
a3a5df9d92 wxaui big class rename
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42916 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-01 18:51:44 +00:00
Vadim Zeitlin
d3b647c2df removed more unused variables (thanks Borland)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42689 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-29 23:40:23 +00:00
Robert Roebling
ee0a94cfc2 Commited FRM's stockitem patch (empty stock items).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40978 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-03 12:23:04 +00:00
Chris Elliott
25f70bc4a1 add #if wxUSE_AUI to get VC6 with no wxUSE_AUI to compile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40657 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-08-18 08:05:41 +00:00
Benjamin Williams
f9c240ec1e supress unused var warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40390 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-31 07:24:23 +00:00
Benjamin Williams
a94476deb9 wxaui/tabmdi size fix for gtk
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40352 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-28 16:03:22 +00:00
Benjamin Williams
82dc21d343 tabmdi menu fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40258 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-24 08:40:08 +00:00
Benjamin Williams
3184454fc0 removed some commented-out code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40254 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-24 07:16:20 +00:00
Włodzimierz Skiba
4444d148a5 Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40252 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-24 06:30:49 +00:00
Benjamin Williams
fe498448fc compile fixes on wxGTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40231 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-22 13:12:49 +00:00
Benjamin Williams
cd05bf23f6 added notebook.cpp and tabmdi.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40218 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-21 13:35:00 +00:00