Commit Graph

15559 Commits

Author SHA1 Message Date
Vadim Zeitlin
24f54e45dc Add wxNOEXCEPT to all wxTextCtrl dtors.
Fix compilation with some compilers after r72978 which added wxNOEXCEPT to
wxTextCtrlBase dtor and wxTextCtrl dtor in wxMSW but not in all the other
ports.

See #14826.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72984 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-19 11:53:49 +00:00
Vadim Zeitlin
0508392167 Fix path returned from wxGTK wxFileDialog too.
This is similar to the fixes to wxDirDialog in r72779.

Closes #14786.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72979 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-17 23:56:47 +00:00
Vadim Zeitlin
1d9f819c69 Add wxNOEXCEPT and use it for std::streambuf-derived classes.
This fixes warnings from Intel compiler about overriding function using a
different exception specification than the base one and also incidentally
provides a handy macro that can be useful in other situations.

Closes #14826.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72978 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-17 23:56:23 +00:00
Vadim Zeitlin
f31f9900e4 Add wxFSW_EVENT_ATTRIB wxFileSystemWatcher flag.
This flag allows to monitor changes to the file attributes, such as file
modification time.

This patch adds the flag, support for it under Linux and the corresponding
modifications to the sample and the test suite.

Closes #14833.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72977 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-17 23:56:00 +00:00
Vadim Zeitlin
fce37f88fc Fix typo in include/wx/generic/private/richtooltip.h header guard.
A wrong symbol was being defined.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72976 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-17 23:55:35 +00:00
Steve Lamerton
fc95c9f7ab Fixed unused parameter warnings for webview on OSX.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72965 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-17 13:34:09 +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
aa24f946c6 Implement DoGetSizeFromTextSize() for wxMSW wx{Choice,Combobox,TextCtrl}.
Refactor and improve the existing DoGetBestSize() implementations to use
DoGetBestSize().

Closes #14816.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72954 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-14 13:47:59 +00:00
Vadim Zeitlin
df74e2d251 No changes, just refactor wxMSW wxComboBox code calling GetComboBoxInfo().
Move the code dynamically loading this function to the base wxChoice class to
make it possible to use it from there in the upcoming commit.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72953 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-14 13:47:36 +00:00
Vadim Zeitlin
b51014176a Don't call setlocale("") on startup by default any longer.
This undoes the changes of r44773 because calling setlocale() resulted in C
locale being set differently from C++ locale which was confusing and led to
huge slowdowns in any code using std::stream with at least MinGW. And setting
the C++ locale to be the same, as r72719 tried to do, doesn't seem to be
practical as it results in immediate crashes under OS X and MinGW when used
under XP.

Do provide wxApp::SetCLocale() helper to explicitly do what was previously
done implicitly, even though currently it is a trivial wrapper for setlocale()
and we don't even need to call gtk_set_locale() as it has never done anything
else and is deprecated since GTK+ 2.24.

Closes #14780.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72951 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-14 13:46:50 +00:00
Vadim Zeitlin
40df8a51f2 Optionally allow showing tooltips for disabled ribbon buttons.
Add wxRibbonButtonBar::SetShowToolTipsForDisabled() to allow enabling the
tooltips even for the disabled buttons.

Closes #14820.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72950 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-14 00:16:16 +00:00
Vadim Zeitlin
72ae0b5169 Disallow drop downs on AUI check buttons.
This doesn't make much sense and disallowing it makes check items consistent
with radio ones as previously you could set up a dropdown for the former but
not for the latter.

Also update the documentation of the relevant methods.

Closes #14795.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-10 12:40:47 +00:00
Vadim Zeitlin
1bc5ddea15 Fix link errors with VC 11 in DLL STL build.
Don't declare wxWindowList as DLL-exported. It's unnecessary and appears to
create problems for VC 11.

Closes #14741.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-10 00:53:42 +00:00
Vadim Zeitlin
4ca30c7d65 Simplify wxEVT_PAINT handling in wxScrollHelperBase.
Just always call the virtual OnDraw() if wxEVT_PAINT wasn't handled. This is
much simpler than connecting our own special handler just to set a flag saying
whether the event was processed which was very complicated and didn't work
anyhow for the statically connected wxEVT_PAINT handlers.

See #14757.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72939 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-10 00:53:17 +00:00
Vadim Zeitlin
ddc8faa9e1 Cache HDC used for painting for the entire duration of WM_PAINT processing.
This fixes a long standing problem with 2 wxPaintDC created one after another
(and not with nested lifetimes, which was handled by the caching mechanism
previously used) not working correctly. And as this was exactly what happened
when handling wxEVT_PAINT for wxScrolled, it also fixes drawing artefacts when
using scrolled windows.

