Commit Graph

33460 Commits

Author SHA1 Message Date
Vadim Zeitlin
ec6777f17d Adjust code, to consistent with the coding style
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77789 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:40:27 +00:00
Vadim Zeitlin
c2b83f1b72 wxCheckListBox must clear the object that created in parent class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77788 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:40:24 +00:00
Vadim Zeitlin
a4e72041fb Add GetBitmap support to wxButton in wxUniv
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77787 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:40:22 +00:00
Vadim Zeitlin
15908f0a43 If string are empty, DoGetTextExtent should not return descent by a random value
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77786 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:40:18 +00:00
Vadim Zeitlin
51ca7cdcd0 Enable these wxRegion constructor for x11 port
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77784 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:40:08 +00:00
Vadim Zeitlin
a8b36e90eb The unit test will use WX_ASSERT_FAILS_WITH_ASSERT to check DoSetRegion(test/geometry/region.cpp:101) eventually, and the macro could handle exception, not true or false. Change it consistent with other port
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77783 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:40:05 +00:00
Vadim Zeitlin
8c6a9bd10d Adjust the bitmapButton size according the bitmap size when set bitmap to BitmapButton in wxUniv port
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77782 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:40:02 +00:00
Vadim Zeitlin
fc8d46b34a wxColurRefData in x11 did not overwrite CreateRef function, so it should not use AllocExclusive(), use UnRef() instead, just like InitRGBA() function in wxGTK port did
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77781 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:39:59 +00:00
Vadim Zeitlin
07a471df83 wxUniv not support unicode yet
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77780 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:39:56 +00:00
Vadim Zeitlin
44cf7023c0 Add more evidential comments, adjust code to follow coding style
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77779 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:39:53 +00:00
Vadim Zeitlin
af4f17a553 Make wxSlider behaviours in wxUniv same as other ports, and generate proper wxScrollEvent
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77777 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:39:47 +00:00
Vadim Zeitlin
58730bc356 Add wxEVT_SET_FOCUS and wxEVT_KILL_FOCUS event to wxX11
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77776 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:39:44 +00:00
Vadim Zeitlin
32b4a42cd1 Fix Error: Failed to initialize GUI: no built-in themes found when run gui and load theme, by add WX_USE_THEME in the place that create them object
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77773 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:39:34 +00:00
Vadim Zeitlin
65b8a129ad Fix code input mistakes and type convertion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77771 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:39:25 +00:00
Vadim Zeitlin
f028e3325b Remove the conditional preprocessor directive around wx/stockitem.h, the head file not cause any problem, revert the mistake that I made in 2e2b1313d97ea1c79a396333f40872157fd629d4
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77770 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:39:22 +00:00
Vadim Zeitlin
1c88c28c41 Solve textctrl handle char type event twice error, correct the insertion point calculation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77769 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:39:19 +00:00
Vadim Zeitlin
d8618b6814 as convention, if a text range is (x, -1), it means from x to the end, so if to was -1, set it to the last position
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77768 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:39:16 +00:00
Vadim Zeitlin
ccb64682eb add if preprocessor directive, if wxUniv build with MSW, include wx/stockitem.h, others are not. with x11 and this head file will cause error
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77764 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:39:03 +00:00
Vadim Zeitlin
d807edb681 Add wx/stockitem.h to univ/button.cpp and univ/tglbtn.cpp, to fix wxUniv MSW complitaion error
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77763 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:39:00 +00:00
Vadim Zeitlin
3725133d05 Click scrollbar will cause recapture mouse twice error, add check sentence before capture and release mouse in HandleMouse()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77762 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:38:57 +00:00
Vadim Zeitlin
d45fdc114a Release the mouse and capture data at the end of the function. This was not always done before and it was wrong because other event such as mouse left up will not release mouse
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77761 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:38:54 +00:00
Vadim Zeitlin
8e238e367e wxX11 wxFont miss the wxFont (const wxString &nativeInfoString) ctor, it will cause build tests failed. Added and fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77760 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:38:51 +00:00
Vadim Zeitlin
43c99ef613 Refactor: create src/univ/anybutton.cpp.
Extract and pull the common functions from wxButton and wxToggleButton to
wxAnyButton in wxUniv too.

