Commit Graph

117 Commits

Author SHA1 Message Date
Artur Wieczorek
64bcd668c7 Refactor wxPropertyGrid::GenerateEditorTextCtr, cont.
Use Boolean expression instead of conditional statement to initialize Boolean value.
2015-08-20 20:57:18 +02:00
Artur Wieczorek
b43549eb2d Refactor wxPropertyGrid::GenerateEditorTextCtr
Use simplest constructors to initialize local wxPoint, wxSize members.
2015-08-20 20:56:30 +02:00
Artur Wieczorek
4398e20655 Use wxDefaultCoord instead of explicit -1 value while initializing wxSize and wxPoint variables. 2015-07-15 21:45:08 +02:00
Artur Wieczorek
7d77168936 Refactor: Use dedicated methods to manipulate wxRect members. 2015-07-07 21:56:17 +02:00
Artur Wieczorek
6f3003c3e1 Fix drawing choice item bitmap when using wxPGEditor_Choice.
Horizontal alignment of bitmap associated with wxPGChoice item drawn in wxPGComboBox (in wxPropertyGrid::OnComboItemPaint) needs to be adjusted by 1 pixel (as it is already done for text label) in order to get the bitmap in the same position when wxPGComboBox is selected.
2015-07-05 21:17:35 +02:00
Artur Wieczorek
a253cdb413 Refactor wxPropertyGrid::OnComboItemPaint
Make the code more readable by reducing scope of some local variables, by simplifying their initialization, etc.
2015-07-05 21:14:50 +02:00
Artur Wieczorek
4d4ece53f1 Use wxEmptyString instead of wxString().
To keep uniform notation of empty strings.
2015-06-12 23:35:17 +02:00
Artur Wieczorek
aeed3322f2 Fixed minor typos in comments. 2015-06-08 21:49:38 +02:00
Artur Wieczorek
67bfb78ace Replace wxT() with wxS() in wxPropertyGrid code. 2015-05-31 19:20:11 +02:00
Artur Wieczorek
0508087ce2 Reduce the scope of variables using to indexing single loop only.
And adjust their types if necessary (to have uniform types in the test expression).
2015-05-28 19:39:14 +02:00
Artur Wieczorek
6908275ed2 Use wxDynamicCast() instead of IsKindOf() checks. 2015-05-28 19:20:12 +02:00
Artur Wieczorek
a6bdfa7fd0 Use variable of type wxEventType to store the value returned by GetEventType function.
Since wxEvent::GetEventType() returns wxEventType value the variable used to hold returned value should be also of the same type.
2015-05-26 21:13:13 +02:00
Artur Wieczorek
fec5f36139 Use getter functions to get access to some properties of wxPropertyGridPageState.
Use existing GetColumnCount(), GetColumnWidth() functions instead of getting direct access to corresponding member variables.
2015-05-24 20:44:20 +02:00
Dimitri Schoolwerth
8f8d58d193 Use wx-prefixed macros throughout the repository.
Change {DECLARE,IMPLEMENT}_*CLASS and {DECLARE,BEGIN,END}_EVENT_TABLE
occurrences to use the wx-prefixed version of the macros.
2015-04-23 22:00:35 +04:00
Artur Wieczorek
cc575a7a89 Use in wxPG classes wxMilliClock_t variables to store values returned by wxGetLocalTimeMillis() function.
wxMilliClock_t is always mapped to the proper base type and hence can be used even if wxLongLong type is not defined (when wxUSE_LONGLONG is disabled).
2015-04-03 21:11:15 +02:00
Artur Wieczorek
4e7fbd4e92 Use predefined constants to represent wxPG variant types.
Instead of using individual string literals use globally defined constants representing wxPG variant types.
2015-03-29 21:42:58 +02:00
Artur Wieczorek
5353a00180 Use wxVariant::IsType() function to check the type of variant values in wxPG.
Since there is a dedicated function to check the type of variant then there is not necessary to call wxVariant::GetType() function and perform explicit comparisons of returned strings.
2015-03-29 21:41:52 +02:00
Artur Wieczorek
b5e0a16dfd Activate double-click processor only if wxPGComboBox editor is associated with wxBoolProperty.
Special handling of double-clicks (in wxPGDoubleClickProcessor) makes sense only for properties handling Boolean values (wxBoolProperty).
2015-02-26 19:18:06 +01:00
Artur Wieczorek
da0f4ce29e Use getter methods to get access to wxPGProperty member variables.
Use GetValueImage() getter to get access to m_valueBitmap data member.
Use GetMaxLength() getter to get access to m_maxLen data member.
Use GetAttributes() getter to get access to m_attributes data member.
Use GetChoices() to get access to m_choices data member.
Use GetDepth() to get access to m_depth member variable.
Use GetBaseName() method to get access to m_name data member
Use GetLabel() method to get access to m_label member variable.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78427 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2015-01-31 21:45:24 +00:00
Artur Wieczorek
9698181b45 Use getter/setter methods to get access to wxPGProperty::m_flags.
Use dedicated wxPGProperty::HasFlags, wxPGProperty::SetFlag methods to check or modify wxPGProperty::m_flags member variable.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78426 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2015-01-31 21:42:17 +00:00
Artur Wieczorek
be9c92f6f2 Sanity check regarding DC in wxPropertyGrid::OnComboItemPaint
Ensure that wxDC used by drawing functions in wxPropertyGrid::OnComboItemPaint is valid.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78366 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2015-01-12 20:29:02 +00:00
Artur Wieczorek
a90597a355 Don't attempt to draw element-specific bitmap when drawing wxPGChoices element inside the control field of wxEnumProperty with wxPGComboBox.
The only bitmap which can be drawn in the control field is a "general" value bitmap (assigned to the property).

