Commit Graph

118 Commits

Author SHA1 Message Date
Vadim Zeitlin
95316a3f24 Move menu messages handling from wxFrame to wxTLW in wxMSW.
This allows to generate the menu open/close/highlight events correctly for the
popup menus used in the dialogs.

Extend the menu sample with a test using such menus.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73562 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-02-24 13:48:13 +00:00
Vadim Zeitlin
dace99a4ef Use IsDescendant() in wxTopLevelWindow::IsActive() implementation.
Avoid wxGetTopLevelParent() which doesn't work for the strange TLWs which
override IsTopLevel() to return false, as wxMDIChildFrame does in wxMSW.
Using IsDescendant() works in any case and also is arguably more clear.

Closes #3063.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71025 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-27 11:58:05 +00:00
Vadim Zeitlin
0e1f8ea4a3 Remove wxMGL port.
The company behind MGL toolkit (SciTech) doesn't exist since several years and
this port is not used by anybody, so remove it to ease maintenance burden.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70353 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-15 14:46:41 +00:00
Vadim Zeitlin
bd362275b8 Remove Palm OS port.
The platform targeted by this port doesn't exist any more and the port never
achieved really working state so remove the code to avoid having to maintain
it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70345 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-15 01:05:28 +00:00
Vadim Zeitlin
6a0e4ead1e Add wxTopLevelWindow::SetRepresentedFilename().
This currently is only implemented under OS X and sets the proxy icon there
but could be implemented to do something useful under the other platforms too
in the future.

Closes #13797.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70295 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-08 14:52:47 +00:00
Vadim Zeitlin
e65ae1d36d Change value of wxHELP to avoid clash with wxSTAY_ON_TOP.
Using wxSTAY_ON_TOP with wxMessageDialog resulted in "Help" button appearing
since r68537 because these two constants had the same numeric value.

Avoid this by changing wxHELP value to be the same as wxCLOSE_BOX instead: the
latter can't be used with wxMessageDialog so this should solve the problem,
even if there are still conflicts. Also adjust the other button constants
values to account for wxHELP change.

Closes #13433.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69842 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-27 19:50:45 +00:00
Vadim Zeitlin
5bd0ee9966 Move wxTopLevelWindow::SetShape() down to wxNonOwnedWindow.
Also add wxNonOwnedWindow for wxMSW (which previously simply typedef'd it to
wxWindow) and document this class now that it provides some user-visible
functionality.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69364 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-10-10 10:53:23 +00:00
Vadim Zeitlin
32a925f832 Change wxDIALOG_NO_PARENT to avoid clash with wxICON_EXCLAMATION.
Use 0x20 (wxAPPLY) instead of 0x100 (wxICON_EXCLAMATION) for
wxDIALOG_NO_PARENT as otherwise using wxICON_EXCLAMATION with wxMessageBox in
wxGTK (and possibly other ports, although not wxMSW which doesn't honour
wxDIALOG_NO_PARENT for message boxes at all) resulted in not using the
specified parent for the message box and, as a side effect, not centering it
on its parent neither.

Closes #13464.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69112 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-09-17 11:06:11 +00:00
Vadim Zeitlin
6e92c2991b Fix bug with TAB being able to switch focus between MDI frames.
The keyboard navigation code correctly checked that TAB was not propagated
above the TLW containing the window in which the key was pressed to avoid
switching focus between different TLWs by pressing TAB.

However wxMDIChildFrame is not a TLW and so it was possible to switch focus
between two different MDI child frames by pressing TAB. This was unexpected
and counterintuitive, especially because the frame receiving focus was not
even activated (which might be another bug).

Fix this by adding a new wxWindow::IsTopNavigationDomain() virtual method that
can be overridden to indicate that a window is a self-contained "keyboard
navigation domain" and that keyboard events shouldn't propagate outside of it
and override it in both wxTopLevelWindow and wxMDIChildFrame to ensure that it
behaves correctly.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68502 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-03 00:45:42 +00:00
Vadim Zeitlin
9023040798 Replace wxControlContainer-related macros with wxNavigationEnabled<>.
Simply inherit classes which need to provide TAB navigation among their
children from wxNavigationEnabled<> and remove the now unnecessary
WX_DECLARE_CONTROL_CONTAINER() macros.

Also remove WX_INIT_CONTROL_CONTAINER(), WX_DELEGATE_TO_CONTROL_CONTAINER()
and WX_EVENT_TABLE_CONTROL_CONTAINER() which are not needed neither any more.