Also make wxToggleButton inherit from wxToggleButtonBase correctly

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77759 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 17:38:47 +00:00
Paul Cornett
16601713a4 cairo_image_surface_get_{width,height} have been available in cairo since version 1.0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77758 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 16:37:15 +00:00
Vadim Zeitlin
81ec161949 Fix setting layout direction for wxSpinCtrl in wxMSW.
Position the spin control components (the button and the text) correctly for
the current layout.

Also update the layout of the text explicitly.

See #11583.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77755 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-21 01:41:22 +00:00
Vadim Zeitlin
e5755015e7 Fix setting layout direction for wxComboBox in wxMSW.
The EDIT control used by the native combobox is different from normal EDIT
controls and has to be handled specially.

We also need to explicitly forward WS_EX_LAYOUTRTL to the dropdown window as
it doesn't inherit it from the combobox itself automatically.

See #11583.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77754 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-21 01:41:17 +00:00
Vadim Zeitlin
da41c5d9bb Don't leak global objects in Direct2D code.
Ensure that all globals are freed on library shutdown by using a module just
to perform this cleanup.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77753 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-21 01:41:14 +00:00
Vadim Zeitlin
db73e480ef Don't call CoInitializeEx() from Direct2D code.
This is unnecessary, COM is already initialized on the application startup and
Direct2D can't be used before that anyhow.

This also fixes lack of matching CoUninitialize() call.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77752 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-21 01:41:10 +00:00
Vadim Zeitlin
7cccbaa15e Fix double release in wxGLCanvas code.
The change in r77701 was partially wrong, we shouldn't release Objective-C
object if initializing it failed.

See #16555.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77750 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-20 22:07:52 +00:00
Vadim Zeitlin
51791822a1 Avoid integer overflow/wraparound in wxString::Mid().
Don't compare nLength with "nFirst + nCount" as this could wrap around.

Compare nCount with maximal allowed count, after ensuring that nFirst itself
is valid first, instead.

Closes #16572.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77749 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-20 22:07:48 +00:00
Vadim Zeitlin
4d561bf02c Use wxMulDivInt32() instead of multiplying and dividing ints with doubles.
This is mostly done to avoid warnings about converting the result of
multiplying and dividing an int by doubles back to int, but is also more
correct as wxMulDivInt32() rounds the result correctly instead of truncating
the fractional part, and is also a tiny bit more efficient under MSW where the
native ::MulDiv() is available.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77748 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-20 22:07:45 +00:00
Vadim Zeitlin
8ad1e2698f Make wxTextCtrlOleCallback destructor virtual to avoid g++ warnings.
This class doesn't really need a virtual dtor as it's never used
polymorphically, but add it to avoid g++ warnings about it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77747 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-20 22:07:42 +00:00
Vadim Zeitlin
58a7d6338c Fix harmless g++ warning about "using NULL in arithmetic".
::SetThreadExecutionState() returns a DWORD, which is not a pointer, so
compare its return value with 0, not NULL.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77746 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-20 22:07:40 +00:00
Vadim Zeitlin
c5ee5b8ea7 Don't use wxMSW wxAppProgressIndicator if wxUSE_TASKBARBUTTON==0.
This class requires wxTaskBarButton to be really implemented, so there is no
need to even define the MSW-specific version of it if wxUSE_TASKBARBUTTON is 0
anyhow.