Closes #14757.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-10 00:52:54 +00:00
Vadim Zeitlin
7a78a93782 Add wxControl::GetSizeFromTextSize() to size the control to its text.
This function can be used to size a, say, wxTextCtrl to be exactly of the size
needed to enter the given amount of text in it.

This patch adds wxGTK implementation for wxTextCtrl, wxChoice and wxCombobox;
changes to the samples and the documentation.

Closes #14812.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72935 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-09 21:11:37 +00:00
Paul Cornett
c0a2b7180e don't assign NULL to wxUIntPtr, wxUIntPtr is not a pointer, closes #14811
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-08 17:47:16 +00:00
Stefan Csomor
2ab3802522 support for freeze and thaw under cocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72924 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-08 15:46:23 +00:00
Vadim Zeitlin
346634a0d3 No changes, just remove unnecessary forward declarations.
wxToggleBitmapButton doesn't exist any more, don't forward declare it.

wxToggleButton does exist but is (fully) declared just below, so don't forward
declare it neither.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72923 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-08 14:20:53 +00:00
Vadim Zeitlin
6b0dfbca1d Keep item data in sync with their position in wxEditableListBox.
When swapping the items, we also need to swap their client data and not just
their labels.

Closes #14800.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72916 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-06 23:56:44 +00:00
Vadim Zeitlin
873271f05e Use wxAUI_TB_DEFAULT_STYLE instead of 0 as default style value.
No real changes.

See #14794.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72913 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-06 23:54:25 +00:00
Stefan Csomor
0b7a7b8cd6 fixing compile for ios
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72903 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-06 06:35:29 +00:00
Vadim Zeitlin
ce63f2e9eb Make hack for button creation in wxOSX more robust.
Don't crash when creating a plain wxButton with wxBU_NOTEXT style. This
happened because we skipped creating the peer (real implementation) in this
case entirely on the assumption that we were creating a wxBitmapButton, but
this is not necessarily the case. So now test that the creation of the peer is
really disabled before skipping it (this required adding ShouldCreatePeer()
accessor).

Merging wxWidgetImpl::CreateButton() and CreateBitmapButton() (and the same
thing for toggle buttons) would still be a better solution but while it's
trivial to do for Cocoa, it isn't for Carbon. And we can't use a single
function for Cocoa but different functions for Carbon, so for now just
continue to use this hack.

Closes #13622.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72896 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-04 23:54:37 +00:00
Vadim Zeitlin
4ccde09b18 Add wxCFStringRef::AsStringWithNormalizationFormC() Cocoa overload.
Provide an overload taking NSString and casting it to CFStringRef, just as for
AsStringWithNormalizationFormC().

See #13504.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-04 23:53:52 +00:00
Vadim Zeitlin
cabc71dee3 Update the button bezel to account for multi-line labels in wxOSX.
If a button was created using a normal single-line label (including empty one)
and then its label was changed to something multi-line later, its size stayed
wrong in wxOSX as it still used the fixed size bezel used by normal buttons.

Adjust the bezel after each bezel change now to update the size of the button
if necessary.

Closes #12491.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72886 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-04 23:50:50 +00:00
Vadim Zeitlin
5af80d3112 No changes, just rename OSXSetAcceleratorFromLabel().
Make the name of the function more general and call it
OSXUpdateAfterLabelChange() as it's supposed to be called whenever the label
changes.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72885 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-04 23:50:28 +00:00
Paul Cornett
80a77e3c73 fix setting background color in wxGTK3 with themes which use background images or gradients, fixes #14759
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72881 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-04 17:39:55 +00:00
Stefan Csomor
2ab6738554 missing commit, fixes #14797
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72865 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-02 17:02:15 +00:00
Stefan Csomor
a1b719bc74 exposing common used button impl class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72860 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-02 10:06:06 +00:00
Václav Slavík
e08d449f2e wxCALL_FOR_EACH compilation fix for VC++.
VC++ has a bug where __VA_ARGS__ is incorrectly expanded as a single
token, contrary to C99. The solution is to pass the arguments to another
macro as a single token inside parenthesis.

See http://stackoverflow.com/questions/9183993/msvc-variadic-macro-expansion
for the gory details.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72850 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-01 18:25:07 +00:00
Václav Slavík
9e0959cda4 Compilation fix for PCH-less build.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72849 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-01 18:25:00 +00:00
Vadim Zeitlin
7eb0acefc2 Refactor and simplify wxChoice::DoGetBestSize().
Use wxTextMeasure instead of duplicating its code and also reuse the code
between different ports.

Closes #14706.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72848 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-01 17:15:28 +00:00
Vadim Zeitlin
c236dbaed2 Invalidate best size of wxOSX wxChoice after its number of items changes.
This fixes the calculation of the initial best size as previously the default
value was not updated even if longer strings were added later.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72847 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-01 17:15:25 +00:00
Vadim Zeitlin
c94c3a77b8 Allow creating wxTextMeasure without specifying the font.
Use the default window/DC font by default as this is the most common case.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72846 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-01 17:15:22 +00:00
Vadim Zeitlin
e0da9e871a Allow constructing wxGTK wxTextMeasure with NULL font.
The font is explicitly documented as being possibly NULL in the base class and
wxMSW handles NULL font just fine, so also handle it in the GTK version.

