Commit Graph
64 Commits
Author SHA1 Message Date
Vadim Zeitlin ddb749d8e1 Fix searching for submenus when looking for the selected item
Use "item" sent by Windows as the position, not ID, for the submenus as
they don't have any IDs at Windows level.

This really fixes showing help string for the submenu items.

Closes #25505.
2025-06-18 02:55:51 +02:00
Vadim Zeitlin d5d14b1d4b Simplify statbar sample by defining the frame base class once
Avoid multiple USE_MDI_PARENT_FRAME checks and just define BaseFrame as
wxMDIParentFrame (instead of the default wxFrame) once when using this.

Also don't pass hardcoded position and size to the frame ctor, we don't
need to do this at all and it's actually harmful in high DPI as the
hardcoded size was too small.

No real changes, just simplify the code.
2025-06-18 02:41:31 +02:00
Vadim Zeitlin 74a1498eee Remove unnecessary use of wxLogXXX("%s")
Just pass the strings directly to wxLogXXX functions as this works
correctly after the changes of the parent commit.
2025-05-17 22:44:48 +02:00
ali kettab 5c46947c57 Fix wxStatusBar with field controls under wxQt
Postpone the creation of the QStatusBar fields until the first call to
SetStatusText(). This is to account for any field control added by the
user and also to avoid having to call UpdateFields() multiple times.

wxSTB_ELLIPSIZE_XXX and wxSTB_SHOW_TIPS supports are also implemented now.

The statbar sample is also updated: The OnSize() handler is removed because
it doesn't do much. that is: it is defined to keep the bitmap centered in the
status bar field it occupies if it is resized. but this is already done by the
wxStaticBitmap control, at least under wxMSW, wxGTK3 and wxQt.
2023-12-07 17:20:00 +01:00
ali kettab 2c9fee3d6f Add wxStatusBar::AddFieldControl() to simplify adding controls
This allows user codes to simply designate where their controls should
appear in the status bar without the need to handle wxEVT_SIZE
themselves.

They can still handle the event if the default positioning does not meet
their needs, but the new API is simpler and can be implemented for wxQt.

Closes #24092.
2023-12-05 00:39:04 +01:00
Blake Madden 9c76bc27c0 Use wxID_HIGHEST instead of wxID_HIGHEST+1 in samples
There is no need to add 1 any more since the changes of 99c52403f9 (Use
usual half-open interval for wxID_LOWEST..wxID_HIGHEST, 2022-10-23), so
don't.

Closes #22923.
2022-10-28 01:43:46 +02:00
Vadim Zeitlin 4f4c5fcfdf Use nullptr instead of NULL in the code and documentation
This is a combination of running clang-tidy with modernize-use-nullptr
check for some ports (GTK, X11, OSX) and manual changes to the ports for
which it couldn't be used easily (MSW, DFB) and also manually updating
the docs.

Also replace NULL with null or nullptr in the comments as this is more
consistent with the use of nullptr in the code and makes it simpler to
grep for the remaining occurrences of NULL itself.

And also use null in the assert messages.

Only a few occurrences of "NULL" are still left in non-C files, mostly
corresponding to unclear comments or string output which it might not be
safe to change.
2022-10-18 01:25:25 +02:00
PB 88d526660f Replace wxOVERRIDE and wxNOEXCEPT with override and noexcept
Don't use deprecated macros in wxWidgets itself.
2022-10-15 18:10:45 +02:00
PB f57f214122 Remove BCC-specific hdrstop pragma from everywhere 2020-10-12 21:58:37 +02:00
Vadim Zeitlin 616ad0d92b Show status bar fields coordinates in a message box in the sample
Showing them directly on the screen using wxClientDC doesn't work in all
ports, notable under Mac.

See #18469.
2019-10-25 04:10:23 +02:00
Blake-Eryx f58ea62596 Remove (most) occurrences of wxT() macro from the samples
Also replace wxChar* with wxString.

