Commit Graph

65 Commits

Author SHA1 Message Date
Václav Slavík
07fb285c52 Make wxOwnerDrawnComboBox::DoGetBestSize() twice as fast.
Don't call the very expensive wxComboCtrlBase::DoGetBestSize() method
when not needed - it calls wxComboCtrlBase::DoGetSizeFromTextSize(),
which is very expensive.

Also fix the code so that it doesn't apply GetSizeFromTextSize() twice
(once in the base class' DoGetBestSize(), once here).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74644 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-08-07 17:33:42 +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
ce7fe42e84 Provide shorter synonyms for wxEVT_XXX constants.
Use the same short names as are used by the event table macros for the event
type constants themselves. This makes them much more comfortable to use, e.g.
Bind(wxEVT_BUTTON) compared to Bind(wxEVT_COMMAND_BUTTON_CLICKED).

The old long names are still kept for backwards compatibility and shouldn't be
removed as it doesn't really cost anything to continue providing them, but all
new event types should only use the short versions.

Closes #10661.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73850 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-04-25 10:11:03 +00:00
Vadim Zeitlin
e2ac737fba Implement wxComboCtrl::GetSizeFromTextSize().
Improve calculation of wxComboCtrl best size which doesn't work correctly for
non-default fonts as shown by r72935. It is still not perfect but better now.

Closes #14825.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72955 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-14 13:48:23 +00:00
Vadim Zeitlin
39191cbfdb Allow using horizontal cursor navigation keys in non-readonly wxComboCtrl.
Don't intercept Left/Right/Home/End keys until the control is read-only,
otherwise they're more useful for navigating in its text part than in its
drop-down.

Closes #14648.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72485 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-14 22:26:31 +00:00
Vadim Zeitlin
345c78ca5f Use wxDynamicCast() instead of IsKindOf() checks.
wxDynamicCast() is less verbose (due to the absence of "CLASSINFO") and more
compatible with the standard dynamic_cast<>, so prefer to use it when possible.

See #14356.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71624 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-01 11:01:18 +00:00
Stefan Neis
e75e881575 Spelling fixed for comments and a wxASSERT_MSG. Fixes #14022.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70625 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-02-19 14:49:37 +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
Dimitri Schoolwerth
6636ef8ddf Use wxString's empty() when checking if the string is (non-)empty throughout wx.
Instead of constructs such as if "( s.length() )" and "if (s.length() > 0)" use "if ( !s.empty() )" instead. Similarly for "if (s.length() == 0)" or "if ( s.IsNull() )", use "if ( s.empty() )".
No code changes intended except for a few instances where a construct like "if ( s.length() && wxFileExists(s) )" was changed to not check the length of the string and let wxFileExists handle such cases.



git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66728 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-01-22 14:38:36 +00:00
Stefan Csomor
2895324520 merging back XTI branch part 2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66555 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-01-04 08:31:53 +00:00
Jaakko Salli
238b33ab0e Added wxComboPopup::FindItem() to help in deciding how SetValue() should change the value of a read-only wxComboCtrl. This allows wxOwnerDrawnComboBox to have the same behavior as wxComboBox in that respect.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66409 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-20 13:51:24 +00:00
Jaakko Salli
f74ab0041b Make wxOwnerDrawnComboBox sorting identical to the MSW sorting (same as wxComboBox)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66398 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-17 12:23:34 +00:00
Jaakko Salli
65d30b7950 Mostly change the wxOwnerDrawnComboBox text value using ChangeValue() instead of SetValue()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66395 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-17 11:39:38 +00:00
Jaakko Salli
0306e73e63 Make the wxComboCtrl's wxTextEntry interface more complete and consistent. All text is no longer selected on SetValue(), but only when user selects an item from the drop-down list.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-17 11:20:50 +00:00
Jaakko Salli
2debe2b120 Removed a return statement from void function
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66389 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-16 19:25:31 +00:00
Jaakko Salli
eae20c901b Resolve ambiguity with wxOwnerDrawnComboBox::Clear(), virtual method which is derived from two base classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66388 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-16 18:13:43 +00:00
Jaakko Salli
9ff4b6ccd9 Override wxTextEntry::GetSelection(long *from, long *to) in wxOwnerDrawnComboBox to resolve virtual method hiding issues
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66386 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-16 18:07:05 +00:00
Václav Slavík
71dd05d58a Fix wxOwnerDrawnComboBox keyboard navigation with duplicate items.
If the combobox contained duplicate strings (i.e. multiple items with the
same string value, but differing indexes), then navigating to the second
and subsequent ones skipped to the first occurence instead. We need to
preserve the index.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65463 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-03 19:33:18 +00:00
Jaakko Salli
c0c05e79b2 Supress SetFocus() warning in wxVListBoxComboPopup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64258 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-09 10:29:48 +00:00
Václav Slavík
c765e6fb9d Fix text input and completion in wxComboCtrl and wxOwnerDrawnComboBox.
Both wxEVT_KEY_DOWN and wxEVT_CHAR must be handled and only the latter
used for completion (or any characters input). Don't make incorrect
assumptions about wxEVT_CHAR keycodes either, it's only the Unicode
character and printability that matter.

Otherwise, completion in readonly controls wouldn't work correctly
for e.g. numbers on numpad or non-ASCII characters.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63864 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-05 17:19:04 +00:00
Václav Slavík
10265e6c41 wxOwnerDrawnComboBox: handle Home and End keys as native control does.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63863 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-05 17:18:58 +00:00
Václav Slavík
293987e80c wxOwnerDrawnComboBox: handle numpad navigation keys.
For consitency with the native control, up/down/pgup/pgdown keys should
be handled even when pressed on the numpad.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63861 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-05 17:18:50 +00:00
Jaakko Salli
107defe36a Added wxComboCtrl::SetHint(), GetHint()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62989 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-26 10:33:35 +00:00
Julian Smart
a44c4abe5e Fix on Mac to prevent scrollbars always being shown
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61877 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-11 08:55:59 +00:00
Jaakko Salli
0847e36eff wxTextEntry::SetMargins(), GetMargins() - implemented on wxMSW and wxGTK (GTK+ 2.10+); also added similar functions into wxComboCtrl, deprecated old indent-functions; wxPropertyGrid modified to use the new functionality
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61834 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-05 12:39:12 +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
Jaakko Salli
31329795c4 Made sorting case-insensitive (to match wxComboBox) and fixed sorting in general for combo box classes inheriting from wxOwnerDrawnComboBox
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61401 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-11 07:01:32 +00:00
Jaakko Salli
b5b3c8a0cf Translate keycode(s) into character more consistenly in wxVListBoxComboPopup::HandleKey() (fixes #10395)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58202 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-18 19:57:23 +00:00
Jaakko Salli
697c314b16 Eliminate a warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55741 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-19 17:10:17 +00:00
Jaakko Salli
57306cd4fd Do not insert client data if client data is not used
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55739 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-19 16:43:40 +00:00
Vadim Zeitlin
fd11f77773 fix appending items to sorted control (patch 1940384)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53560 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-05-11 19:59:17 +00:00
Vadim Zeitlin
704bc4363b fix crash when pressing Up key in empty combobox
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52747 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-23 20:20:46 +00:00
Vadim Zeitlin
fdb47e62b9 decouple item index from string value (patch 1905702)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52254 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-02 14:55:43 +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
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
Vadim Zeitlin
b4ff336e1d fix wxODCB_PAINTING_SELECTED not being always set (patch 1719364)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46185 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-05-23 23:58:09 +00:00
Mattia Barbon
afc89ff455 Added --enable-extended_rtti configure switch (defaults to disabled).
Fix compilation when WXINTL_NO_GETTEXT_MACRO is defined.
  Added wx/flags.h to installed files.
  Fix XTI compilation after wxString changes.
  Fix 'virtual functions but non-virtual destructor' GCC warnings.
  Minimal XTI definition for wxOwnerDrawnComboBox (cut'n'paste
from wxComboBox, will need to be completed).
  Requires rerunning bakefile and autoconf.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45397 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-11 10:32:01 +00:00
Vadim Zeitlin
e02c72fa45 fix new wxHVScroll code to build with WXWIN_COMPATIBILITY_2_8==0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45333 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-08 13:55:36 +00:00
Robert Roebling
7962f85aae [ 1564062 ] wxComboCtrl popup height fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41390 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-23 16:17:45 +00:00
Robert Roebling
ce9685190e [ 1560860 ] wxComboCtrl EVT_TEXT filtering.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41382 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-23 09:04:25 +00:00
Robert Roebling
ce22ac4592 1552971 ] Add flag for wxODComboBox::OnDrawItem to indicate selection
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41305 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-19 17:16:50 +00:00
Robert Roebling
118f5fbd06 Commit wxComboCtrl clipping patch from J. Salli
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40980 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-03 13:21:29 +00:00
Robert Roebling
fa3ebb1221 Commit ODCombo delete selection fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40948 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-01 15:38:37 +00:00
Vadim Zeitlin
b445b6a76e better key handling for MSW and GTK (patch 1526666)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40579 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-08-13 00:35:02 +00:00
Jamie Gadd
89fdd421b4 Warning fix for the warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40315 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-25 09:24:03 +00:00
Włodzimierz Skiba
4dd31ff527 Warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40274 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-24 14:07:50 +00:00
Alex Bligh
d9b72d2540 Fix typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40223 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-21 15:05:44 +00:00
Włodzimierz Skiba
e83844692e [ 1524693 ] wxOwnerDrawnComboBox focus paint fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40203 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-20 14:37:47 +00:00
Włodzimierz Skiba
f0fa8b47ab PCH and wxUSE_* fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40093 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-07-14 19:03:10 +00:00