Commit Graph

335 Commits

Author SHA1 Message Date
Vadim Zeitlin
b062fade9f Intercept some keys in wxMSW wxTextCtrl even if they're used as accelerators.
Bare (i.e. without any modifiers) Delete, Home and End keys are also required
by the text control itself so don't handle them as accelerators when wxTextCtrl
has focus.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69739 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-11 14:26:06 +00:00
Vadim Zeitlin
df0419d21d Fix best size computation for wxTextCtrl without borders in wxMSW.
wxTextCtrl with wxBORDER_NONE (and possibly wxTE_READONLY) style is often used
instead of a wxStaticText to allow copying the text, so make the size of such
control the same as size of the label. This ensures that it aligns correctly
with the label vertically while before the baselines were not aligned because
a border-less text control was rendered by MSW as a label but had a too big
size.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69066 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-09-11 21:55:47 +00:00
Julian Smart
827fb0e455 Better text control non-selection solution
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68753 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-17 08:38:00 +00:00
Vadim Zeitlin
6ce832135e Add wxTextCtrl::PositionToCoords() functions for wxMSW and wxGTK.
The new method allows to find the coordinates in pixels of the given character
in a text control.

Closes #13221.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68450 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-29 15:11:54 +00:00
Vadim Zeitlin
d19d14c550 Ignore WM_CLOSE generated by wxMSW edit control when Escape is pressed.
Multiline edit control posts WM_CLOSE to its parent window when Escape key is
pressed inside it for some reason. This is unwanted as it totally bypasses our
logic for only closing the dialog when Escape is pressed if there is a
Cancel-like button in it, so suppress this behaviour by not letting the edit
control to get Escape at all.

Closes #12501.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68351 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-07-24 10:50:51 +00:00
Vadim Zeitlin
3d55f45e94 Suppress various harmless warnings in MinGW build with -Wconversion.
No real changes, simply add casts to make the implicit conversions that g++
warns about when using -Wconversion explicit.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67964 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-16 15:14:02 +00:00
Dimitri Schoolwerth
a1b806b982 Replaced Ok() occurrences with IsOk() throughout trunk.
Additionally renamed wxOSX' private wxNativePrinterDC::Ok() function to IsOk().

