Commit Graph

611 Commits

Author SHA1 Message Date
Artur Wieczorek
5619e7f964 Use wxSwap function to swap values of array elements in wxPGArrayStringEditorDialog::ArraySwap. 2015-08-30 19:49:29 +02:00
Artur Wieczorek
d6f2264f8b Use Boolean variable to store Boolean value. 2015-08-30 19:48:09 +02:00
Artur Wieczorek
c63b1604b3 Use native renderer to draw rectangle indicating that wxPG category property is selected.
Because on some ports native renderers require a valid reference to the windows be drawn then it is necessary to implement and use new wxPGCellRenderer::DrawCaptionSelectionRect method which passes this  additional argument.
2015-08-30 19:46:34 +02:00
Artur Wieczorek
7ce6cff5ab Extend functionality of wxPropertyGridInterface::SetPropertyColoursToDefault method.
SetPropertyTextColour, SetPropertyBackgroundColour methods are able to set colours recursively for sub-properties but SetPropertyColoursToDefault method is not.
For the sake of consistency, SetPropertyColoursToDefault method is extended to have the same capabilities as SetPropertyTextColour and SetPropertyBackgroundColour. Behaviour and signature in default case (no recursion) is preserved.
For internal purposes there were also implemented helper methods in wxPGProperty class: SetDefaultColours, ClearCells.
2015-08-27 19:14:52 +02:00
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
e0f5b49a07 Fixed searching the elements in wxArrayPGProperty.
Use dedicated Index() function to search elements in wxArray instead of calling custom function.
2015-07-20 21:50:30 +02:00
Artur Wieczorek
15d8dae6ff Use IsOk() function to check whether wxBitmap is valid.
Use dedicated function instead of comparing wxBitmap instance with wxNullBitmap.
2015-07-17 22:26:38 +02:00
Artur Wieczorek
4588acb21b Use wxEmptyString instead of dedicated wxPropertyGridInterface member variable. 2015-07-16 21:00:38 +02:00
Artur Wieczorek
79794391e9 Declare wxPG_DEFAULT_IMAGE_SIZE as wxDefaultSize constant.
wxDefaultSize is an equivalent of wxSize(-1,-1) but is more portable.
2015-07-15 21:45:27 +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
98a4c40168 Use IsEmpty() function to check if wxRect represents empty rectangle. 2015-07-06 23:04:21 +02:00
Artur Wieczorek
9e77932278 Use wxBitmap::GetSize() to obtain size of the wxBitmap.
When assigning wxBitmap size to wxSize variable there is not necessary to assign bitmap width and height separately.
2015-07-06 22:13:23 +02:00
Artur Wieczorek
28e2e0f475 Removed unused local variable from wxPropertyGrid::GetPropertyRect 2015-07-06 21:50:23 +02:00
Artur Wieczorek
b2af64faaf Use variable of type wxEventType to store value returned by GetEventType function.
Since wxEvent::GetEventType() returns wxEventType value, the variable used to hold returned value should be also of this type.
2015-07-06 20:43:28 +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
de38b5da25 Use wxUniChar instead of wxChar for operations with wxString iterators. 2015-06-29 20:06:27 +02:00
Artur Wieczorek
d9acff9cd8 Use variable of proper type in wxPropertyGrid::SelectProperty
Variable should be declared as unsigned int because it is passed as an unsigned int parameter.
2015-06-29 20:04:48 +02:00
Artur Wieczorek
27032e71d2 Remove unused variable from wxFontProperty::wxFontProperty 2015-06-28 19:31:52 +02:00
Artur Wieczorek
7c0b52671d Use wxS macro with string literals.
To make string literals notation consistent.
2015-06-25 21:22:45 +02:00
Vadim Zeitlin
095cf87eb6 Work around "missing" LLONG_MAX &c in MinGW strict ANSI mode.
Definitions of non-standard LLONG_MAX, LLONG_MIN and ULLONG_MAX constants are
excluded from MinGW limits.h when compiling in "strict ANSI" mode, so define
them ourselves.
2015-06-14 19:52:28 +02:00
Artur Wieczorek
87f0b6fe80 Fix and refactor wxString wxPGProperty::GetFlagsAsString and SetFlagsAsString.
Fixes the bug which could be observed if string containing more then one flag entry was provided to wxPGProperty::SetFlagsFromString. In this case property flags were not set properly (were not set all) due to the error in splitting the string into tokens (whole string instead of its individual token was taken to compare).
Lookup table used to map between flag values and their names is redesigned in order to reduce the size and to make indexing simpler. There are no longer NULL entries in the table and every flag name is identified explicitly by the corresponding flag value and not by the index of the name entry in the table. Thanks to this the relation between flag value and flag name is more clear and the loops in wxPGProperty::GetFlagsAsString/SetFlagsAsString can be simplified.
2015-06-14 17:07:24 +02:00
Artur Wieczorek
8e2f1b47aa Use wxS macro with string literals.
To make string literals notation consistent.
2015-06-12 23:39:00 +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
6cc7811394 Fixed minor typos in comments.
Yet another iteration.
2015-06-09 20:04:27 +02:00
Artur Wieczorek
c9417c41f5 Fix PCH-less build after cb6efbd.
Add missing wx/settings.h inclusion.
2015-06-09 18:03:56 +02:00
Artur Wieczorek
aeed3322f2 Fixed minor typos in comments. 2015-06-08 21:49:38 +02:00
Artur Wieczorek
c8088e479a Fixed minor typos in the name of variables. 2015-06-08 21:48:08 +02:00
Artur Wieczorek
cb6efbd3c3 Lay out various wxPG dialogs based on the current system screen design.
Currently, customizing some dialogs for small screen environment is done statically on the build stage by setting wxPG_SMALL_SCREEN to 1 (what is done for WXWINCE only).
Instead, we can do this for all platforms in a dynamic manner, based on the classification provided by wxSystemSettings::GetScreenType() function.
In order to do so there is introduced a static helper function wxPropertyGrid::IsSmallScreen() which is used to select right parameters (size, position) for several dialogs in order to display them correctly on the small screen.
2015-06-08 21:46:03 +02:00
Artur Wieczorek
1d9c1b35fd Use pre-increment operator to increment iterator in the loop.
When the return value is ignored, the ++it is never less efficient than the it++.
2015-06-07 23:05:42 +02:00
Artur Wieczorek
06013ea36f Reduce the scope of variables using to index single loop only.
And adjust their types if necessary.
2015-06-06 17:55:39 +02:00
Artur Wieczorek
213df7dd88 Use conditional operator instead of conditional statement in wxBoolProperty::ValueToString. 2015-06-06 17:48:59 +02:00
Artur Wieczorek
ccd98c6ad9 Refactor: use <<= bit shift assignment operator in wxPGProperty::GetFlagsAsString.
Use it instead of << operator which is used to just shift bits in one variable.
2015-06-05 22:49:49 +02:00
Artur Wieczorek
3e3aaa33db Refactor string manipulations in wxPropertyGrid::ExpandEscapeSequence and CreateEscapeSequences.
Share wxString::clear() method to initialize empty destination string.
2015-06-05 22:47:28 +02:00
Artur Wieczorek
f7322af25e Replace wxChar with wxStringCharType in wxPropertyGrid code. 2015-06-04 22:51:34 +02:00
Jan van Dijk
72a4c3a4d0 Don't test if a reference is null, this cannot happen.
Testing for null references is unnecessary and just results in clang warnings.

