Commit Graph

57 Commits

Author SHA1 Message Date
Vadim Zeitlin
da36cbff06 Don't over promise in wxItemContainer documentation
It only accepts std::vector<wxString>, not std::vector<T> for any type
convertible to wxString as both the documentation and the code misleadingly
claimed.
2017-01-14 00:25:35 +01: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
e8a5baf061 Do use wxUSE_STD_CONTAINERS_COMPATIBLY around code using std::vector.
This was supposed to be done in r78066, but after introducing this new
wxUSE_XXX symbol I forgot to actually use it in the place it was intended to
be used.

Fixes compilation with wxUSE_STD_DEFAULT==0 and closes #16673.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78131 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-11-11 01:02:34 +00:00
Vadim Zeitlin
b1989ee7fe Make Clear() virtual in wxItemContainer base class.
This ensures that overridden wxComboBox::Clear() is called even when it's
invoked via a pointer or a reference to wxItemContainer (and not just one
to wxComboBox itself or its other base wxTextEntry).

Closes #16654.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78082 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-10-31 13:19:46 +00:00
Vadim Zeitlin
722057b3a0 Add a new wxUSE_STD_CONTAINERS_COMPATIBLY option.
This option, which is on by default unless the use of STL is disabled,
provides better interoperability with the standard library when it can be done
without breaking backwards compatibility.

The first example of its use is to allow passing std::vector<> of any string
compatible type to wxItemContainer::Append(), Insert() and Set(), allowing to
directly initialize various wxControls deriving from it such as wxChoice,
wxComboBox, wxListBox from a std::vector<> of strings.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78066 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-10-24 21:54:51 +00:00
Vadim Zeitlin
df13791078 Merge wxQT branch into the trunk.
This merges in the latest sources from GSoC 2014 wxQt project with just a few
minor corrections, mostly undoing wrong changes to common files in that branch
(results of a previous bad merge?) and getting rid of whitespace-only changes.
Also remove debug logging from wxGrid.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77455 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-24 01:50:11 +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
7bc740719c Add wxControlWithItems::SendSelectionChangedEvent() helper.
Reuse the same event generation code for wxChoice in wxMSW, wxGTK and wxOSX
and also wxComboBox in wxMSW and wxGTK instead of duplicating it (incompletely
and so partially incorrectly in wxOSX case).

This is just a refactoring so no changes in behaviour.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73102 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-12-02 23:48:59 +00:00
Vadim Zeitlin
bf8f10225c Get rid of ugly wxCONTROL_ITEMCONTAINER_CLIENTDATAOBJECT_RECAST macro.
Replace it with wxWindowWithItems<> template class which takes care of
disambiguating between the two inherited Get/SetClientXXX() versions and use
it as a base class in all clases that previously used the macro.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68460 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-30 11:30:08 +00:00
Vadim Zeitlin
ab9893576c Add wxItemContainer::DetachClientObject() and use it in wxRearrangeList.
Add a method to detach the item from an item control without deleting it and
use it in wxRearrangeList to correctly swap object client data without
deleting the pointers in the process.

Closes #12201.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65040 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-22 12:09:15 +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
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
Vadim Zeitlin
5c33522fca replace wx_{const,static,reinterpret}_cast with their standard C++ equivalents
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56644 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-02 02:39:52 +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
0ec1179b86 added wxTextEntry common base class for both wxTextCtrl and wxComboBox; refactor wxGTK code to put common parts of these classes in the base class; fixed some inconsistencies in the text control behaviour between platforms
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-26 00:30:22 +00:00
Vadim Zeitlin
131b1fba9d fix access to client data of wxComboBox in wxUniv by virtualizing access to wxControlWithItems::m_clientDataItemsType
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48728 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-16 23:12:27 +00:00
Vadim Zeitlin
f4075f30fa added WXDLLEXPORT to the (empty) wxControlWithItems class declaration
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47835 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-31 22:03:08 +00:00
Vadim Zeitlin
a236aa2058 many wxItemContainer-related changes:
1. the main function for item insertion is now DoInsertItems() which allows
   for much more efficient addition of many new items at once
2. the items client data management is done entirely in wxItemContainer
   itself, the derived classes don't have to distinguish between void and
   object client data