See #14706.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72844 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-01 17:15:15 +00:00
Vadim Zeitlin
84605707d1 Added wxEVT_COMMAND_DIRCTRL_CHANGED for wxDirCtrl selection changes.
This makes it much simpler to react to the changes in the control, update the
sample to show it.

Closes #14792.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72842 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-01 17:15:08 +00:00
Vadim Zeitlin
0d6f66f45c No changes, just some cleanup in wxGenericDirCtrl code.
Use GetItemData() helper to only write a cast to wxDirItemData in this
function instead of repeating it many times.

See #14790.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72841 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-01 17:15:03 +00:00
Václav Slavík
643e9cf9f6 Add wxTEST_DIALOG for testing of modal dialogs.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72837 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-01 16:45:11 +00:00
Václav Slavík
a4d982a7cf Add wxCALL_FOR_EACH() macro.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72836 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-01 16:45:01 +00:00
Vadim Zeitlin
d8986023a3 Define wxSOCKET_XXX flags as wxSOCKET_XXX_READ|wxSOCKET_XXX_WRITE.
The recently introduced (in r72591) wxSOCKET_{WAITALL,NOWAIT}_{READ,WRITE}
flags weere for some reason completely different and unrelated to the existing
bidirectional wxSOCKET_{WAITALL,NOWAIT} ones. Change this by defining the
bidirectional version simply as the sum of the two others. This makes much
more sense than testing for either wxSOCKET_XXX or wxSOCKET_XXX_READ or
wxSOCKET_XXX_WRITE being specified.

And it also fixes an assert in wxSocketWaitModeChanger where a sanity check
failed when this class was used with wxSOCKET_WAITALL|wxSOCKET_WAITALL_READ.

See #14506.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72828 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-31 00:17:17 +00:00
Vadim Zeitlin
e3f084fd47 Add wxDirCtrl::GetPath().
This allows to retrieve the directory being affected by wxTreeCtrl event.

Closes #14790.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72819 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-29 18:30:10 +00:00
Vadim Zeitlin
a69b365fbb Get rid of wxAuiToolBar::m_style and just use base class m_windowStyle.
This fixes an assert exposed by the addition of wxAuiToolBar::Create() in
r72785: as m_style was not initialized before, calling GetWindowStyle() from
wxControl::Create() returned wrong flags.

Fix this by just removing m_style completely, there doesn't seem to be any
need for it nor for overriding GetWindowStyleFlag().

See #13520.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72816 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-29 14:50:42 +00:00
Vadim Zeitlin
95c854dfc1 No changes, just avoid code duplication in wxOSX wxDirDialog.
Factor our common parts of wxDirDialog::ShowModal() and ShowWindowModal() in
OSXCreatePanel() helper.

Also some minor cosmetic changes.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72814 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-29 01:20:26 +00:00
Vadim Zeitlin
0c1182328f Don't return "void" to fix MSVC6 compilation.
VC6 doesn't support returning void "value".

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72811 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-28 13:31:50 +00:00
Vadim Zeitlin
0afa3752f6 Implement support for button mnemonics in wxOSX/Cocoa.
Set the mnemonic as "key equivalent".

Closes #12917.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72809 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-28 01:08:32 +00:00
Vadim Zeitlin
79275a0dae Another attempt to fix wxTextMeasure compilation with VC6.
Simply make the methods accessed by the nested class public.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72803 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-27 12:28:04 +00:00
Vadim Zeitlin
a9f1207c1b Allow using wxTextMeasure::GetLargestStringExtent() with wxArrayString.
Change the signature of this method to take the number of strings and the
pointer to the first of them instead of wxVector<wxString> as this allows it
to be used with all of wxVector<wxString>, wxArrayString and raw arrays of
wxStrings.

Also return the computed size from it instead of filling output parameters.

Closes #14781.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72802 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-27 12:28:00 +00:00
Vadim Zeitlin
1bce253a23 Allow wxTextMeasure to work with non-native wxDC objects too.
Just forward back to wxDC itself in this case instead of using the
platform-specific code in wxTextMeasure that only works with native DCs.

See #14781.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72801 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-27 12:27:56 +00:00
Vadim Zeitlin
c70155b8ee Just fix header comments of wxTextMeasure-related files, no real changes.
See #14781.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72799 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-27 12:27:48 +00:00
Robin Dunn
6d7b19b013 Generate the interface file for STC from gen_iface too.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72787 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-27 03:15:08 +00:00