Closes https://github.com/wxWidgets/wxWidgets/pull/945
2018-09-23 01:15:08 +02: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 f86e22fc3b No real changes, just removed unused variables from samples.
Don't define constants which are never used to avoid clang
-Wunused-const-variable warnings.
2015-04-07 00:14:33 +02:00
Paul Cornett 5b4a70247c use "new" wx-prefixed macros in samples
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76222 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-30 07:07:55 +00:00
Paul Cornett 8b4ae731d3 use wxOVERRIDE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76220 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-30 00:02:23 +00: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 98eb2e84e8 Use flat generic status bar by default and add wxSB_SUNKEN.
GTK+ applications don't use sunken status bars since many years, do don't do
it in wxWidgets neither by default any more. Add wxSB_SUNKEN style that can be
explicitly used if the old appearance is desired.

Closes #15009.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73691 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-03-21 22:36:52 +00:00
Vadim Zeitlin 8e8d910979 Update the field widths on demand in wxStatusBarGeneric.
This ensures that the value returned from GetFieldRect() is always up to date,
even when this method is called from the user-defined wxEVT_SIZE handler, i.e.
before our own OnSize() could run.

Also remove the now unneeded hack with calling the base class OnSize() from
the statbar sample.

Closes #14268.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71365 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-05-05 11:22:09 +00:00
Vadim Zeitlin e709239889 Use wxHAS_IMAGES_IN_RESOURCES instead of explicit platform checks.
Add a special symbol which is defined only if the icons and other images (e.g.
cursor) are in the separate resource files and don't need to be embedded as
XPMs in the main program.

This makes the checks more clear and more customizable as it's enough to
change wxHAS_IMAGES_IN_RESOURCES definition instead of changing many platform
checks.