3. many fixes for sorted controls, in particular implemented wxCB_SORT support
   in wxGTK combobox


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47730 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-26 13:54:14 +00:00
Robin Dunn
170acdc90e GetBestFittingSize --> GetEffectiveMinSize
SetBestFittingSize --> SetInitialSize
SetBestSize  --> SetInitialSize
SetInitialBestSize --> SetInitialSize


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42816 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-31 08:50:17 +00:00
Vadim Zeitlin
9ebb7cade2 added wxSimpleHtmlListBox (patch 1576109 by Francesco)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42257 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-10-22 22:09:16 +00:00
Vadim Zeitlin
593ac33e50 added InitCommandEventWithItems() and call it from wxChoice and wxComboBox code to ensure that per item client data is set correctly in the generated events (replaces patch 1476171; closes bug 1470505)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39064 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-05-06 15:48:27 +00:00
Vadim Zeitlin
aa61d35253 replaced all int/size_t indices in wxControlWithItems API with unsigned int (committing on behalf of ABX)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38319 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-23 22:05:23 +00:00
Włodzimierz Skiba
8228b8932a Line-up interfaces to use size_t for GetCount()s (and count related api).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38076 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-14 19:44:45 +00:00
Vadim Zeitlin
1440bc7afa added wxRTTI macros to wxControlWithItems: it's not private any longer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36536 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-12-23 00:58:32 +00:00
Mattia Barbon
dee1a63ff5 Removed WXWIN_COMPATIBILITY_2_2 together with code guarded by it.
Changed default for WXWIN_COMPATIBILITY_2_4 to 0.
  Added WXWIN_COMPATIBILITY_2_6 (defaults to 1).
  Ran build/update-setup-h.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35858 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-10-09 15:48:42 +00:00
Włodzimierz Skiba
853dcc57c6 wxItemContainerImmutable::FindString unified.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35741 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-27 16:54:43 +00:00
Mart Raudsepp
8907154c1a Nuke #pragma implementation/interface's
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35650 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-23 12:56:45 +00:00
Włodzimierz Skiba
2ecf902bc8 Use defs.h (and automatically setup.h and chkconf.h) before first wxUSE_* check (bug #1164141).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32852 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-16 16:18:31 +00:00
Włodzimierz Skiba
789f679516 Linup API of wxRadioBox::Show on all ports. Move wxRadioBox::IsValid from wxUniversal to base class (+ GTK which do not use base class) and use it where applicable. Minor source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32325 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 16:39:25 +00:00
Vadim Zeitlin
8ba7c77150 don't duplicate wxItemContainer methods in wxRadioBoxBase, instead extract the common intersection to a new wxItemContainerImmutable class and derive wxRadioBoxBase from it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32008 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 19:01:17 +00:00
Vadim Zeitlin
c6179a847d 1. added SetSelection() to wxItemContainer and removed its declarations
from derived classes
2. made wxItemContainer::Select() non virtual: it simply calls SetSelection()
3. renamed wxListBox::SetSelection(n, select) to DoSetSelection() for all
   ports and defined non virtual SetSelection() overloads in the base class
   to avoid virtual functions hiding


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 17:08:27 +00:00
Vadim Zeitlin
64fa6f167e removed multiple duplicate copies (with subtly different behaviour) of SetStringSelection(); left only one of them in wxItemContainer (and another one in wxRadioBoxBase, to be removed)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32000 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 16:29:31 +00:00
Włodzimierz Skiba
2d67974d24 Old API clearly deprecated.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31283 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 20:03:22 +00:00
Julian Smart
655719367a Use old licence name
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-23 20:53:33 +00:00
Julian Smart
77ffb5937e Name and version changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-23 14:56:36 +00:00
Vadim Zeitlin
929bd5fd5f override SetInitialBestSize() to do nothing (we must add our strings first)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27074 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-03 12:40:29 +00:00
Julian Smart
6463b9f539 Reverted patch [ 832096 ] Final separation for GUI and console for Open Watcom
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@25182 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-01-15 13:49:22 +00:00
Julian Smart
1169a91932 Applied patch [ 832096 ] Final separation for GUI and console for Open Watcom
(Watcom compiler doesn't like ctor implementation in headers)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@25121 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-01-11 15:33:01 +00:00
Vadim Zeitlin
d4864e971b added ShouldInheritColours()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@24194 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-10-16 10:00:12 +00:00
Vadim Zeitlin
0ae0bb792b fix after patch 802882
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@23748 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-09-20 18:34:57 +00:00
Stefan Csomor
1978421a6d rtti api mods added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22992 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-08-18 09:57:02 +00:00
Václav Slavík
1202890513 added support for gcc precompiled headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22722 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-08-09 12:38:21 +00:00
Chris Elliott
aa3d520a74 borland does not like ; at end of macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22228 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-22 09:01:02 +00:00
Vadim Zeitlin
fc7a2a602b undisable many warnings for VC++ in defs.h and fixed several thousands of them in the sources
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22222 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-22 00:24:07 +00:00
Vadim Zeitlin
243dbf1a50 Insert() patch from John Labenski
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20564 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-09 12:58:28 +00:00
Julian Smart
371a5b4e62 Removed erroneous copyright names and corrected licence spelling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19592 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-17 10:34:04 +00:00
Vadim Zeitlin
a8dade3e27 added IsEmpty
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18490 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-01 22:09:41 +00:00
Gilles Depeyrot
af49c4b8a2 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@16884 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-08-31 11:29:13 +00:00
Gilles Depeyrot
7c720ce633 added wxControlWithItems constructor/destructor (for Darwin)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15515 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-05-11 17:14:46 +00:00