Closes #17016.
2015-06-03 17:08:30 +02:00
Artur Wieczorek
85a76d2d61 Fix calculating width of columns in the wxPG header.
When calculating widths of columns in the header there is necessary to take into account also width of the vertical scrollbar in the grid, if it exists. When scrollbar is ignored in calculations then we get wrong width of internal border and in result the columns of the header don't match the columns of the grid (this issue can be observed in the propgrid sample).
2015-06-01 20:19:11 +02:00
Artur Wieczorek
2d5beca260 Refactor: share duplicated code in the internal class wxPGHeaderCtrl.
Because code responsible for determining widths of all columns is duplicated in OnPageUpdated() and OnColumWidthsChanged() methods it can be moved to the new shared method DetermineAllColumnWidths().
Method DetermineColumnWidth() used now to determine width of the one column only is no longer necessary and can be removed.
2015-06-01 20:06:58 +02:00
Artur Wieczorek
7d6f71bc5e Replaces references to wxS("") with wxEmptyString in wxPG. 2015-05-31 19:20:14 +02:00
Artur Wieczorek
67bfb78ace Replace wxT() with wxS() in wxPropertyGrid code. 2015-05-31 19:20:11 +02:00
Artur Wieczorek
65dee275f2 Fix minor typos in comments. 2015-05-30 20:12:02 +02:00
Artur Wieczorek
ff685a7a4c Use wxID_ANY symbol for internal wxPG controls. 2015-05-30 20:10:09 +02:00
Artur Wieczorek
6dfd6f4930 Use wxSizerFlags instead of multiple argument Add() overload when constructing sizers in wxPG.
Set sizer flags in wxLongStringProperty::DisplayEditorDialog and wxPGArrayEditorDialog::Create in this more convenient way.
2015-05-29 21:05:30 +02:00
Artur Wieczorek
a210cb0bbf Don't use wxALIGN_CENTRE_VERTICAL flags when adding item to the vertical sizer in wxPG.
This flag shouldn't be used in vertical sizers (in wxLongStringProperty and wxPGArrayEditorDialog) because vertical alignment flags are ignored in such sizers and the assertion message is thrown in wxBoxSizer::DoInsert. This can be observed e.g. in propgrid sample when there is launched wxLongStringProperty or ArrayDoubleProperty editor.
2015-05-29 20:56:42 +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
01cf62684c Use wxPGProperty::GetDepth() getter.
Use it instead of getting direct access to the corresponding member variable.
2015-05-27 21:15:28 +02:00
Artur Wieczorek
f740e5f784 Optimize wxNumericPropertyValidator::Validate method.
Remove second unnecessary casting from wxWindow to wxTextCtrl and use wxTextCtr::IsEmpty() function to check directly if the text control contains any text instead of examining retrieved string value.
2015-05-27 21:13:09 +02:00