Commit Graph

45 Commits

Author SHA1 Message Date
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
0b97da9986 Set both left and right wxTextEntry margins in wxMSW.
Use the horizontal margin argument of SetMargins() to set both left and right
margins in wxMSW and not just the left one.

See #14958.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73390 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-01-20 02:08:55 +00:00
Vadim Zeitlin
4e3eeddebd Fix wxMSW wxTextEntry compilation in wxUSE_DYNLIB_CLASS==0 case.
Simply don't define DoAutoCompleteFileNames() as it needs wxDynamicLibrary to
compile and work.

Closes #14510.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72183 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-07-23 15:03:57 +00:00
Vadim Zeitlin
017dc06b50 Use wxString::t_str() in calls to Windows API functions in wxMSW.
Use t_str() instead of wx_str() to make the code work correctly in UTF-8 build
in which wx_str() returns a pointer to UTF-8 buffer while we need a wchar_t
pointer for Windows.

Closes #14371.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71640 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-03 19:16:59 +00:00
Vadim Zeitlin
03dede4dc1 Add wxTextEntry::AutoCompleteDirectories().
As we already had MSW-specific AutoCompleteFileNames(), we can just as well
also add the also useful AutoCompleteDirectories() to be used with the text
controls used for path entry.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68918 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-27 14:11:13 +00:00
Václav Slavík
b4f70f7706 Compilation fix for DEFINE_GUID uses.
DEFINE_GUID doesn't define the value, only declares an external
variable, unless initguid.h was included. This leads to linker errors.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67573 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-22 14:50:20 +00:00
Vadim Zeitlin
0f0c5856e0 Define ACO_AUTOAPPEND for MinGW/Cygwin.
Apparently this symbol is not defined in MinGW headers neither, so do it
ourselves as well.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67570 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-21 23:43:27 +00:00
Vadim Zeitlin
c621269778 Use "wx" prefix for the GUIDs we (re)define in wxMSW code.
CLSID_AutoComplete became ambiguous with MinGW because it does define it in
its shlguid.h header (although MSVC/Platform SDK does not define this one) so
use a "wx" prefix for it to avoid ambiguity. Also use the same prefix for the
IID_IAutoCompleteDropDown value we define for consistency.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67569 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-21 23:43:23 +00:00
Vadim Zeitlin
78f250a46d Redefine IAutoCompleteDropDown in our code as it's not always available.
MinGW doesn't have shobjidl.h header file which is normally part of the
Platform SDK and doesn't have IAutoCompleteDropDown interface definition in
any of its headers at all, so define this interface and its IID ourselves to
make the code compile with it.

Notice that MinGW-64 does have the interface declaration but still doesn't
define IID_IAutoCompleteDropDown.

So to be on the safe side just always define everything ourselves, as long as
we need to do it for one of the compilers, it's not more difficult to do it
for all of them.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67567 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-21 15:47:37 +00:00
Vadim Zeitlin
8d43e8c68f Correct a typo in DoAutoCompleteCustom() stub in wxMSW.
Fix a compilation error introduced by r67518.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-18 13:47:51 +00:00
Vadim Zeitlin
ed7dda9251 Refactor: extract wxTextCompleterFixed from wxMSW to a header.
This class will be used in other ports too so don't make it private to wxMSW
(although it still remains private to wxWidgets for now as it doesn't make
much sense to use it in user code).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67525 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-17 23:14:11 +00:00
Vadim Zeitlin
32bd17fcb5 Define wxTextEntry::DoAutoCompleteStrings() stub in wxMSW code too.
Forgot to define this function in !HAS_AUTOCOMPLETE case. This fixes linking
problems with old compilers/headers such as VC6 with its original SDK.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67518 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-16 23:17:44 +00:00
Vadim Zeitlin
85047589a9 Split wxTextCompleter into a base class and wxTextCompleterSimple.
Allow overriding either the iterator-like methods of the base class or the
single and possibly more convenient, albeit slightly less efficient, method of
the derived wxTextCompleterSimple class.

This makes it possible to completely delegate to wxTextCompleter from wxMSW
IEnumString implementation and actually makes the code there easier, even if
it it still not quite trivial because of multi-threading concerns.

It also would make it possible to show the completions progressively, as they
are retrieved, in a future generic implementation of auto-completion (MSW
native implementation doesn't do this unfortunately and waits until all of the
completions become available before showing them).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67515 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-16 17:27:34 +00:00
Vadim Zeitlin
e71e4c932a Don't block the main UI thread while generating completions in wxMSW.
The native IAutoComplete implementation takes care to retrieve the completions
from a background thread to prevent the UI from freezing while they're being
generated, but we worked against it by always generating all the completions
from the main thread and just enumerating them from the background one.

Change this now and call wxTextCompleter::GetCompletions() method from the
background thread itself to never block the main one.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67514 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-16 17:27:30 +00:00
Vadim Zeitlin
b9a46ea5a2 Use ACO_AUTOAPPEND option for text completion in wxMSW.
This option appends the first candidate completion value to the text control
itself making it more user-friendly as it reduces the amount of typing needed
to enter it.

See #11465.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67513 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-16 17:27:26 +00:00
Vadim Zeitlin
ea98f11c2f Add support for dynamic auto-completion in wxTextEntry.
Add wxTextCompleter class which allows to return the possible completions
dynamically and wxTextCompleter::AutoComplete() overload using it. So far this
is only implemented for wxMSW.