And remove the event tables which became empty after removing the last macro.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68366 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-24 22:19:33 +00:00
Dimitri Schoolwerth
d13b34d3f2 No code changes, fixed various typos.
Applied patch by snowleopard2 fixing typos in interface/. Extended the fixes throughout trunk.

Closes #13076.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67384 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-03 20:31:32 +00:00
Vadim Zeitlin
ce00f59b5b No changes whatsoever, just remove trailing whitespace.
There are no real changes in this commit but it removes all trailing white
space from our source files. This avoids problems when applying patches and
making diffs and it would be nice to prevent it from reappearing.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65680 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-30 11:44:45 +00:00
Vadim Zeitlin
71a0f42d2a Make wxTopLevelWindow::GetDefaultSize() public and document it.
This method is/will be needed by wxNonOwnedWindow in wxOSX but couldn't be
used as long as it was protected, so make it public. And as it seems that it
might be useful outside of wx itself, document it as well.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65260 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-11 16:03:55 +00:00
Vadim Zeitlin
654e324628 Change wxDIALOG_NO_PARENT value to avoid clashing with wxCENTRE.
Use a bit freed by removing wxTINY_CAPTION_HORIZ for wxDIALOG_NO_PARENT. This
allows to move it out from the lower byte of the style word to avoid conflicts
with the button selection flags which can be commonly combined with the dialog
styles.

More precisely, wxDIALOG_NO_PARENT used to clash with wxCENTRE, meaning that
wxSingleChoiceDialog, for example, was always created without parent because
its default style included wxCENTRE. This commit fixes this particular bug and
probably more similar ones.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64280 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-10 21:10:03 +00:00
Vadim Zeitlin
7282b0678a Replace wxTINY_CAPTION_{HORIZ,VERT} with a single wxTINY_CAPTION.
These two styles were always equivalent so we can just as well replace them
with a single one and stop wasting an extra bit.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64279 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-10 21:09:57 +00:00
Vadim Zeitlin
f16fad90b2 No changes, just added comments summarizing the use of style bits.
Add comments allowing to see more clearly the styles allocation.

Please make sure to amend them if you change any style values in the future.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64278 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-10 21:09:50 +00:00
Kevin Ollivier
ebf7d5c40a Add OSX prefix, and be clear that this is OS X only API to avoid any expectation that this API may work elsewhere.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62828 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-09 05:25:32 +00:00
Kevin Ollivier
efb2fa41ff Add wxTLW::SetModified to allow apps to set the TLW's dirty state. On Mac this gives us the dot in the close button, not implemented elsewhere yet.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62796 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-07 01:54:21 +00:00
Kevin Ollivier
dbc7ceb925 Initial ShowWithoutActivating implementations for Mac and Windows, and attempt to improve IsActive behavior on Mac. Also adding ShowWithoutActivating() and Show/Hide tests, but until the mainloop issues are resolved, not adding them to tests.bkl.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-10-30 05:04:47 +00:00
Vadim Zeitlin
03647350fc No changes, just removed hard tabs and trailing white space.
This commit is huge but there are no non-white-space changes in it.

Some files containing third-party sources (src/msw/wince/time.cpp,
src/x11/pango*.cpp) were left unchanged.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-08-21 10:41:26 +00:00
Vadim Zeitlin
77497ea37e Don't test whether wxTopLevelWindowNative is defined.
It seems to be defined for all ports now so there is no need to check whether it is.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61569 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-31 12:17:12 +00:00
Vadim Zeitlin
49899527ff Use base class ctors in wxTopLevelWindow.
This avoids the second call to Init() already called by wxTopLevelWindowNative.

