X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0ea0604a1e0a4e3d952f7397839b99b1a972bb78..6cab632f3251ae1117d24544813f47c6597a3b34:/include/wx/propgrid/propgrid.h?ds=inline diff --git a/include/wx/propgrid/propgrid.h b/include/wx/propgrid/propgrid.h index d50bc95238..23cf2550e9 100644 --- a/include/wx/propgrid/propgrid.h +++ b/include/wx/propgrid/propgrid.h @@ -6,16 +6,19 @@ // Created: 2004-09-25 // RCS-ID: $Id$ // Copyright: (c) Jaakko Salli -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_PROPGRID_PROPGRID_H_ #define _WX_PROPGRID_PROPGRID_H_ +#include "wx/defs.h" + #if wxUSE_PROPGRID #include "wx/thread.h" #include "wx/dcclient.h" +#include "wx/control.h" #include "wx/scrolwin.h" #include "wx/tooltip.h" #include "wx/datetime.h" @@ -31,6 +34,10 @@ extern WXDLLIMPEXP_DATA_PROPGRID(const char) wxPropertyGridNameStr[]; class wxPGComboBox; +#if wxUSE_STATUSBAR +class WXDLLIMPEXP_FWD_CORE wxStatusBar; +#endif + // ----------------------------------------------------------------------- // Global variables // ----------------------------------------------------------------------- @@ -390,7 +397,7 @@ wxPG_VFB_BEEP = 0x02, wxPG_VFB_MARK_CELL = 0x04, /** - Display a text message explaining the situation. + Display a text message explaining the situation. To customize the way the message is displayed, you need to reimplement wxPropertyGrid::DoShowPropertyError() in a @@ -415,7 +422,8 @@ wxPG_VFB_SHOW_MESSAGEBOX = 0x10, wxPG_VFB_SHOW_MESSAGE_ON_STATUSBAR = 0x20, /** Defaults. */ -wxPG_VFB_DEFAULT = wxPG_VFB_STAY_IN_PROPERTY|wxPG_VFB_BEEP, +wxPG_VFB_DEFAULT = wxPG_VFB_MARK_CELL | + wxPG_VFB_SHOW_MESSAGEBOX, /** Only used internally. */ wxPG_VFB_UNDEFINED = 0x80 @@ -705,8 +713,9 @@ enum wxPG_SET_SPLITTER_POSITION_SPLITTER_FLAGS @library{wxpropgrid} @category{propgrid} */ -class WXDLLIMPEXP_PROPGRID - wxPropertyGrid : public wxScrolledWindow, public wxPropertyGridInterface +class WXDLLIMPEXP_PROPGRID wxPropertyGrid : public wxControl, + public wxScrollHelper, + public wxPropertyGridInterface { friend class wxPropertyGridEvent; friend class wxPropertyGridPageState; @@ -728,7 +737,7 @@ public: #endif /** The default constructor. The styles to be used are styles valid for - the wxWindow and wxScrolledWindow. + the wxWindow. @see @link wndflags Additional Window Styles @endlink */ @@ -793,7 +802,7 @@ public: /** Centers the splitter. - + @param enableAutoResizing If @true, automatic column resizing is enabled (only applicapple if window style wxPG_SPLITTER_AUTO_CENTER is used). @@ -1032,7 +1041,7 @@ public: @param pt Coordinates in the virtual grid space. You may need to use - wxScrolledWindow::CalcScrolledPosition() for translating + wxScrolled::CalcScrolledPosition() for translating wxPropertyGrid client coordinates into something this member function can use. */ @@ -1519,18 +1528,6 @@ public: // Events from editor controls are forward to this function void HandleCustomEditorEvent( wxEvent &event ); - /** - Generates contents for string dst based on the contents of - wxArrayString src. - - Format will be "(preDelim)str1(postDelim) (preDelim)str2(postDelim) and - so on. Set flags to 1 inorder to convert backslashes to double-back- - slashes and "(preDelims)"'s to "(preDelims)". - */ - static void ArrayStringToString( wxString& dst, const wxArrayString& src, - wxChar preDelim, wxChar postDelim, - int flags ); - // Mostly useful for page switching. void SwitchState( wxPropertyGridPageState* pNewState ); @@ -1756,9 +1753,6 @@ public: virtual void Refresh( bool eraseBackground = true, const wxRect *rect = (const wxRect *) NULL ); virtual bool SetFont( const wxFont& font ); -#if wxPG_SUPPORT_TOOLTIPS - void SetToolTip( const wxString& tipString ); -#endif virtual void Freeze(); virtual void SetExtraStyle( long exStyle ); virtual void Thaw(); @@ -1846,12 +1840,7 @@ protected: /** Current cursor id. */ int m_curcursor; - /** - This captionFont is made equal to the font of the wxScrolledWindow. - - As extra the bold face is set on it when this is wanted by the user - (see flags) - */ + // Caption font. Same as normal font plus bold style. wxFont m_captionFont; int m_fontHeight; // Height of the font. @@ -1931,13 +1920,15 @@ protected: unsigned char m_keyComboConsumed; /** 1 if in DoPropertyChanged() */ - unsigned char m_inDoPropertyChanged; + bool m_inDoPropertyChanged; /** 1 if in CommitChangesFromEditor() */ - unsigned char m_inCommitChangesFromEditor; + bool m_inCommitChangesFromEditor; /** 1 if in DoSelectProperty() */ - unsigned char m_inDoSelectProperty; + bool m_inDoSelectProperty; + + bool m_inOnValidationFailure; wxPGVFBFlags m_permanentValidationFailureBehavior; // Set by app @@ -2116,7 +2107,7 @@ protected: void CorrectEditorWidgetPosY(); int DoDrawItems( wxDC& dc, - const wxRect* drawRect, + const wxRect* itemsRect, bool isBuffered ) const; /** Draws an expand/collapse (ie. +/-) button. @@ -2128,7 +2119,7 @@ protected: void DrawItems( wxDC& dc, unsigned int topItemY, unsigned int bottomItemY, - const wxRect* drawRect = NULL ); + const wxRect* itemsRect = NULL ); // Translate wxKeyEvent to wxPG_ACTION_XXX int KeyEventToActions(wxKeyEvent &event, int* pSecond) const;