Closes #14050.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70789 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-04 00:28:58 +00:00
Dimitri Schoolwerth 2d143b6689 Removed ellipsis from "About..." occurrences.
MS and Apple guidelines mention ellipses should generally be used when a command needs additional information from the user before the operation can execute. This is not the case for showing an about dialog so the ellipses have been removed.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70412 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-20 16:51:09 +00:00
Vadim Zeitlin bced985eb0 Add a test of precisely sized status bar fields.
Modify the status bar sample to use two fields of just the right size for
their contents to confirm that this doesn't work correctly under at least MSW
currently (see #10696).

Notice that we need two fields because the behaviour/problem is different for
the last field and all the other ones.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61991 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-21 13:00:23 +00:00
Vadim Zeitlin 5eb65a3b70 Simplify the status bar sample by removing wxBitmapButton.
The sample code was complicated by having USE_STATIC_BITMAP and using
wxStaticBitmap or wxBitmapButton depending on it. Neither important for
a wxStatusBar sample so just use wxStaticBitmap always and make the code
simpler and more readable.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61990 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-21 13:00:16 +00:00
Vadim Zeitlin ee38a8cf7f Show status bar panes rectangles in the sample.
Display the rectangles returned by wxStatusBar::GetFieldRect() to be able to
visually check if they are correct.

See #10696.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61989 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-21 13:00:07 +00:00
Vadim Zeitlin 06a0d3eaaf Clean up status bar sample.
No real changes, just:
 - Fix code which couldn't compile in USE_MDI_PARENT_FRAME case
 - Use wxMenu::AppendCheckItem() instead of Append(..., true)
 - Remove unnecessary #ifdef __WXMAC__
 - Wrap excessively long lines

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61988 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-21 12:59:56 +00:00
Vadim Zeitlin 1454b44261 Add test for Push/PopStatusText().
Allow to interactively push and pop status messages for the selected field.

This shows that currently PushStatusText() is completely broken under wxMSW
as it never shows the text being pushed at all because it is "optimized" away
due to an incorrect comparison with the old value (which turns out to be the
new one)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61622 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-08-06 00:00:47 +00:00
Vadim Zeitlin dac831bb08 Provide saner UI for setting status bar fields.
Instead of asking the user to enter N values in a row (which is really
annoying even for N=2 already), allow to select the status bar to set the
value for and only show a single dialog asking for the value of this pane.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61621 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-08-06 00:00:39 +00:00
Vadim Zeitlin 41d6e8b683 No changes, just removed the whitespace.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61620 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-08-06 00:00:32 +00:00
Vadim Zeitlin 9a83f86094 Globally replace _T() with wxT().
Standardize on using a single macro across all wxWidgets sources and solve the name clash with Sun CC standard headers (see #10660).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-23 20:30:22 +00:00
Francesco Montorsi c4c178c10d use wxSTB_ as prefix for wxStatusBar styles; add support for wxSTB_ELLIPSIZE_* flags under wxGTK; support wxSTB_SHOW_TIPS even if no ellipsization mode is active; update the sample to allow the user to choose the wxStatusBar style dynamically
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60337 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-25 12:59:09 +00:00
Francesco Montorsi 778c9b9f49 commit temporary fix for the sample for 2.9.0 release
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59619 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-19 01:37:11 +00:00
Francesco Montorsi 2a90b10068 allow the user to set the status bar font
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58776 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-08 22:11:26 +00:00
Francesco Montorsi ea6e41e45e use a single update UI handler for all menu commands which act only on the default status bar
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58775 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-08 21:34:02 +00:00
Francesco Montorsi 41f02b9acc always call SetIcon() on the main frame of the sample; some small cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58744 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-08 01:01:00 +00:00
Francesco Montorsi 9df6b3b041 allow the user to set the contents of the status fields
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58716 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-07 17:40:22 +00:00
Francesco Montorsi fd3ece5784 remove tabs added by error in previous commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57695 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-31 17:31:32 +00:00
Francesco Montorsi 54e18afcca allow the user to pass NULL for the status widths; this was a feature supported by generic and MSW status bar but was not documented; document it; add menu item in the statbar sample for testing it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57693 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-12-31 17:07:30 +00:00
Vadim Zeitlin 92c01615ec remove/replace redundant SetAutoLayout() and Fit() calls, leave just SetSizer[AndFit]() ones (patch 1905759)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52525 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-15 02:08:02 +00:00
Vadim Zeitlin 45e6e6f8ab call OnInit() from all samples to allow using standard command line options with all of them (patch 1623971)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44354 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-02-04 00:34:18 +00:00
Vadim Zeitlin 2dcd83af91 very minor cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38638 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-09 11:00:45 +00:00
Włodzimierz Skiba a6ebd5596e Fix for building with limited ports/platforms.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29738 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-10-08 19:51:30 +00:00
Vadim Zeitlin bdb1f15c2b unused param warnings fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@28481 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-07-25 16:18:58 +00:00
Vadim Zeitlin c2919ab326 added status bar fields styles support (patch 988292)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@28480 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-07-25 16:13:52 +00:00
Dimitri Schoolwerth dabbc6a5a1 removed SetAutoLayout(true) calls when a corresponding SetSizer() was also called (the latter already calls SetAutoLayout(true) in case of a non-NULL window); usual cleanup: removing tabs and end of line whitespace, TRUE->true, FALSE->false, -1->wxID_ANY, Enable(false)->Disable(), ""->wxEmptyString
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27764 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-06-12 23:44:08 +00:00
Julian Smart be5a51fb59 More name changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27429 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-25 11:20:37 +00:00
Włodzimierz Skiba ee1a622dd0 -1->wxID_ANY, TRUE->true and FALSE->false replacements.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27356 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-19 16:24:20 +00:00
Dimitri Schoolwerth d1f4723592 applied patch #929947: "Various cleaning of warnings under MSW"; removed some tabs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@26638 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-04-06 13:19:42 +00:00
Mattia Barbon e4f3eb42f2 Compilation fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@26004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-02-29 15:21:11 +00:00
Mattia Barbon ab1ca7b3dd More samples/Unicode fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18230 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-14 18:13:27 +00:00
Gilles Depeyrot 788233da90 disable use of #pragma interface under Mac OS X
GNU compiler included with Mac OS X 10.2 (Jaguar) as well as August Developer
Tools update contain a bug concerning #pragma interface handling that can only
be worked around by not using them (and they are not necessary anyways)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16895 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-08-31 22:31:03 +00:00
Vadim Zeitlin 2f6c54eb07 patch from Dimitri fixing a few memory leaks and unTABbing the sources
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@14660 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-03-17 14:16:03 +00:00