Closes #16781


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78365 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2015-01-12 20:23:58 +00:00
Artur Wieczorek
55da8a0f86 Pass outside wxPG a modified clone of wxEVT_TEXT event instead of hacking current event object.
Using a clone of event (with PG id) instead of replacing id in the currently processed event coming from wxPGTextCtrlEditor seems to be less intrusive and safer action.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78328 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-12-28 20:06:35 +00:00
Artur Wieczorek
c7bc7b467a Remove unused member variable from wxSimpleCheckBox (used in wxPGCheckBoxEditor).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78269 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-12-12 22:58:10 +00:00
Artur Wieczorek
7dc1ab1c76 Use wxCONTROL_FOCUSED control state flag when drawing native wxPG check box in the "modified state" under wxOSX.
Generally, wxCONTROL_PRESSED control flag is used when drawing native check box (wxPGEditor_CheckBox) in "modified state" but under wxOSX this flag is equivalent to wxCONTROL_CHECKED flag and hence it is necessary to indicate this state in an alternative way.

Closes #16696

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78212 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-12-01 22:47:48 +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
Artur Wieczorek
8474dc6489 Fix vertical positioning of text field in the combo box editor associated with wxPG property under wxMSW.
Vertical position of text field in wxOwnerDrawnComboBox control (instantiated at property selection) doesn't need any special adjustment.

