Skip to content
This repository was archived by the owner on Feb 20, 2024. It is now read-only.

Commit 020bc28

Browse files
author
Martin Halle
committed
* updated wxPropGrid from to 1.4.14 to hopefully fix issues reported here: http://forums.codeblocks.org/index.php/topic,12362.msg88995.html#msg88995
git-svn-id: https://svn.code.sf.net/p/codeblocks/code/trunk@6570 2a5c6006-c6dd-42ca-98ab-0921f2732cef
1 parent e2d79df commit 020bc28

18 files changed

+1358
-971
lines changed

src/sdk/wxpropgrid/README-wxPython.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
wxPropertyGrid for wxPython
55

6-
Version: 1.4.12
6+
Version: 1.4.14
77

88
By Jaakko Salli ([email protected])
99

src/sdk/wxpropgrid/build/configure.ac

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
# NOTE: you'll want to replace the first string in [] brackets with the name of your
1818
# component, the second string with its version and third one with your mail
1919
# (so that users will be able to contact you in case they have problems)
20-
AC_INIT([PROPGRID], [1.4.12], [[email protected]])
20+
AC_INIT([PROPGRID], [1.4.14], [[email protected]])
2121
AC_CONFIG_AUX_DIR(build) # this is needed, don't touch it
2222

2323
# ENABLES/DISABLES THE DEBUG MODE FOR THIS CONFIGURE SCRIPT

src/sdk/wxpropgrid/changes.txt

+49
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,54 @@
11

22