Also fix calling wxTextEntry::AutoComplete(wxArrayString) multiple times under
MSW, this didn't correctly update the list of shown completions before.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67511 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-16 17:27:16 +00:00
Vadim Zeitlin
6b30ffedb1 No changes, just simplify preprocessor checks in wxMSW wxTextEntry.
Separate !HAS_AUTOCOMPLETE stub versions from the real one as the code was
too difficult to read otherwise and would become even more so after the
addition of the upcoming custom auto-completer support.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67510 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-16 17:27:11 +00:00
Vadim Zeitlin
574479e8db Refactor wxTextEntry::AutoComplete() to simply call DoAutoCompleteXXX().
No real changes, just make the public AutoComplete() non-virtual and add
virtual DoAutoCompleteXXX() methods to make it easier to add new public
AutoComplete() overloads in the upcoming commits.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67509 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-16 17:27:04 +00:00
Vadim Zeitlin
715e4f7e3e Fix Cygwin 1.7 build.
Avoid using Cygwin sockets as our code assumes that we use WinSock API under
Windows currently (this might change in the future) by defining
__USE_W32_SOCKETS.

Use new, safer and more efficient cygwin_conv_path() function.

Use t_str() instead of fn_str() with Windows API taking file names, under
Cygwin they are different and using fn_str() is incorrect.

A few other minor fixes.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65057 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-23 23:32:46 +00:00
Vadim Zeitlin
7591b0bb53 Always show hint in text entries, even when they have focus.
It was impossible to show the hint for the initially focused child of a dialog
before, as the hint was hidden from the very beginning. By showing it always
we avoid this problem.

We may want to add an option/flag for SetHint() to make this configurable
later if somebody really needs to show hints only for as long as the control
doesn't have focus.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62986 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-25 11:36:54 +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
Vadim Zeitlin
68e6eb7d67 Don't call IAutoComplete::Init() twice for the same control as this leaks memory, just change the strings used for completion instead (closes #10968)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61493 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-22 14:30:29 +00:00
Vadim Zeitlin
d2f434e428 (harmless) Borland release build warning fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60348 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-25 14:07:38 +00:00
Vadim Zeitlin
135b23b266 added wxTextEntry::DoGetValue() to allow returning empty string if the control currently contains hint text
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59265 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-02 13:31:29 +00:00
Vadim Zeitlin
63f7d5022e added wxTextEntry::SetHint() (a.k.a. cue banner or placeholder string)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59263 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-02 12:25:01 +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
Vadim Zeitlin
2851cf2582 fix bug in SetInsertionPoint(-1) implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55732 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-19 10:17:51 +00:00
Vadim Zeitlin
6502dc6823 add more wxUSE_XXX checks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55431 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-03 07:29:31 +00:00
Vadim Zeitlin
e2fc2bd51c add wxDL_QUIET flag; use RawGetSymbol() instead of GetSymbol() in wxDL_INIT_FUNC to avoid error messages for missing functions (this is also consistent with wxDL_INIT_FUNC_AW)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51032 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-01-06 01:30:58 +00:00
Vadim Zeitlin
867b485eb6 fix unused variable warning if !HAS_AUTOCOMPLETE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50637 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-12-11 12:38:25 +00:00
Chris Elliott
6c49d63403 add watcom to #include shlguid.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50031 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-17 17:37:33 +00:00
Vadim Zeitlin
fd87345120 compilation fix for VC6 with standard (i.e. not updated) SDK (patch 1828610)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49783 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-09 20:34:56 +00:00
Julian Smart
46eb9b54be Fixed compilo with VC++
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49744 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-09 12:14:08 +00:00
Vadim Zeitlin
3eeefdf9bd suppress (harmless) gcc warning about non-virtual dtor in a class with virtual functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49658 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-05 21:49:26 +00:00
Vadim Zeitlin
96506d1d58 compilation fix for stuff missing from mingw32 headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49641 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-05 13:35:24 +00:00
Vadim Zeitlin
0847dca672 implement AutoComplete for wxMSW too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49636 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-05 00:44:26 +00:00
Vadim Zeitlin
59396417d3 added wxTextEntry::AutoCompleteFileNames() and implemented it for wxMSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49634 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-04 23:08:26 +00:00
Vadim Zeitlin
96a4cdebda use the same #if wxUSE_XXX checks in platform-specific files as around wxTextEntryBase implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49499 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-10-28 00:03:23 +00:00
Vadim Zeitlin
5ad3f0c8d1 fixed bug with inversed IsEditable() return value
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49068 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-10-06 21:02:31 +00:00
Vadim Zeitlin
c0ae6c3bc4 PCH-less build fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48987 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-28 23:15:00 +00:00
Vadim Zeitlin
69a05ef6d6 correct properties were not set during initial add somehow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48986 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-28 23:14:08 +00:00
Chris Elliott
3cb6eaec79 vc6 did not like this (void function returning a value)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48982 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-28 16:01:17 +00:00
Vadim Zeitlin
fa2f57be4d refactor wxMSW code to extract parts common to wxTextCtrl and wxComboBox into wxTextEntry
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48952 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-26 16:48:46 +00:00