Closes #16556.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77687 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-13 20:45:37 +00:00
Artur Wieczorek
6871f5fe90 Remove temporary fix for drawing check box in the wxPG edit mode with RTL layout
Since the issue is fixed (r77020) this hack is no longer necessary (see #16254).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77025 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-08 07:13:03 +00:00
Artur Wieczorek
c85cfb1bc0 Fix for drawing check box in the wxPG edit mode when RTL layout direction is set under wxMSW.
Check box isn't drawn correctly in the edit mode under wxMSW due to the problems with RTL handling in wxAutoBufferedPaintDC and wxPaintDC (see #16254).
We need to only draw the image, no text, so we can work around the problem by overriding layout direction to LTR.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76932 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-15 16:30:10 +00:00
Artur Wieczorek
f1c25a7838 Use native renderer for drawing check boxes in wxPG only if wxPG_USE_RENDERER_NATIVE flag is set.
wxPG_USE_RENDERER_NATIVE flag is used in wxPG code to control whether  native renderers can be called and we need to employ it. Legacy custom drawing code is used if this flag is no set.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76910 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-13 16:34:42 +00:00
Artur Wieczorek
3adc631fa1 Use native renderer to draw check boxes in wxPG.
Use wxRendererNative procedure instead of custom check box drawing to get native look and feel of the check boxes in wxPG.

Closes #14881.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76895 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-12 16:34:27 +00:00
Artur Wieczorek
3a87deed2a Use XOR operation to toggle the state of check box in wxPG.
Minor optimization by using single XOR operation instead of separate AND, OR operations to toggle the state of wxSimpleCheckBox.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76886 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-10 16:35:36 +00:00
Artur Wieczorek
295549d95b Defer using of editable check box in wxPG until it is fully initialized.
Currently, when wxPGCheckBoxEditor is clicked then associated check box (wxSimpleCheckBox) is created and immediately after that its state is changed. This causes problems when underlaying validation is performed because the check box object is not yet registered as an active editor and thus it is not visible from within e.g. validation function.
We need to defer changing the initial state of the check box until this box is registered by queuing the special event which will be processed after initialization.

Closes #16361.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76885 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-10 16:22:06 +00:00
Artur Wieczorek
63a9cc4c2e Use automatically generated ID values for wxPG sub-controls.
Currently in wxPG there are used fixed "magic" ID values to identify sub-controls and this can lead to side effects if these values overlap with ID values assigned to another controls in the application (like e.g. menu items).

Closes #13634.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76882 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-09 18:56:36 +00:00
Vadim Zeitlin
ceb39f4174 Allow viewing read-only long string wxPropertyGrid properties values.
When wxLongStringProperty is read-only, it should still be possible to view
its value by opening the dialog normally used for editing it, otherwise this
value cannot be seen (nor copied, which is also useful sometimes) at all.

Closes #14945.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76631 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-05-31 14:21:23 +00:00
Vadim Zeitlin
494c9c9b0b Avoid showing the colour selection dialog twice in wxPropertyGrid.
Selecting "Custom" in a colour property cell resulted in the colour selection
dialog being shown twice if it was cancelled the first time.

Fix this by using wxPG_PROPERTY_SPECIFIC to indicate that the value is just
being queried and the user shouldn't be asked to enter it, as it is already in
the other places.

Closes #15543.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76597 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-05-22 14:36:00 +00:00
Vadim Zeitlin
d94e807cfc Fix querying the value of wxEnumProperty in wxPropertyGridEditor.
Doing this changed the internal state of the control and resulted in the
choice not being updated.

Fix this by using wxPG_PROPERTY_SPECIFIC.

Closes #15449.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76557 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-05-17 12:29:26 +00:00
Paul Cornett
9b41d18b25 remove unused macro definitions
and limit others to the configurations which use them

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76280 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-04-04 16:44:30 +00:00
Vadim Zeitlin
33ad33d447 Add wxOVERRIDE and use it in common and wxOSX code.
Make overriding virtual methods more explicit and enable additional checks
provided by C++11 compilers when "override" is used.

Closes #16100.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76173 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-20 13:26:28 +00:00
Vadim Zeitlin
bd30752410 Just deprecate but don't schedule for removal wxNORMAL and friends.
Deprecate the use of the old untyped constants but don't schedule them from
removal in a future wx version by removing "#if WXWIN_COMPATIBILITY_3_0" tests
around their definition and use. Provoking deprecation warnings in the code
using these constants is worth it as they are unclear and it's easy to make
mistakes when using them, but breaking this code compilation outright can't be
justified -- even in the future.

Also use more informational wxDEPRECATED_MSG() instead of a simple
wxDEPRECATED() as it might not be obvious at all how should the code be
updated exactly.

Finally, avoid the use of deprecated constants inside the library itself.

As a side effect, this closes #15814.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75565 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-06 12:42:37 +00:00
Vadim Zeitlin
a49d3f4161 Fix tons of warnings in wxMSW after deprecating wxPen/wxBrush int styles &c.
Replacement of FUTURE_WXWIN_COMPATIBILITY_3_0 with WXWIN_COMPATIBILITY_3_0 in
r75532 resulted in tons of warnings as all code using wxSOLID and similar
constants now uses the deprecated methods taking int instead of the preferred
ones taking wx{Pen,Brush}Style (and similarly for wxFont{Style,Weight,Family}).

Fix all of them but this also would seem to mean that this change might not be
such a good idea at all.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75547 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-04 22:20:36 +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
Paul Cornett
7d1214cd72 silence warnings about shadowed variables with GCC -Wshadow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72611 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-04 15:55:06 +00:00
Vadim Zeitlin
70680b6177 Use SelectAll() instead of SetSelection(-1, -1).
The former is more clear and also shorter.

Closes #14701.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72566 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-09-27 22:41:09 +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
Vadim Zeitlin
7e8a20edc8 Remove unneeded dynamic cast in wxPropertyGrid.
It's completely useless to check that an object is of its own statically
declared type as this is always true, simply don't do it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71623 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-01 11:01:12 +00:00
Julian Smart
990952304c Improved the appearance of the property grid checkbox on Mac and GTK+
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70769 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-01 18:52:38 +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