This fixes a compilation problem with wxUSE_TASKBARBUTTON==0 but, more
importantly, just makes more sense.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77745 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-20 22:07:37 +00:00
Artur Wieczorek
c1741cf677 Use wxPropertyGrid::HasInternalFlag() function to check internal flags.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77739 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-20 19:57:47 +00:00
Artur Wieczorek
a3611b8190 Fix manual selection of custom colour item for wxColourProperty and wxSystemColourProperty in wxPG.
If keyword 'custom' is entered into the edit field of wxColourProperty or wxSystemColourProperty (with wxPGEditor_ComboBox) then dialog box to query for custom colour should be invoked. Afterwards, when control value is updated, its selection index should be also updated respectively.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77738 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-20 19:46:25 +00:00
Robin Dunn
fe7301b6b0 Oops, a '{' got lost somewhere from the last commit...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77737 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-19 23:56:13 +00:00
Robin Dunn
b25a6a4bb6 I'm not totally sure when they were added, but the cairo_image_surface_get_[width|height] functions are not available in cairo 1.10.2.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77735 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-19 23:28:43 +00:00
Julian Smart
4f4258cfdc Implemented vertical image alignment.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77722 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-18 14:39:49 +00:00
Vadim Zeitlin
a35527e0e1 Fix crash when creating wxGraphicsBitmap from cairo_surface_t.
Initialize m_buffer to avoid crashes when deleting it in Cairo-based
wxGraphicsContext implementation for bitmaps created from the native ones.

Don't leave the bitmap size uninitialized neither, this might not result in
crashes, but is definitely wrong as well.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77718 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-18 00:01:31 +00:00
Stefan Csomor
5bf74fb2e5 fixing #16564, partly reverting r76426
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77715 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-16 16:04:20 +00:00
Vadim Zeitlin
2a5d51c08f Get rid of IsOk() accessor in Cairo implementation code.
This was quite useless as m_ok flag was public anyhow, just use it directly.

Incidentally closes #16560.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77709 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-15 16:01:52 +00:00
Vadim Zeitlin
ad1ff55184 Always include wxGA_PROGRESS in wxGauge styles enumeration.
It can still be used even if it's not available under the current platform.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77707 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-14 23:58:29 +00:00
Vadim Zeitlin
28516f5643 Make wxAppProgressIndicator actually usable.
First of all, do define it under non-MSW platforms.

Second, don't crash in it when running under XP where wxTaskBarButton is not
available.

Also add IsAvailable() method to check for its availability explicitly and add
a demonstration of this class to the dialogs sample.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77706 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-14 23:58:26 +00:00
Vadim Zeitlin
03e245091f Use factory function for wxTaskBarButton creation.
This allows to encapsulate checking for errors, which should be handled when
using this class as task bar buttons API is not available under Windows XP.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77705 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-14 23:58:22 +00:00
Vadim Zeitlin
76aa6d5db7 Revert "Avoid generating wxEVT_MENU_OPEN and CLOSE for disabled menus in wxMSW."
The check for top level menus being disabled added in r77657 is broken as it's
used, with the expectedly bad consequences, for non top level menus as well,
as can be seen by opening any submenu, so revert it.

See #2168.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77704 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-14 23:58:17 +00:00
Vadim Zeitlin
3d09a6efc2 Request hardware accelerated GL under OS X only if it's available.
Otherwise wxGLCanvas creation just fails completely when it isn't, e.g. when
running inside a VM.

Closes #16555.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77701 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-14 23:08:30 +00:00
Vadim Zeitlin
6d0f27a4cc Blind fix to wxiOS build after strike-through fixes.
This should correct build breakage caused by r77695.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77700 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-14 23:08:27 +00:00
Stefan Csomor
f5d6be6d86 fixing memory leak
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77697 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-14 18:11:38 +00:00
Artur Wieczorek
44be806ac6 Use special code to identify custom colour in wxPG.
There is already defined a special code (wxPG_COLOUR_CUSTOM) to identify custom colour in wxColourProperty and wxSystemColourProperty but in practice item representing this colour is identified either by position (it is assumed it as always last item) or by fixed text label. This inconsistency makes the code unclear and can lead to problems (see workaround r76627).
Now, only wxPG_COLOUR_CUSTOM code is used to identify custom colour and hence "custom colour" item doesn't need to be the last item in the collection and doesn't need to have a fixed text label (like "Custom").


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77696 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-14 17:07:08 +00:00