include/commandeditor/commandeditorpanel.h

Go to the documentation of this file.
00001 
00002 // Name:        commandeditorpanel.h
00003 // Purpose:     
00004 // Author:      Julian Smart
00005 // Modified by: 
00006 // Created:     22/11/2008 13:32:13
00007 // RCS-ID:      
00008 // Copyright:   (c) Anthemion Software Limited
00009 // Licence:     New BSD License
00011 
00012 #ifndef _COMMANDEDITORPANEL_H_
00013 #define _COMMANDEDITORPANEL_H_
00014 
00015 
00020 
00021 
00022 
00023 #include "commandeditor/commandeditor.h"
00024 #include "uiutils/uicustomization.h"
00025 
00030 
00031 class wxBoxSizer;
00032 class wxFlexGridSizer;
00034 
00036 #define wxCOMMAND_EDITOR_VIEWERS_ONLY 0x0002
00037 
00042 
00043 #define ID_COMMAND_EDITOR_PANEL 21000
00044 #define ID_COMMAND_EDITOR_FILE_TYPES 21001
00045 #define ID_COMMAND_EDITOR_ADD_TYPE 21002
00046 #define ID_COMMAND_EDITOR_DELETE_TYPE 21003
00047 #define ID_COMMAND_EDITOR_EDIT_TYPE 21008
00048 #define ID_COMMAND_EDITOR_PANEL_VIEWER_COMBOCTRL 21004
00049 #define ID_COMMAND_EDITOR_PANEL_VIEWER_EDIT 21005
00050 #define ID_COMMAND_EDITOR_PANEL_EDITOR_COMBOCTRL 21006
00051 #define ID_COMMAND_EDITOR_PANEL_EDITOR_EDIT 21007
00052 #define SYMBOL_WXCOMMANDEDITORPANEL_STYLE wxRESIZE_BORDER|wxTAB_TRAVERSAL
00053 #define SYMBOL_WXCOMMANDEDITORPANEL_TITLE _T("")
00054 #define SYMBOL_WXCOMMANDEDITORPANEL_IDNAME ID_COMMAND_EDITOR_PANEL
00055 #define SYMBOL_WXCOMMANDEDITORPANEL_SIZE wxSize(400, 300)
00056 #define SYMBOL_WXCOMMANDEDITORPANEL_POSITION wxDefaultPosition
00058 
00059 
00064 class wxCommandEditorPanel: public wxPanel
00065 {    
00066     DECLARE_DYNAMIC_CLASS( wxCommandEditorPanel )
00067     DECLARE_EVENT_TABLE()
00068 
00069 public:
00071     wxCommandEditorPanel();
00072     wxCommandEditorPanel( wxWindow* parent, wxWindowID id = SYMBOL_WXCOMMANDEDITORPANEL_IDNAME, const wxPoint& pos = SYMBOL_WXCOMMANDEDITORPANEL_POSITION, const wxSize& size = SYMBOL_WXCOMMANDEDITORPANEL_SIZE, long style = SYMBOL_WXCOMMANDEDITORPANEL_STYLE );
00073 
00075     bool Create( wxWindow* parent, wxWindowID id = SYMBOL_WXCOMMANDEDITORPANEL_IDNAME, const wxPoint& pos = SYMBOL_WXCOMMANDEDITORPANEL_POSITION, const wxSize& size = SYMBOL_WXCOMMANDEDITORPANEL_SIZE, long style = SYMBOL_WXCOMMANDEDITORPANEL_STYLE );
00076 
00078     ~wxCommandEditorPanel();
00079 
00081     void Init();
00082 
00084     void CreateControls();
00085 
00087     wxEditorCommandManager* GetCommandManager() { return m_commandManager; }
00088     void SetCommandManager(wxEditorCommandManager* manager) { m_commandManager = manager; }
00089 
00091     void PopulateFileTypes(int sel = -1);
00092     
00094     void ShowFileType(int i);
00095 
00097     static void SetUseTooltips(bool useTooltips) { sm_useTooltips = useTooltips; }
00098 
00100     static void SetUICustomization(wxUICustomization* uiCustomization) { m_uiCustomization = uiCustomization; }
00101 
00103 
00105     void OnCommandEditorFileTypesSelected( wxCommandEvent& event );
00106 
00108     void OnCommandEditorAddTypeClick( wxCommandEvent& event );
00109 
00111     void OnCommandEditorDeleteTypeClick( wxCommandEvent& event );
00112 
00114     void OnCommandEditorDeleteTypeUpdate( wxUpdateUIEvent& event );
00115 
00117     void OnCommandEditorEditTypeClick( wxCommandEvent& event );
00118 
00120     void OnCommandEditorEditTypeUpdate( wxUpdateUIEvent& event );
00121 
00123     void OnCommandEditorPanelViewerComboctrlSelected( wxCommandEvent& event );
00124 
00126     void OnCommandEditorPanelViewerEditClick( wxCommandEvent& event );
00127 
00129     void OnCommandEditorPanelViewerEditUpdate( wxUpdateUIEvent& event );
00130 
00132     void OnCommandEditorPanelEditorComboctrlSelected( wxCommandEvent& event );
00133 
00135     void OnCommandEditorPanelEditorEditClick( wxCommandEvent& event );
00136 
00138     void OnCommandEditorPanelEditorEditUpdate( wxUpdateUIEvent& event );
00139 
00141 
00143 
00145     wxBitmap GetBitmapResource( const wxString& name );
00146 
00148     wxIcon GetIconResource( const wxString& name );
00150 
00152     static bool ShowToolTips();
00153 
00155     wxComboBox* m_commandEditorFileTypeCombo;
00156     wxBoxSizer* m_addDeleteTypeSizer;
00157     wxFlexGridSizer* m_flexGridSizer;
00158     wxComboBox* m_commandEditorViewerCombo;
00159     wxButton* m_commandEditorViewerEditCtrl;
00160     wxStaticText* m_editorsLabelCtrl;
00161     wxComboBox* m_commandEditorEditorCombo;
00162     wxButton* m_commandEditorEditorEditCtrl;
00164 
00165     wxEditorCommandManager* m_commandManager;
00166 
00167     bool                        m_noUpdates;
00168     static bool                 sm_useTooltips;
00169     static wxUICustomization*   m_uiCustomization;
00170 };
00171 
00172 #endif
00173     // _COMMANDEDITORPANEL_H_

Generated on Wed May 6 19:20:18 2009 for AxTk by  doxygen 1.5.1