Didn't deprecate the various Ok() functions: given the amount of changes already introduced in 3.0 a trivial one like this seems more suitable for after 3.0.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67681 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-05-03 16:29:04 +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
Vadim Zeitlin
179c657bc7 Really fix setting fonts in RichEdit 4.1 controls.
The fix applied in r64394 wasn't enough and the control could still decide to
overwrite the font used by default when non-ASCII characters were inserted
into it. To really force it to use the font we want we apparently must send it
EM_SETCHARFORMAT with SCF_ALL flag (MSDN also documents SCF_DEFAULT but it's
not clear if we should use it instead or together with SCF_ALL, for now it
doesn't seem to be necessary).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65565 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-18 16:26:35 +00:00
Vadim Zeitlin
a8abba41bc No changes, just refactor wxTextCtrl::SetStyle() in wxMSW.
Split this overly long function into MSWSetCharFormat() and MSWSetParaFormat().

No real changes otherwise except for the use of PARAFORMAT instead of
PARAFORMAT2 if wxUSE_RICHEDIT2 is not set as it was certainly intended (but
the fact that nobody complained about this problem means that nobody must be
compiling without wxUSE_RICHEDIT2 by now so arguably we should just remove it
completely).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65564 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-18 16:26:30 +00:00
Vadim Zeitlin
4f7c00f237 Set wxTextCtrl::m_verRichEdit to 4 for RichEdit 4.1.
Set m_verRichEdit to a different value for the version 4.1 of the control as
it behaves subtly differently from the previous versions.

Also clarify that value of 2 is used for both 2.0 and 3.0 versions of the
control.

No real changes yet.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65563 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-18 16:26:22 +00:00
Vadim Zeitlin
427861bde0 Fix scrolling to the bottom in wxTextCtrl::AppendText().
The old code used EM_LINESCROLL which could scroll too far if the caret wasn't
in the first line of the control. Instead of trying to compute the correct
number of the lines to scroll, just use WM_VSCROLL with SB_BOTTOM parameter
instead.

Closes #12123.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64571 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-12 21:26:41 +00:00
Vadim Zeitlin
81fb185e4f Fix setting the fonts for wxMSW wxTextCtrl with wxTE_RICH(2) style.
Using WM_SETFONT seemed to work with rich edit controls but in fact it
doesn't, it only changes the font used by the control initially apparently but
it can be reset later.

Use EM_SETCHARFORMAT which is more reliable.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-25 21:15:24 +00:00
Václav Slavík
8d94819c43 Remove wxUSE_WCHAR_T checks.
wxWidgets requires wchar_t for some time now; wx/chartype.h has a check
to fail complation without it. Simplify code by removing now-dead code
for the !wxUSE_WCHAR_T case.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63991 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-16 10:43:18 +00:00
Vadim Zeitlin
d2356abe70 Use white background by default for multiline readonly wxTextCtrl under MSW.
The best default behaviour seems to be to use white background for multiline
text controls even when they're read-only, as in previous wx versions.

Also see #11521 which could be implemented to make this configurable.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62804 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-07 05:01:21 +00:00
Vadim Zeitlin
b7421ab625 Move wxMSW wxTextCtrl::GetDefaultAttributes() to wxTextCtrlBase.
This commit doesn't introduce any changes in the control behaviour, it simply
moves the existing method to the base class because it is not MSW-specific.

Also implement wxTextCtrlBase::GetClassDefaultAttributes() because if a class
implements GetDefaultAttributes() it should implement it as well.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62803 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-07 05:01:14 +00:00
Paul Cornett
a243da29c8 make array data fully const
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62764 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-02 17:28:45 +00:00
Vadim Zeitlin
7b6126aa3a Explicitly set the cursor when showing popup menu on text control in wxMSW.
Without this, an I-beam cursor is used when a menu is shown by a rich text
control. Set the arrow cursor explicitly to work around this apparent bug in
the native control.

Closes #11314.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62718 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-26 03:29:27 +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
a10f026b85 fix a problem with loading inked.dll (see #10633)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-26 18:41:02 +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
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
92715f1fea fix warnings about conversion between DWORD and pointers in MSLU=1 build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58564 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-31 21:15:10 +00:00
Vadim Zeitlin
e408bf5257 add safe wxStrlcpy() function and replaced all wxStrncpy() calls by it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57023 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-29 14:41:02 +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
51725fc0c2 reverted the change of r56246 and keep the old behaviour of MB2WC/WC2MB; document it even more clearly and correct code using these functions incorrectly
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-10-17 11:31:22 +00:00
Vadim Zeitlin
4c81144ce3 no changes, just clarified a comment
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55624 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-14 21:05:41 +00:00
Vadim Zeitlin
8f08b2509b don't send text changed events from ctor as wxGTK doesn't do it and people apparently don't like it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53547 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-05-11 00:29:47 +00:00
Václav Slavík
e2cf30aa1c wxMSW: generate wxClipboardTextEvent from wxTextCtrl with wxTE_RICH style too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52546 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-15 12:28:03 +00:00
Vadim Zeitlin
5a25f8581a refactored code reused in several different places in wxTextEntry::RemoveSelection() (patch 1910166)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52534 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-15 02:58:54 +00:00
Vadim Zeitlin
c2208899ed no real changes, just use more readable helper wxTextEntry methods (patch 1910160)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-15 02:47:41 +00:00
Václav Slavík
2e771cb838 fixed 'Select All' context menu in wxTextCtrl with wxTE_RICH style
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-08 23:04:06 +00:00
Vadim Zeitlin
beee6bf864 build fix for wxUSE_INTL==0 (patch 1878908)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51523 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-02-03 14:12:45 +00:00
Václav Slavík
b65f16dabd fixed wxTextCtrl to not process clipboard events twice if there's a custom wxEVT_COMMAND_TEXT_* handler; move WM_PASTE/CUT/COPY processing to wxWindow where it belongs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51509 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-02-02 22:29:19 +00:00
Julian Smart
b212c69eca Added checks to encoding conversion to avoid crash
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51458 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-01-30 17:03:10 +00:00
Vadim Zeitlin
4eb77d8bce generate focus and kill focus events for wxTextCtrl at wxWindow level instead of doing it in wxTextCtrl itself and specifically disabling focus event generation for text controls in wxWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51355 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-01-24 09:34:05 +00:00
Vadim Zeitlin
50c6e05f3d skip focus events after handling them in wxTextCtrl, otherwise they never reach wxApp (bug 1875046)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51282 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-01-19 03:35:47 +00:00
Vadim Zeitlin
8df2696160 restore SetSelection(-1, -1) behaviour which was broken during wxTextEntry refactoring
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51114 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-01-08 19:08:58 +00:00
Václav Slavík
937013e0fd 1. added wxEvtHandler::SafelyProcessEvent() and wxWindow::HandleWindowEvent() to correctly handle exceptions in even handlers in wxGTK
2. use HandleWindowEvent() everywhere as more obvious and convenient shortcut for GetEventHandler()->ProcessEvent(); also for consistency with wxGTK where it's required

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50329 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-29 17:00:58 +00:00
Julian Smart
44cc96a80c Merged wxRichTextAttr and wxTextAttrEx into wxTextAttr, and added a font table
to wxRichTextBuffer to reduce wxFont consumption and increase performance.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49108 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-10-09 11:20:36 +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
Vadim Zeitlin
1a8e8d694b added missing wxUSE_RICHEDIT test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48829 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-20 10:22:09 +00:00
Vadim Zeitlin
88b9909d1a fix for the last commit: reset the dummy wxRICHTEXT_DEFAULT_DROPTARGET pointer in dtor to avoid crashing when trying to delete it in the base class dtor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48764 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-18 12:06:46 +00:00
Vadim Zeitlin
20a0e99964 get rid of the built-in drop target in rich text controls before setting the user-defined one as otherwise it fails
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48704 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-15 01:09:01 +00:00
Vadim Zeitlin
e1ef6b5da5 chop off the unwanted \r from GetLineText() return value for richedit 2.0 controls (patch 1780110)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48627 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-10 11:16:04 +00:00
Julian Smart
8c56ac8330 Fix for non-appearance of themed border with wxTE_RICH if size passed to the constructor and then not changed.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48063 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-14 07:26:59 +00:00
Julian Smart
a047aff270 Added wxBORDER_THEME, wxWindow::GetDefaultBorderForControl(), wxWindow::CanApplyThemeBorder().
wxTextCtrl and wxSearchCtrl now get the correct border on wxMSW, and the wxRichTextCtrl sample
also now demonstrates correct borders.



git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-07 19:22:43 +00:00
Vadim Zeitlin
414721d003 fix STL build (don't rely on implicit wxString to char* conversions)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46599 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-21 21:45:46 +00:00
Václav Slavík
e0a050e347 more changes to make wx compile without implicit wxString->char* conversion (for STL build)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46553 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-20 07:44:45 +00:00