| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282 | 
							- /////////////////////////////////////////////////////////////////////////////
 
- // Name:        samples/propgrid/propgrid.h
 
- // Purpose:     wxPropertyGrid sample
 
- // Author:      Jaakko Salli
 
- // Modified by:
 
- // Created:     2004-09-25
 
- // Copyright:   (c) Jaakko Salli
 
- // Licence:     wxWindows licence
 
- /////////////////////////////////////////////////////////////////////////////
 
- #ifndef _WX_SAMPLES_PROPGRID_PROPGRID_H_
 
- #define _WX_SAMPLES_PROPGRID_PROPGRID_H_
 
- // -----------------------------------------------------------------------
 
- class wxAdvImageFileProperty : public wxFileProperty
 
- {
 
-     WX_PG_DECLARE_PROPERTY_CLASS(wxAdvImageFileProperty)
 
- public:
 
-     wxAdvImageFileProperty( const wxString& label = wxPG_LABEL,
 
-                             const wxString& name = wxPG_LABEL,
 
-                             const wxString& value = wxEmptyString );
 
-     virtual ~wxAdvImageFileProperty ();
 
-     virtual void OnSetValue();  // Override to allow image loading.
 
-     virtual bool IntToValue( wxVariant& variant, int number, int argFlags = 0 ) const;
 
-     virtual bool OnEvent( wxPropertyGrid* propgrid, wxWindow* primary, wxEvent& event );
 
-     virtual wxSize OnMeasureImage( int item ) const;
 
-     virtual void OnCustomPaint( wxDC& dc,
 
-                                 const wxRect& rect, wxPGPaintData& paintdata );
 
-     void LoadThumbnails( size_t n );
 
- protected:
 
-     wxImage*    m_pImage; // Temporary thumbnail data.
 
-     static wxPGChoices ms_choices;
 
-     int m_index; // Index required for choice behaviour.
 
- };
 
- // -----------------------------------------------------------------------
 
- class wxVector3f
 
- {
 
- public:
 
-     wxVector3f()
 
-     {
 
-         x = y = z = 0.0;
 
-     }
 
-     wxVector3f( double x, double y, double z )
 
-     {
 
-         x = x; y = y; z = z;
 
-     }
 
-     double x, y, z;
 
- };
 
- inline bool operator == (const wxVector3f& a, const wxVector3f& b)
 
- {
 
-     return (a.x == b.x && a.y == b.y && a.z == b.z);
 
- }
 
- WX_PG_DECLARE_VARIANT_DATA(wxVector3f)
 
- class wxVectorProperty : public wxPGProperty
 
- {
 
-     WX_PG_DECLARE_PROPERTY_CLASS(wxVectorProperty)
 
- public:
 
-     wxVectorProperty( const wxString& label = wxPG_LABEL,
 
-                     const wxString& name = wxPG_LABEL,
 
-                     const wxVector3f& value = wxVector3f() );
 
-     virtual ~wxVectorProperty();
 
-     virtual wxVariant ChildChanged( wxVariant& thisValue,
 
-                                     int childIndex,
 
-                                     wxVariant& childValue ) const;
 
-     virtual void RefreshChildren();
 
- protected:
 
- };
 
- // -----------------------------------------------------------------------
 
- class wxTriangle
 
- {
 
- public:
 
-     wxVector3f a, b, c;
 
- };
 
- inline bool operator == (const wxTriangle& a, const wxTriangle& b)
 
- {
 
-     return (a.a == b.a && a.b == b.b && a.c == b.c);
 
- }
 
- WX_PG_DECLARE_VARIANT_DATA(wxTriangle)
 
- class wxTriangleProperty : public wxPGProperty
 
- {
 
-     WX_PG_DECLARE_PROPERTY_CLASS(wxTriangleProperty)
 
- public:
 
-     wxTriangleProperty( const wxString& label = wxPG_LABEL,
 
-                         const wxString& name = wxPG_LABEL,
 
-                         const wxTriangle& value = wxTriangle() );
 
-     virtual ~wxTriangleProperty();
 
-     virtual wxVariant ChildChanged( wxVariant& thisValue,
 
-                                     int childIndex,
 
-                                     wxVariant& childValue ) const;
 
-     virtual void RefreshChildren();
 
- protected:
 
- };
 
- // -----------------------------------------------------------------------
 
- enum
 
- {
 
-     ID_COLOURSCHEME4 = 100
 
- };
 
- // -----------------------------------------------------------------------
 
- class FormMain : public wxFrame
 