3+
Version 1.4.14 ( ?-?-2010 )
4+
5+
Bugs Fixed:
6+
7+
- wxPython Bindings: Custom properties did not properly support wxRect
8+
as a value.
9+
10+
11+
12+
Version 1.4.13 ( Aug-22-2010 )
13+
14+
New Features:
15+
16+
- Added two new validation failure behavior flags:
17+
wxPG_VFB_SHOW_MESSAGEBOX and
18+
wxPG_VFB_SHOW_MESSAGE_ON_STATUSBAR
19+
20+
These allow defining exactly how the message display behavior works,
21+
unlike the old wxPG_VFB_SHOW_MESSAGE which had inconsistent (default)
22+
behavior (see bug #3024332).
23+
24+
- wxPython Bindings: Python 2.7 is now supported.
25+
26+
27+
Bugs Fixed:
28+
29+
- Linking the library could fail if the program used wxPGProperty::Hide().
30+
31+
- Property label editor blocked basically all other keyboard activity.
32+
33+
- Validation failure was not (always) reset when a valid value was
34+
entered after an invalid one (see bug #3024332).
35+
36+
- Validation failure message for wxIntProperty's min/max constraints
37+
was sometimes incorrect (see bug #3024332).
38+
39+
- Redundant validation failure message boxes should no longer be shown
40+
(see bug #3024332).
41+
42+
- wxPython bindings: Fixed DateProperty value conversion. Month was
43+
off by one and it did not accept datetime.date as input (only accepted
44+
datetime.datetime).
45+
46+
- wxPython Bindings: ChildChanged() was not properly implemented, so it was
47+
not possible to create custom properties with private children (i.e.
48+
things similar to SizeProperty and FontProperty).
49+
50+
51+
352
Version 1.4.12 ( May-30-2010 )
453

554
Bugs Fixed:

src/sdk/wxpropgrid/configure

+9-9
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#! /bin/sh
22
# Guess values for system-dependent variables and create Makefiles.
3-
# Generated by GNU Autoconf 2.59 for PROPGRID 1.4.12.
3+
# Generated by GNU Autoconf 2.59 for PROPGRID 1.4.14.
44
#
55
# Report bugs to <[email protected]>.
66
#
@@ -269,8 +269,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
269269
# Identity of this package.
270270
PACKAGE_NAME='PROPGRID'
271271
PACKAGE_TARNAME='propgrid'
272-
PACKAGE_VERSION='1.4.12'
273-
PACKAGE_STRING='PROPGRID 1.4.12'
272+
PACKAGE_VERSION='1.4.14'
273+
PACKAGE_STRING='PROPGRID 1.4.14'
274274
PACKAGE_BUGREPORT='[email protected]'
275275

276276
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CXX CXXFLAGS ac_ct_CXX WX_CONFIG_PATH WX_CPPFLAGS WX_CFLAGS WX_CXXFLAGS WX_CFLAGS_ONLY WX_CXXFLAGS_ONLY WX_LIBS WX_LIBS_STATIC WX_VERSION_FULL WX_RESCOMP WX_VERSION_MAJOR WX_VERSION_MINOR WX_UNICODE WX_DEBUG WX_SHARED WX_PORT RANLIB ac_ct_RANLIB INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S SET_MAKE MAKE_SET AR ac_ct_AR AROPTIONS STRIP ac_ct_STRIP NM ac_ct_NM INSTALL_DIR LDFLAGS_GUI IF_GNU_MAKE PLATFORM_UNIX PLATFORM_WIN32 PLATFORM_MSDOS PLATFORM_MAC PLATFORM_MACOS PLATFORM_MACOSX PLATFORM_OS2 PLATFORM_BEOS SO_SUFFIX SO_SUFFIX_MODULE DLLIMP_SUFFIX LIBPREFIX LIBEXT DLLPREFIX DLLPREFIX_MODULE dlldir AIX_CXX_LD SHARED_LD_CC SHARED_LD_CXX SHARED_LD_MODULE_CC SHARED_LD_MODULE_CXX PIC_FLAG WINDOWS_IMPLIB USE_SOVERSION USE_SOVERLINUX USE_SOVERSOLARIS USE_SOVERCYGWIN USE_MACVERSION USE_SOSYMLINKS SONAME_FLAG DEPS_TRACKING BK_DEPS WINDRES ac_ct_WINDRES REZ SETFILE COND_DEPS_TRACKING_0 COND_DEPS_TRACKING_1 COND_PLATFORM_MACOSX_0_USE_SOVERCYGWIN_0_USE_SOVERSION_1 COND_PLATFORM_MACOSX_0_USE_SOVERSION_1 COND_PLATFORM_MACOSX_1 COND_PLATFORM_MACOSX_1_USE_SOVERSION_1 COND_PLATFORM_MAC_1 COND_PLATFORM_OS2_1 COND_PLATFORM_WIN32_1 COND_USE_SOSYMLINKS_1 COND_USE_SOVERCYGWIN_1_USE_SOVERSION_1 COND_USE_SOVERLINUX_1 COND_USE_SOVERSION_0 COND_USE_SOVERSOLARIS_1 COND_WINDOWS_IMPLIB_1 COND_WX_DEBUG_0 COND_WX_DEBUG_0_WX_UNICODE_1 COND_WX_DEBUG_1 COND_WX_DEBUG_1_WX_UNICODE_0 COND_WX_DEBUG_1_WX_UNICODE_1 COND_WX_SHARED_0 COND_WX_SHARED_1 LIBOBJS LTLIBOBJS'
@@ -746,7 +746,7 @@ if test "$ac_init_help" = "long"; then
746746
# Omit some internal or obsolete options to make the list less imposing.
747747
# This message is too long to be a string in the A/UX 3.1 sh.
748748
cat <<_ACEOF
749-
\`configure' configures PROPGRID 1.4.12 to adapt to many kinds of systems.
749+
\`configure' configures PROPGRID 1.4.14 to adapt to many kinds of systems.
750750
751751
Usage: $0 [OPTION]... [VAR=VALUE]...
752752
@@ -808,7 +808,7 @@ fi
808808

809809
if test -n "$ac_init_help"; then
810810
case $ac_init_help in
811-
short | recursive ) echo "Configuration of PROPGRID 1.4.12:";;
811+
short | recursive ) echo "Configuration of PROPGRID 1.4.14:";;
812812
esac
813813
cat <<\_ACEOF
814814
@@ -947,7 +947,7 @@ fi
947947
test -n "$ac_init_help" && exit 0
948948
if $ac_init_version; then
949949
cat <<\_ACEOF
950-
PROPGRID configure 1.4.12
950+
PROPGRID configure 1.4.14
951951
generated by GNU Autoconf 2.59
952952
953953
Copyright (C) 2003 Free Software Foundation, Inc.
@@ -961,7 +961,7 @@ cat >&5 <<_ACEOF
961961
This file contains any messages produced by compilers while
962962
running configure, to aid debugging if configure makes a mistake.
963963
964-
It was created by PROPGRID $as_me 1.4.12, which was
964+
It was created by PROPGRID $as_me 1.4.14, which was
965965
generated by GNU Autoconf 2.59. Invocation command line was
966966
967967
$ $0 $@
@@ -6134,7 +6134,7 @@ _ASBOX
61346134
} >&5
61356135
cat >&5 <<_CSEOF
61366136
6137-
This file was extended by PROPGRID $as_me 1.4.12, which was
6137+
This file was extended by PROPGRID $as_me 1.4.14, which was
61386138
generated by GNU Autoconf 2.59. Invocation command line was
61396139
61406140
CONFIG_FILES = $CONFIG_FILES
@@ -6189,7 +6189,7 @@ _ACEOF
61896189
61906190
cat >>$CONFIG_STATUS <<_ACEOF
61916191
ac_cs_version="\\
6192-
PROPGRID config.status 1.4.12
6192+
PROPGRID config.status 1.4.14
61936193
configured by $0, generated by GNU Autoconf 2.59,
61946194
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
61956195

src/sdk/wxpropgrid/include/wx/propgrid/pg_dox_mainpage.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
#define __WX_PG_DOX_MAINPAGE_H__
1414

1515
/**
16-
@mainpage wxPropertyGrid 1.4.12 Overview
16+
@mainpage wxPropertyGrid 1.4.14 Overview
1717
1818
wxPropertyGrid is a specialized for editing properties such as strings, numbers,
1919
flagsets, fonts, and colours. It allows hierarchial, collapsible properties (via

src/sdk/wxpropgrid/include/wx/propgrid/propdev.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
// -----------------------------------------------------------------------
1616

1717

18-
class wxArrayEditorDialog;
18+
class WXDLLIMPEXP_PG wxArrayEditorDialog;
1919

2020
// -----------------------------------------------------------------------
2121

src/sdk/wxpropgrid/include/wx/propgrid/propgrid.h

+86-10
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@
8484
// for "configure" scripts under unix, use them.
8585
#define wxPROPGRID_MAJOR 1
8686
#define wxPROPGRID_MINOR 4
87-
#define wxPROPGRID_RELEASE 12
87+
#define wxPROPGRID_RELEASE 14
8888

8989
// For non-Unix systems (i.e. when building without a configure script),
9090
// users of this component can use the following macro to check if the
@@ -454,6 +454,7 @@ class wxPGVariantAndBool
454454
// -----------------------------------------------------------------------
455455

456456
#ifndef SWIG
457+
457458
class WXDLLIMPEXP_PG wxPGEditor;
458459
class WXDLLIMPEXP_PG wxPGProperty;
459460
class WXDLLIMPEXP_PG wxPropertyCategory;
@@ -469,9 +470,11 @@ class WXDLLIMPEXP_PG wxPGOwnerDrawnComboBox;
469470
class WXDLLIMPEXP_PG wxPGCustomComboControl;
470471
class WXDLLIMPEXP_PG wxPGEditorDialogAdapter;
471472

473+
class WXDLLIMPEXP_FWD_CORE wxStatusBar;
474+
472475
extern WXDLLIMPEXP_PG const wxChar *wxPropertyGridNameStr;
473476

474-
struct wxPGValidationInfo;
477+
struct WXDLLIMPEXP_PG wxPGValidationInfo;
475478

476479
#endif // #ifndef SWIG
477480

@@ -2251,8 +2254,22 @@ class WXDLLIMPEXP_PG wxPGProperty : public wxObject
22512254
virtual wxPGVariantAndBool PyValidateValue( const wxVariant& value, wxPGValidationInfo& validationInfo ) const;
22522255
virtual wxPGVariantAndBool PyStringToValue( const wxString& text, int argFlags = 0 ) const;
22532256
virtual wxPGVariantAndBool PyIntToValue( int number, int argFlags = 0 ) const;
2257+
virtual wxVariant PyChildChanged( wxVariant& thisValue, int childIndex, wxVariant& childValue ) const;
22542258
#endif
22552259

2260+
void ActualChildChanged( wxVariant& thisValue, int childIndex, wxVariant& childValue ) const
2261+
{
2262+
#ifdef __WXPYTHON__
2263+
if ( m_scriptObject )
2264+
{
2265+
thisValue = PyChildChanged(thisValue, childIndex, childValue);
2266+
return;
2267+
}
2268+
#endif
2269+
2270+
ChildChanged(thisValue, childIndex, childValue);
2271+
}
2272+
22562273
bool ActualValidateValue( wxVariant& value, wxPGValidationInfo& validationInfo ) const
22572274
{
22582275
#ifdef __WXPYTHON__
@@ -2852,7 +2869,7 @@ class WXDLLIMPEXP_PG wxPGProperty : public wxObject
28522869
@param flags
28532870
By default changes are applied recursively. Set this paramter wxPG_DONT_RECURSE to prevent this.
28542871
*/
2855-
inline bool Hide( bool hide, int flags = wxPG_RECURSE );
2872+
bool Hide( bool hide, int flags = wxPG_RECURSE );
28562873

28572874
bool IsExpanded() const { return (!(m_flags & wxPG_PROP_COLLAPSED) && GetChildCount()); }
28582875

@@ -4303,10 +4320,26 @@ wxPG_VFB_BEEP = 0x02,
43034320
*/
43044321
wxPG_VFB_MARK_CELL = 0x04,
43054322

4306-
/** Display customizable text message explaining the situation.
4323+
/** Display a customizable text message explaining the situation.
4324+
4325+
To customize the way the message is displayed, you need to
4326+
reimplement wxPropertyGrid::DoShowPropertyError() in a
4327+
derived class. Default behavior is to display the text on
4328+
the top-level frame's status bar, if present, and otherwise
4329+
using wxMessageBox.
43074330
*/
43084331
wxPG_VFB_SHOW_MESSAGE = 0x08,
43094332

4333+
/** Similar to wxPG_VFB_SHOW_MESSAGE, except always display the
4334+
message using wxMessageBox.
4335+
*/
4336+
wxPG_VFB_SHOW_MESSAGEBOX = 0x10,
4337+
4338+
/** Similar to wxPG_VFB_SHOW_MESSAGE, except always display the
4339+
message on the status bar.
4340+
*/
4341+
wxPG_VFB_SHOW_MESSAGE_ON_STATUSBAR = 0x20,
4342+
43104343
/** Defaults. */
43114344
wxPG_VFB_DEFAULT = wxPG_VFB_STAY_IN_PROPERTY|wxPG_VFB_BEEP,
43124345

@@ -4327,7 +4360,7 @@ wxPG_VFB_UNDEFINED = 0x80
43274360
Used to convey validation information to and from functions that
43284361
actually perform validation.
43294362
*/
4330-
struct wxPGValidationInfo
4363+
struct WXDLLIMPEXP_PG wxPGValidationInfo
43314364
{
43324365
/** Value to be validated.
43334366
*/
@@ -4341,6 +4374,19 @@ struct wxPGValidationInfo
43414374
*/
43424375
wxPGVFBFlags m_failureBehavior;
43434376

4377+
/** @true when validation is failing. */
4378+
bool m_isFailing;
4379+
4380+
wxPGValidationInfo()
4381+
{
4382+
m_failureBehavior = 0;
4383+
m_isFailing = false;
4384+
}
4385+
4386+
~wxPGValidationInfo()
4387+
{
4388+
}
4389+
43444390
wxPGVFBFlags GetFailureBehavior() const { return m_failureBehavior; }
43454391

43464392
void SetFailureBehavior(wxPGVFBFlags failureBehavior) { m_failureBehavior = failureBehavior; }
@@ -7576,6 +7622,38 @@ class WXDLLIMPEXP_PG wxPropertyGrid : public wxScrolledWindow, public wxProperty
75767622
void SetInternalFlag( long flag ) { m_iFlags |= flag; }
75777623
void ClearInternalFlag( long flag ) { m_iFlags &= ~(flag); }
75787624

7625+
/**
7626+
Override in derived class to display error messages in custom manner
7627+
(these message usually only result from validation failure).
7628+
7629+
@remarks If you implement this, then you also need to implement
7630+
DoHidePropertyError() - possibly to do nothing, if error
7631+
does not need hiding (e.g. it was logged or shown in a
7632+
message box).
7633+
7634+
@see DoHidePropertyError()
7635+
*/
7636+
virtual void DoShowPropertyError( wxPGProperty* property,
7637+
const wxString& msg );
7638+
7639+
/**
7640+
Override in derived class to hide an error displayed by
7641+
DoShowPropertyError().
7642+
7643+
@see DoShowPropertyError()
7644+
*/
7645+
virtual void DoHidePropertyError( wxPGProperty* property );
7646+
7647+
#if wxUSE_STATUSBAR
7648+
/**
7649+
Return wxStatusBar that is used by this wxPropertyGrid. You can
7650+
reimplement this member function in derived class to override
7651+
the default behavior of using the top-level wxFrame's status
7652+
bar, if any.
7653+
*/
7654+
virtual wxStatusBar* GetStatusBar();
7655+
#endif
7656+
75797657
#ifndef SWIG
75807658

75817659
/** Generates contents for string dst based on the convetents of wxArrayString
@@ -7674,11 +7752,6 @@ class WXDLLIMPEXP_PG wxPropertyGrid : public wxScrolledWindow, public wxProperty
76747752
m_validationInfo.m_failureMessage.clear();
76757753
}
76767754

7677-
/** Override in derived class to display error messages in custom manner
7678-
(these message usually only result from validation failure).
7679-
*/
7680-
virtual void DoShowPropertyError( wxPGProperty* property, const wxString& msg );
7681-
76827755
/** Override to customize property validation failure behavior.
76837756
@param invalidValue
76847757
Value which failed in validation.
@@ -7905,6 +7978,9 @@ class WXDLLIMPEXP_PG wxPropertyGrid : public wxScrolledWindow, public wxProperty
79057978
/** 1 if in DoSelectProperty() */
79067979
bool m_inDoSelectProperty;
79077980

7981+
/** @true if in OnValidationFailure() */
7982+
bool m_inOnValidationFailure;
7983+
79087984
wxPGVFBFlags m_permanentValidationFailureBehavior; // Set by app
79097985

79107986
/** Internal flags - see wxPG_FL_XXX constants. */

0 commit comments

Comments
 (0)