Closes #11054.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61568 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-31 12:17:05 +00:00
Vadim Zeitlin
c0c133e13b add wx-prefixed and semicolon-requiring versions of DECLARE_NO_{COPY,ASSIGN}_CLASS macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-08 11:45:59 +00:00
Stefan Csomor
ef0e92205a fixing file paths after renaming
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54125 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-06-11 19:17:41 +00:00
Robert Roebling
3e040a2981 Use wxWindowRef to hold pointer to default button
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53773 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-05-27 08:53:48 +00:00
Francesco Montorsi
53a2db124c substitute WXDLLEXPORT with WXDLLIMPEXP_CORE and WXDLLEXPORT_DATA with WXDLLIMPEXP_DATA_CORE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52834 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-26 15:06:00 +00:00
Vadim Zeitlin
f36e602b3f make various control names constants of type char, not wxChar, as this is more compatible with the old ANSI build and it doesn't make much sense to use wchar_t for ASCII strings anyhow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49873 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-12 21:37:46 +00:00
Václav Slavík
b5dbe15d0b added WXDLLIMPEXP_FWD_FOO macros in addition to WXDLLIMPEXP_FOO for use with forward declarations (in preparation for GCC visibility support)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47254 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-09 10:09:52 +00:00
Václav Slavík
049908c573 make wxFrame a wxControlContainer too, so that it behaves in the same way as wxDialog
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46452 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-13 16:29:23 +00:00
Vadim Zeitlin
49c9d05986 removed unneeded duplication of DoSetSizeHints() in wxTLWBase (as wxWindow version already does the same thing) and made wxTLW::SetMin/MaxSize() implementation less verbose
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45771 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-05-03 00:25:46 +00:00
Vadim Zeitlin
ea098413d0 made wxTLW::SetIcon() non-virtual, it was already implemented in terms of
SetIcons() in most of the ports, now do it in all of them


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45322 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-07 23:40:55 +00:00
Vadim Zeitlin
527343602e 1. changed wxIconBundle to use m_refData and COW to make copying icon bundles
fast (which was needed for 2)
2. make it possible to return wxIconBundles from wxArtProvider
3. implement Mac-specific wxArtProvider doing (2)

(modified patch 1581960)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45309 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-07 19:59:51 +00:00
Vadim Zeitlin
f8ab85ae72 handle child destruction notifications in wxTLW itself and reset both normal and temporary default item pointers when the default window is destroyed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45275 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-06 19:22:38 +00:00
Václav Slavík
42b0d8b96d implemented wxPopupWindow for wxDFB; added wxNonOwnedWindow as base class for wxTopLevelWindow and wxPopupWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44289 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-01-22 15:04:49 +00:00
Paul Cornett
3498362ed5 correct access for virtuals
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43843 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-12-07 05:44:44 +00:00
Vadim Zeitlin
98018a4b05 limit TLW size to display size in wxSizer::Fit() instead of doing it in wxTLW::GetMaxSize(), this allows creating or manually resizing TLWs to be larger than the display while still avoiding making them too big by default
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43617 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-23 17:50:52 +00:00
Robert Roebling
cda5834e9d Moved overridden SetMinSize() to base class.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42719 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-30 13:25:00 +00:00
Robert Roebling
9379c0d752 Make wxWindow::SetSizeHints() do nothing.
Make wxTLW::SetSizeHints() set the various m_minWidth etc. fields.
  Override SetSizeHints() in wxGTK to call the relevant gtk funcion
    only there and not in every resize.
  Make GetMinWidth() etc. non-virtual.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42646 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-29 19:17:00 +00:00
Robert Roebling
a43ec16b16 Add empty EnableCloseButton() into wxTLW base class.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42503 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-27 09:12:35 +00:00
Václav Slavík
9c72cf7619 added wxWindow::IsVisible() method
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41130 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-10 15:38:54 +00:00
Václav Slavík
b3c861501a initial (not yet working) code for DirectFB port
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40865 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-08-27 09:42:42 +00:00
Robin Dunn
b58d5e2d95 Move CanSetTransparent and SetTransparent up to wxWindowBase since
wxMac can handle transparency at that level.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40730 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-08-21 18:30:34 +00:00
Vadim Zeitlin
6c20e8f816 move default button handling code from wxControlContainer to wxTLW (patch 1524441)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40307 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-25 01:31:13 +00:00
Robin Dunn
07880314d4 Translucency --> Transparent
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40169 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-17 21:30:08 +00:00
Robin Dunn
50f3c41d61 Added wxTopLevelWindow::SetTranslucency and CanSetTranslucency, with
implementations (so far) for wxMSW and wxMac.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40112 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-16 03:28:23 +00:00
Włodzimierz Skiba
979a0320b0 wxTLW::IsAlwaysMaximized() introduction.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38942 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-27 17:18:46 +00:00
Vadim Zeitlin
171a1afede made ShouldPreventAppExit() public
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38681 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-12 00:47:36 +00:00
Vadim Zeitlin
65afac3fbc added wxTLW::ShouldPreventAppExit() which can be overridden to allow closing the application even if some windows are still opened; use it for wxHtmlHelpFrame
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38607 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-07 00:38:49 +00:00
Włodzimierz Skiba
1c067fe3c1 Removed every usage of obsolete wxTLW flags. 2.6 compatibility markup for them.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38477 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-31 18:07:22 +00:00
Mart Raudsepp
74af7bcf4f Don't return the return value of a void method in a void method
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38087 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-15 03:42:26 +00:00