- {
 
- public:
 
-     FormMain(const wxString& title, const wxPoint& pos, const wxSize& size );
 
-     ~FormMain();
 
-     wxPropertyGridManager*  m_pPropGridManager;
 
-     wxPropertyGrid*     m_propGrid;
 
-     wxTextCtrl*     m_tcPropLabel;
 
-     wxWindow*       m_panel;
 
-     wxBoxSizer*     m_topSizer;
 
- #if wxUSE_LOGWINDOW
 
-     wxLogWindow*    m_logWindow;
 
- #endif
 
-     wxPGEditor*     m_pSampleMultiButtonEditor;
 
-     wxPGChoices     m_combinedFlags;
 
-     wxMenuItem*     m_itemCatColours;
 
-     wxMenuItem*     m_itemFreeze;
 
-     wxMenuItem*     m_itemEnable;
 
-     wxMenuItem*     m_itemVetoDragging;
 
-     wxVariant       m_storedValues;
 
-     wxString        m_savedState;
 
-     void CreateGrid( int style, int extraStyle );
 
-     void FinalizeFramePosition();
 
-     // These are used in CreateGrid(), and in tests to compose
 
-     // grids for testing purposes.
 
-     void InitPanel();
 
-     void PopulateGrid();
 
-     void FinalizePanel( bool wasCreated = true );
 
-     void PopulateWithStandardItems();
 
-     void PopulateWithExamples();
 
-     void PopulateWithLibraryConfig();
 
-     void OnCloseClick( wxCommandEvent& event );
 
-     void OnLabelTextChange( wxCommandEvent& event );
 
-     void OnColourScheme( wxCommandEvent& event );
 
-     void OnInsertPropClick( wxCommandEvent& event );
 
-     void OnAppendPropClick( wxCommandEvent& event );
 
-     void OnClearClick( wxCommandEvent& event );
 
-     void OnAppendCatClick( wxCommandEvent& event );
 
-     void OnInsertCatClick( wxCommandEvent& event );
 
-     void OnDelPropClick( wxCommandEvent& event );
 
-     void OnDelPropRClick( wxCommandEvent& event );
 
-     void OnContextMenu( wxContextMenuEvent& event );
 
-     void OnEnableDisable( wxCommandEvent& event );
 
-     void OnSetReadOnly( wxCommandEvent& event );
 
-     void OnHide( wxCommandEvent& event );
 
-     void OnSetBackgroundColour( wxCommandEvent& event );
 
-     void OnClearModifyStatusClick( wxCommandEvent& event );
 
-     void OnFreezeClick( wxCommandEvent& event );
 
-     void OnEnableLabelEditing( wxCommandEvent& event );
 
-     void OnShowHeader( wxCommandEvent& event );
 
-     void OnDumpList( wxCommandEvent& event );
 
-     void OnCatColours( wxCommandEvent& event );
 
-     void OnSetColumns( wxCommandEvent& event );
 
-     void OnMisc( wxCommandEvent& event );
 
-     void OnPopulateClick( wxCommandEvent& event );
 
-     void OnSetSpinCtrlEditorClick( wxCommandEvent& event );
 
-     void OnTestReplaceClick( wxCommandEvent& event );
 
-     void OnTestXRC( wxCommandEvent& event );
 
-     void OnEnableCommonValues( wxCommandEvent& event );
 
-     void OnSelectStyle( wxCommandEvent& event );
 
-     void OnFitColumnsClick( wxCommandEvent& event );
 
-     void OnChangeFlagsPropItemsClick( wxCommandEvent& event );
 
-     void OnSaveToFileClick( wxCommandEvent& event );
 
-     void OnLoadFromFileClick( wxCommandEvent& event );
 
-     void OnSetPropertyValue( wxCommandEvent& event );
 
-     void OnInsertChoice( wxCommandEvent& event );
 
-     void OnDeleteChoice( wxCommandEvent& event );
 
-     void OnInsertPage( wxCommandEvent& event );
 
-     void OnRemovePage( wxCommandEvent& event );
 
-     void OnSaveState( wxCommandEvent& event );
 
-     void OnRestoreState( wxCommandEvent& event );
 
-     void OnRunMinimalClick( wxCommandEvent& event );
 
-     void OnIterate1Click( wxCommandEvent& event );
 
-     void OnIterate2Click( wxCommandEvent& event );
 
-     void OnIterate3Click( wxCommandEvent& event );
 
-     void OnIterate4Click( wxCommandEvent& event );
 
-     void OnExtendedKeyNav( wxCommandEvent& event );
 
-     void OnPropertyGridChange( wxPropertyGridEvent& event );
 
-     void OnPropertyGridChanging( wxPropertyGridEvent& event );
 
-     void OnPropertyGridSelect( wxPropertyGridEvent& event );
 
-     void OnPropertyGridHighlight( wxPropertyGridEvent& event );
 
-     void OnPropertyGridItemRightClick( wxPropertyGridEvent& event );
 
-     void OnPropertyGridItemDoubleClick( wxPropertyGridEvent& event );
 
-     void OnPropertyGridPageChange( wxPropertyGridEvent& event );
 
-     void OnPropertyGridButtonClick( wxCommandEvent& event );
 
-     void OnPropertyGridTextUpdate( wxCommandEvent& event );
 
-     void OnPropertyGridKeyEvent( wxKeyEvent& event );
 
-     void OnPropertyGridItemCollapse( wxPropertyGridEvent& event );
 
-     void OnPropertyGridItemExpand( wxPropertyGridEvent& event );
 
-     void OnPropertyGridLabelEditBegin( wxPropertyGridEvent& event );
 
-     void OnPropertyGridLabelEditEnding( wxPropertyGridEvent& event );
 
-     void OnPropertyGridColBeginDrag( wxPropertyGridEvent& event );
 
-     void OnPropertyGridColDragging( wxPropertyGridEvent& event );
 
-     void OnPropertyGridColEndDrag( wxPropertyGridEvent& event );
 
-     void OnAbout( wxCommandEvent& event );
 
-     void OnMove( wxMoveEvent& event );
 
-     void OnResize( wxSizeEvent& event );
 
-     void OnPaint( wxPaintEvent& event );
 
-     void OnCloseEvent( wxCloseEvent& event );
 
-     void OnIdle( wxIdleEvent& event );
 
-     void OnShowPopup( wxCommandEvent& event );
 
-     void AddTestProperties( wxPropertyGridPage* pg );
 
-     bool RunTests( bool fullTest, bool interactive = false );
 
- private:
 
-     wxDECLARE_EVENT_TABLE();
 
- };
 
- // -----------------------------------------------------------------------
 
- class cxApplication : public wxApp
 
- {
 
- public:
 
-     virtual bool OnInit();
 
- private:
 
-     FormMain    *Form1;
 
- };
 
- DECLARE_APP(cxApplication)
 
- // -----------------------------------------------------------------------
 
- #endif // _WX_SAMPLES_PROPGRID_PROPGRID_H_
 
 
  |