Loading kicad/dialogs/dialog_template_selector.cpp +18 −5 Original line number Diff line number Diff line Loading @@ -28,10 +28,12 @@ #include <wx/settings.h> TEMPLATE_SELECTION_PANEL::TEMPLATE_SELECTION_PANEL( wxWindow* aParent ) : TEMPLATE_SELECTION_PANEL::TEMPLATE_SELECTION_PANEL( wxWindow* aParent, const wxString& aPath ) : TEMPLATE_SELECTION_PANEL_BASE( aParent ) { parent = aParent; m_templatesPath = aPath; } Loading Loading @@ -127,6 +129,13 @@ void DIALOG_TEMPLATE_SELECTOR::onNotebookResize(wxSizeEvent& event) event.Skip(); } void DIALOG_TEMPLATE_SELECTOR::OnPageChange( wxNotebookEvent& event ) { int page = m_notebook->GetSelection(); if( page != wxNOT_FOUND ) m_textCtrlTemplatePath->SetValue( m_panels[page]->GetPath() ); } DIALOG_TEMPLATE_SELECTOR::DIALOG_TEMPLATE_SELECTOR( wxWindow* aParent ) : DIALOG_TEMPLATE_SELECTOR_BASE( aParent ) Loading Loading @@ -186,15 +195,19 @@ void DIALOG_TEMPLATE_SELECTOR::AddPage( const wxString& aTitle, wxFileName& aPat wxNotebookPage* newPage = new wxNotebookPage( m_notebook, wxID_ANY ); m_notebook->AddPage( newPage, aTitle ); TEMPLATE_SELECTION_PANEL* p = new TEMPLATE_SELECTION_PANEL( newPage ); m_panels.push_back( p ); wxString path = aPath.GetFullPath(); // caller ensures this ends with file separator. TEMPLATE_SELECTION_PANEL* tpanel = new TEMPLATE_SELECTION_PANEL( newPage, path ); m_panels.push_back( tpanel ); if( m_notebook->GetPageCount() == 1 ) m_textCtrlTemplatePath->SetValue( path ); // Get a list of files under the template path to include as choices... wxArrayString files; wxDir dir; wxString path = aPath.GetFullPath(); // caller ensures this ends with file separator. if( dir.Open( path ) ) { wxDir sub_dir; Loading kicad/dialogs/dialog_template_selector.fbp +177 −3 Original line number Diff line number Diff line Loading @@ -88,7 +88,7 @@ <event name="OnUpdateUI"></event> <object class="wxBoxSizer" expanded="1"> <property name="minimum_size"></property> <property name="name">bSizer1</property> <property name="name">bmainSizer</property> <property name="orient">wxVERTICAL</property> <property name="permission">none</property> <object class="sizeritem" expanded="1"> Loading Loading @@ -164,7 +164,7 @@ <event name="OnMotion"></event> <event name="OnMouseEvents"></event> <event name="OnMouseWheel"></event> <event name="OnNotebookPageChanged"></event> <event name="OnNotebookPageChanged">OnPageChange</event> <event name="OnNotebookPageChanging"></event> <event name="OnPaint"></event> <event name="OnRightDClick"></event> Loading Loading @@ -259,6 +259,180 @@ <event name="OnUpdateUI"></event> </object> </object> <object class="sizeritem" expanded="1"> <property name="border">5</property> <property name="flag">wxRIGHT|wxLEFT</property> <property name="proportion">0</property> <object class="wxStaticText" expanded="1"> <property name="BottomDockable">1</property> <property name="LeftDockable">1</property> <property name="RightDockable">1</property> <property name="TopDockable">1</property> <property name="aui_layer"></property> <property name="aui_name"></property> <property name="aui_position"></property> <property name="aui_row"></property> <property name="best_size"></property> <property name="bg"></property> <property name="caption"></property> <property name="caption_visible">1</property> <property name="center_pane">0</property> <property name="close_button">1</property> <property name="context_help"></property> <property name="context_menu">1</property> <property name="default_pane">0</property> <property name="dock">Dock</property> <property name="dock_fixed">0</property> <property name="docking">Left</property> <property name="enabled">1</property> <property name="fg"></property> <property name="floatable">1</property> <property name="font"></property> <property name="gripper">0</property> <property name="hidden">0</property> <property name="id">wxID_ANY</property> <property name="label">Templates path</property> <property name="max_size"></property> <property name="maximize_button">0</property> <property name="maximum_size"></property> <property name="min_size"></property> <property name="minimize_button">0</property> <property name="minimum_size"></property> <property name="moveable">1</property> <property name="name">m_staticTextTpath</property> <property name="pane_border">1</property> <property name="pane_position"></property> <property name="pane_size"></property> <property name="permission">protected</property> <property name="pin_button">1</property> <property name="pos"></property> <property name="resize">Resizable</property> <property name="show">1</property> <property name="size"></property> <property name="style"></property> <property name="subclass"></property> <property name="toolbar_pane">0</property> <property name="tooltip"></property> <property name="window_extra_style"></property> <property name="window_name"></property> <property name="window_style"></property> <property name="wrap">-1</property> <event name="OnChar"></event> <event name="OnEnterWindow"></event> <event name="OnEraseBackground"></event> <event name="OnKeyDown"></event> <event name="OnKeyUp"></event> <event name="OnKillFocus"></event> <event name="OnLeaveWindow"></event> <event name="OnLeftDClick"></event> <event name="OnLeftDown"></event> <event name="OnLeftUp"></event> <event name="OnMiddleDClick"></event> <event name="OnMiddleDown"></event> <event name="OnMiddleUp"></event> <event name="OnMotion"></event> <event name="OnMouseEvents"></event> <event name="OnMouseWheel"></event> <event name="OnPaint"></event> <event name="OnRightDClick"></event> <event name="OnRightDown"></event> <event name="OnRightUp"></event> <event name="OnSetFocus"></event> <event name="OnSize"></event> <event name="OnUpdateUI"></event> </object> </object> <object class="sizeritem" expanded="1"> <property name="border">5</property> <property name="flag">wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT</property> <property name="proportion">0</property> <object class="wxTextCtrl" expanded="1"> <property name="BottomDockable">1</property> <property name="LeftDockable">1</property> <property name="RightDockable">1</property> <property name="TopDockable">1</property> <property name="aui_layer"></property> <property name="aui_name"></property> <property name="aui_position"></property> <property name="aui_row"></property> <property name="best_size"></property> <property name="bg"></property> <property name="caption"></property> <property name="caption_visible">1</property> <property name="center_pane">0</property> <property name="close_button">1</property> <property name="context_help"></property> <property name="context_menu">1</property> <property name="default_pane">0</property> <property name="dock">Dock</property> <property name="dock_fixed">0</property> <property name="docking">Left</property> <property name="enabled">1</property> <property name="fg"></property> <property name="floatable">1</property> <property name="font"></property> <property name="gripper">0</property> <property name="hidden">0</property> <property name="id">wxID_ANY</property> <property name="max_size"></property> <property name="maximize_button">0</property> <property name="maximum_size"></property> <property name="maxlength"></property> <property name="min_size"></property> <property name="minimize_button">0</property> <property name="minimum_size"></property> <property name="moveable">1</property> <property name="name">m_textCtrlTemplatePath</property> <property name="pane_border">1</property> <property name="pane_position"></property> <property name="pane_size"></property> <property name="permission">protected</property> <property name="pin_button">1</property> <property name="pos"></property> <property name="resize">Resizable</property> <property name="show">1</property> <property name="size"></property> <property name="style">wxTE_READONLY</property> <property name="subclass"></property> <property name="toolbar_pane">0</property> <property name="tooltip"></property> <property name="validator_data_type"></property> <property name="validator_style">wxFILTER_NONE</property> <property name="validator_type">wxDefaultValidator</property> <property name="validator_variable"></property> <property name="value"></property> <property name="window_extra_style"></property> <property name="window_name"></property> <property name="window_style"></property> <event name="OnChar"></event> <event name="OnEnterWindow"></event> <event name="OnEraseBackground"></event> <event name="OnKeyDown"></event> <event name="OnKeyUp"></event> <event name="OnKillFocus"></event> <event name="OnLeaveWindow"></event> <event name="OnLeftDClick"></event> <event name="OnLeftDown"></event> <event name="OnLeftUp"></event> <event name="OnMiddleDClick"></event> <event name="OnMiddleDown"></event> <event name="OnMiddleUp"></event> <event name="OnMotion"></event> <event name="OnMouseEvents"></event> <event name="OnMouseWheel"></event> <event name="OnPaint"></event> <event name="OnRightDClick"></event> <event name="OnRightDown"></event> <event name="OnRightUp"></event> <event name="OnSetFocus"></event> <event name="OnSize"></event> <event name="OnText"></event> <event name="OnTextEnter"></event> <event name="OnTextMaxLen"></event> <event name="OnTextURL"></event> <event name="OnUpdateUI"></event> </object> </object> <object class="sizeritem" expanded="1"> <property name="border">3</property> <property name="flag">wxALL|wxEXPAND</property> Loading @@ -273,7 +447,7 @@ <property name="Save">0</property> <property name="Yes">0</property> <property name="minimum_size"></property> <property name="name">m_sdbSizer1</property> <property name="name">m_sdbSizer</property> <property name="permission">protected</property> <event name="OnApplyButtonClick"></event> <event name="OnCancelButtonClick"></event> Loading kicad/dialogs/dialog_template_selector.h +8 −5 Original line number Diff line number Diff line Loading @@ -60,13 +60,16 @@ class TEMPLATE_SELECTION_PANEL : public TEMPLATE_SELECTION_PANEL_BASE { protected: wxWindow* parent; wxString m_templatesPath; public: /** * @param aParent The window creating the dialog */ TEMPLATE_SELECTION_PANEL( wxWindow* aParent ); TEMPLATE_SELECTION_PANEL( wxWindow* aParent, const wxString& aPath ); ~TEMPLATE_SELECTION_PANEL(); const wxString& GetPath() { return m_templatesPath; } }; class DIALOG_TEMPLATE_SELECTOR : public DIALOG_TEMPLATE_SELECTOR_BASE Loading @@ -81,15 +84,15 @@ public: ~DIALOG_TEMPLATE_SELECTOR(); /** * Add a new page with \a aTitle, populated with templates from \a aPath - All directories * directories under the path are treated as templates * Add a new page with \a aTitle, populated with templates from \a aPath * - All directories under the path are treated as templates */ void AddPage( const wxString& aTitle, wxFileName& aPath ); void SetHtml( wxFileName aFilename ); TEMPLATE_WIDGET* GetWidget(); void SetWidget( TEMPLATE_WIDGET* aWidget ); void onNotebookResize( wxSizeEvent& event ); void OnPageChange( wxNotebookEvent& event ); }; #endif kicad/dialogs/dialog_template_selector_base.cpp +45 −32 Original line number Diff line number Diff line /////////////////////////////////////////////////////////////////////////// // C++ code generated with wxFormBuilder (version Apr 10 2012) // C++ code generated with wxFormBuilder (version Oct 8 2012) // http://www.wxformbuilder.org/ // // PLEASE DO "NOT" EDIT THIS FILE! Loading @@ -13,34 +13,47 @@ DIALOG_TEMPLATE_SELECTOR_BASE::DIALOG_TEMPLATE_SELECTOR_BASE( wxWindow* parent, { this->SetSizeHints( wxSize( 640,480 ), wxDefaultSize ); wxBoxSizer* bSizer1; bSizer1 = new wxBoxSizer( wxVERTICAL ); wxBoxSizer* bmainSizer; bmainSizer = new wxBoxSizer( wxVERTICAL ); m_notebook = new wxNotebook( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 ); bSizer1->Add( m_notebook, 0, wxEXPAND | wxALL, 3 ); bmainSizer->Add( m_notebook, 0, wxEXPAND | wxALL, 3 ); m_htmlWin = new wxHtmlWindow( this, wxID_ANY, wxDefaultPosition, wxSize( -1,-1 ), wxHW_SCROLLBAR_AUTO ); bSizer1->Add( m_htmlWin, 1, wxALL|wxEXPAND, 3 ); bmainSizer->Add( m_htmlWin, 1, wxALL|wxEXPAND, 3 ); m_sdbSizer1 = new wxStdDialogButtonSizer(); m_sdbSizer1OK = new wxButton( this, wxID_OK ); m_sdbSizer1->AddButton( m_sdbSizer1OK ); m_sdbSizer1Cancel = new wxButton( this, wxID_CANCEL ); m_sdbSizer1->AddButton( m_sdbSizer1Cancel ); m_sdbSizer1->Realize(); m_staticTextTpath = new wxStaticText( this, wxID_ANY, wxT("Templates path"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticTextTpath->Wrap( -1 ); bmainSizer->Add( m_staticTextTpath, 0, wxRIGHT|wxLEFT, 5 ); bSizer1->Add( m_sdbSizer1, 0, wxALL|wxEXPAND, 3 ); m_textCtrlTemplatePath = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_READONLY ); bmainSizer->Add( m_textCtrlTemplatePath, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 ); m_sdbSizer = new wxStdDialogButtonSizer(); m_sdbSizerOK = new wxButton( this, wxID_OK ); m_sdbSizer->AddButton( m_sdbSizerOK ); m_sdbSizerCancel = new wxButton( this, wxID_CANCEL ); m_sdbSizer->AddButton( m_sdbSizerCancel ); m_sdbSizer->Realize(); this->SetSizer( bSizer1 ); bmainSizer->Add( m_sdbSizer, 0, wxALL|wxEXPAND, 3 ); this->SetSizer( bmainSizer ); this->Layout(); this->Centre( wxBOTH ); // Connect Events m_notebook->Connect( wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, wxNotebookEventHandler( DIALOG_TEMPLATE_SELECTOR_BASE::OnPageChange ), NULL, this ); } DIALOG_TEMPLATE_SELECTOR_BASE::~DIALOG_TEMPLATE_SELECTOR_BASE() { // Disconnect Events m_notebook->Disconnect( wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, wxNotebookEventHandler( DIALOG_TEMPLATE_SELECTOR_BASE::OnPageChange ), NULL, this ); } TEMPLATE_SELECTION_PANEL_BASE::TEMPLATE_SELECTION_PANEL_BASE( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : wxPanel( parent, id, pos, size, style ) Loading kicad/dialogs/dialog_template_selector_base.h +31 −22 Original line number Diff line number Diff line /////////////////////////////////////////////////////////////////////////// // C++ code generated with wxFormBuilder (version Apr 10 2012) // C++ code generated with wxFormBuilder (version Oct 8 2012) // http://www.wxformbuilder.org/ // // PLEASE DO "NOT" EDIT THIS FILE! Loading @@ -10,6 +10,8 @@ #include <wx/artprov.h> #include <wx/xrc/xmlres.h> class DIALOG_SHIM; #include "dialog_shim.h" #include <wx/gdicmn.h> #include <wx/notebook.h> Loading @@ -18,6 +20,8 @@ #include <wx/settings.h> #include <wx/string.h> #include <wx/html/htmlwin.h> #include <wx/stattext.h> #include <wx/textctrl.h> #include <wx/sizer.h> #include <wx/button.h> #include <wx/dialog.h> Loading @@ -27,7 +31,6 @@ #include <wx/image.h> #include <wx/icon.h> #include <wx/statbmp.h> #include <wx/stattext.h> /////////////////////////////////////////////////////////////////////////// Loading @@ -42,9 +45,15 @@ class DIALOG_TEMPLATE_SELECTOR_BASE : public DIALOG_SHIM protected: wxNotebook* m_notebook; wxHtmlWindow* m_htmlWin; wxStdDialogButtonSizer* m_sdbSizer1; wxButton* m_sdbSizer1OK; wxButton* m_sdbSizer1Cancel; wxStaticText* m_staticTextTpath; wxTextCtrl* m_textCtrlTemplatePath; wxStdDialogButtonSizer* m_sdbSizer; wxButton* m_sdbSizerOK; wxButton* m_sdbSizerCancel; // Virtual event handlers, overide them in your derived class virtual void OnPageChange( wxNotebookEvent& event ) { event.Skip(); } public: Loading Loading
kicad/dialogs/dialog_template_selector.cpp +18 −5 Original line number Diff line number Diff line Loading @@ -28,10 +28,12 @@ #include <wx/settings.h> TEMPLATE_SELECTION_PANEL::TEMPLATE_SELECTION_PANEL( wxWindow* aParent ) : TEMPLATE_SELECTION_PANEL::TEMPLATE_SELECTION_PANEL( wxWindow* aParent, const wxString& aPath ) : TEMPLATE_SELECTION_PANEL_BASE( aParent ) { parent = aParent; m_templatesPath = aPath; } Loading Loading @@ -127,6 +129,13 @@ void DIALOG_TEMPLATE_SELECTOR::onNotebookResize(wxSizeEvent& event) event.Skip(); } void DIALOG_TEMPLATE_SELECTOR::OnPageChange( wxNotebookEvent& event ) { int page = m_notebook->GetSelection(); if( page != wxNOT_FOUND ) m_textCtrlTemplatePath->SetValue( m_panels[page]->GetPath() ); } DIALOG_TEMPLATE_SELECTOR::DIALOG_TEMPLATE_SELECTOR( wxWindow* aParent ) : DIALOG_TEMPLATE_SELECTOR_BASE( aParent ) Loading Loading @@ -186,15 +195,19 @@ void DIALOG_TEMPLATE_SELECTOR::AddPage( const wxString& aTitle, wxFileName& aPat wxNotebookPage* newPage = new wxNotebookPage( m_notebook, wxID_ANY ); m_notebook->AddPage( newPage, aTitle ); TEMPLATE_SELECTION_PANEL* p = new TEMPLATE_SELECTION_PANEL( newPage ); m_panels.push_back( p ); wxString path = aPath.GetFullPath(); // caller ensures this ends with file separator. TEMPLATE_SELECTION_PANEL* tpanel = new TEMPLATE_SELECTION_PANEL( newPage, path ); m_panels.push_back( tpanel ); if( m_notebook->GetPageCount() == 1 ) m_textCtrlTemplatePath->SetValue( path ); // Get a list of files under the template path to include as choices... wxArrayString files; wxDir dir; wxString path = aPath.GetFullPath(); // caller ensures this ends with file separator. if( dir.Open( path ) ) { wxDir sub_dir; Loading
kicad/dialogs/dialog_template_selector.fbp +177 −3 Original line number Diff line number Diff line Loading @@ -88,7 +88,7 @@ <event name="OnUpdateUI"></event> <object class="wxBoxSizer" expanded="1"> <property name="minimum_size"></property> <property name="name">bSizer1</property> <property name="name">bmainSizer</property> <property name="orient">wxVERTICAL</property> <property name="permission">none</property> <object class="sizeritem" expanded="1"> Loading Loading @@ -164,7 +164,7 @@ <event name="OnMotion"></event> <event name="OnMouseEvents"></event> <event name="OnMouseWheel"></event> <event name="OnNotebookPageChanged"></event> <event name="OnNotebookPageChanged">OnPageChange</event> <event name="OnNotebookPageChanging"></event> <event name="OnPaint"></event> <event name="OnRightDClick"></event> Loading Loading @@ -259,6 +259,180 @@ <event name="OnUpdateUI"></event> </object> </object> <object class="sizeritem" expanded="1"> <property name="border">5</property> <property name="flag">wxRIGHT|wxLEFT</property> <property name="proportion">0</property> <object class="wxStaticText" expanded="1"> <property name="BottomDockable">1</property> <property name="LeftDockable">1</property> <property name="RightDockable">1</property> <property name="TopDockable">1</property> <property name="aui_layer"></property> <property name="aui_name"></property> <property name="aui_position"></property> <property name="aui_row"></property> <property name="best_size"></property> <property name="bg"></property> <property name="caption"></property> <property name="caption_visible">1</property> <property name="center_pane">0</property> <property name="close_button">1</property> <property name="context_help"></property> <property name="context_menu">1</property> <property name="default_pane">0</property> <property name="dock">Dock</property> <property name="dock_fixed">0</property> <property name="docking">Left</property> <property name="enabled">1</property> <property name="fg"></property> <property name="floatable">1</property> <property name="font"></property> <property name="gripper">0</property> <property name="hidden">0</property> <property name="id">wxID_ANY</property> <property name="label">Templates path</property> <property name="max_size"></property> <property name="maximize_button">0</property> <property name="maximum_size"></property> <property name="min_size"></property> <property name="minimize_button">0</property> <property name="minimum_size"></property> <property name="moveable">1</property> <property name="name">m_staticTextTpath</property> <property name="pane_border">1</property> <property name="pane_position"></property> <property name="pane_size"></property> <property name="permission">protected</property> <property name="pin_button">1</property> <property name="pos"></property> <property name="resize">Resizable</property> <property name="show">1</property> <property name="size"></property> <property name="style"></property> <property name="subclass"></property> <property name="toolbar_pane">0</property> <property name="tooltip"></property> <property name="window_extra_style"></property> <property name="window_name"></property> <property name="window_style"></property> <property name="wrap">-1</property> <event name="OnChar"></event> <event name="OnEnterWindow"></event> <event name="OnEraseBackground"></event> <event name="OnKeyDown"></event> <event name="OnKeyUp"></event> <event name="OnKillFocus"></event> <event name="OnLeaveWindow"></event> <event name="OnLeftDClick"></event> <event name="OnLeftDown"></event> <event name="OnLeftUp"></event> <event name="OnMiddleDClick"></event> <event name="OnMiddleDown"></event> <event name="OnMiddleUp"></event> <event name="OnMotion"></event> <event name="OnMouseEvents"></event> <event name="OnMouseWheel"></event> <event name="OnPaint"></event> <event name="OnRightDClick"></event> <event name="OnRightDown"></event> <event name="OnRightUp"></event> <event name="OnSetFocus"></event> <event name="OnSize"></event> <event name="OnUpdateUI"></event> </object> </object> <object class="sizeritem" expanded="1"> <property name="border">5</property> <property name="flag">wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT</property> <property name="proportion">0</property> <object class="wxTextCtrl" expanded="1"> <property name="BottomDockable">1</property> <property name="LeftDockable">1</property> <property name="RightDockable">1</property> <property name="TopDockable">1</property> <property name="aui_layer"></property> <property name="aui_name"></property> <property name="aui_position"></property> <property name="aui_row"></property> <property name="best_size"></property> <property name="bg"></property> <property name="caption"></property> <property name="caption_visible">1</property> <property name="center_pane">0</property> <property name="close_button">1</property> <property name="context_help"></property> <property name="context_menu">1</property> <property name="default_pane">0</property> <property name="dock">Dock</property> <property name="dock_fixed">0</property> <property name="docking">Left</property> <property name="enabled">1</property> <property name="fg"></property> <property name="floatable">1</property> <property name="font"></property> <property name="gripper">0</property> <property name="hidden">0</property> <property name="id">wxID_ANY</property> <property name="max_size"></property> <property name="maximize_button">0</property> <property name="maximum_size"></property> <property name="maxlength"></property> <property name="min_size"></property> <property name="minimize_button">0</property> <property name="minimum_size"></property> <property name="moveable">1</property> <property name="name">m_textCtrlTemplatePath</property> <property name="pane_border">1</property> <property name="pane_position"></property> <property name="pane_size"></property> <property name="permission">protected</property> <property name="pin_button">1</property> <property name="pos"></property> <property name="resize">Resizable</property> <property name="show">1</property> <property name="size"></property> <property name="style">wxTE_READONLY</property> <property name="subclass"></property> <property name="toolbar_pane">0</property> <property name="tooltip"></property> <property name="validator_data_type"></property> <property name="validator_style">wxFILTER_NONE</property> <property name="validator_type">wxDefaultValidator</property> <property name="validator_variable"></property> <property name="value"></property> <property name="window_extra_style"></property> <property name="window_name"></property> <property name="window_style"></property> <event name="OnChar"></event> <event name="OnEnterWindow"></event> <event name="OnEraseBackground"></event> <event name="OnKeyDown"></event> <event name="OnKeyUp"></event> <event name="OnKillFocus"></event> <event name="OnLeaveWindow"></event> <event name="OnLeftDClick"></event> <event name="OnLeftDown"></event> <event name="OnLeftUp"></event> <event name="OnMiddleDClick"></event> <event name="OnMiddleDown"></event> <event name="OnMiddleUp"></event> <event name="OnMotion"></event> <event name="OnMouseEvents"></event> <event name="OnMouseWheel"></event> <event name="OnPaint"></event> <event name="OnRightDClick"></event> <event name="OnRightDown"></event> <event name="OnRightUp"></event> <event name="OnSetFocus"></event> <event name="OnSize"></event> <event name="OnText"></event> <event name="OnTextEnter"></event> <event name="OnTextMaxLen"></event> <event name="OnTextURL"></event> <event name="OnUpdateUI"></event> </object> </object> <object class="sizeritem" expanded="1"> <property name="border">3</property> <property name="flag">wxALL|wxEXPAND</property> Loading @@ -273,7 +447,7 @@ <property name="Save">0</property> <property name="Yes">0</property> <property name="minimum_size"></property> <property name="name">m_sdbSizer1</property> <property name="name">m_sdbSizer</property> <property name="permission">protected</property> <event name="OnApplyButtonClick"></event> <event name="OnCancelButtonClick"></event> Loading
kicad/dialogs/dialog_template_selector.h +8 −5 Original line number Diff line number Diff line Loading @@ -60,13 +60,16 @@ class TEMPLATE_SELECTION_PANEL : public TEMPLATE_SELECTION_PANEL_BASE { protected: wxWindow* parent; wxString m_templatesPath; public: /** * @param aParent The window creating the dialog */ TEMPLATE_SELECTION_PANEL( wxWindow* aParent ); TEMPLATE_SELECTION_PANEL( wxWindow* aParent, const wxString& aPath ); ~TEMPLATE_SELECTION_PANEL(); const wxString& GetPath() { return m_templatesPath; } }; class DIALOG_TEMPLATE_SELECTOR : public DIALOG_TEMPLATE_SELECTOR_BASE Loading @@ -81,15 +84,15 @@ public: ~DIALOG_TEMPLATE_SELECTOR(); /** * Add a new page with \a aTitle, populated with templates from \a aPath - All directories * directories under the path are treated as templates * Add a new page with \a aTitle, populated with templates from \a aPath * - All directories under the path are treated as templates */ void AddPage( const wxString& aTitle, wxFileName& aPath ); void SetHtml( wxFileName aFilename ); TEMPLATE_WIDGET* GetWidget(); void SetWidget( TEMPLATE_WIDGET* aWidget ); void onNotebookResize( wxSizeEvent& event ); void OnPageChange( wxNotebookEvent& event ); }; #endif
kicad/dialogs/dialog_template_selector_base.cpp +45 −32 Original line number Diff line number Diff line /////////////////////////////////////////////////////////////////////////// // C++ code generated with wxFormBuilder (version Apr 10 2012) // C++ code generated with wxFormBuilder (version Oct 8 2012) // http://www.wxformbuilder.org/ // // PLEASE DO "NOT" EDIT THIS FILE! Loading @@ -13,34 +13,47 @@ DIALOG_TEMPLATE_SELECTOR_BASE::DIALOG_TEMPLATE_SELECTOR_BASE( wxWindow* parent, { this->SetSizeHints( wxSize( 640,480 ), wxDefaultSize ); wxBoxSizer* bSizer1; bSizer1 = new wxBoxSizer( wxVERTICAL ); wxBoxSizer* bmainSizer; bmainSizer = new wxBoxSizer( wxVERTICAL ); m_notebook = new wxNotebook( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 ); bSizer1->Add( m_notebook, 0, wxEXPAND | wxALL, 3 ); bmainSizer->Add( m_notebook, 0, wxEXPAND | wxALL, 3 ); m_htmlWin = new wxHtmlWindow( this, wxID_ANY, wxDefaultPosition, wxSize( -1,-1 ), wxHW_SCROLLBAR_AUTO ); bSizer1->Add( m_htmlWin, 1, wxALL|wxEXPAND, 3 ); bmainSizer->Add( m_htmlWin, 1, wxALL|wxEXPAND, 3 ); m_sdbSizer1 = new wxStdDialogButtonSizer(); m_sdbSizer1OK = new wxButton( this, wxID_OK ); m_sdbSizer1->AddButton( m_sdbSizer1OK ); m_sdbSizer1Cancel = new wxButton( this, wxID_CANCEL ); m_sdbSizer1->AddButton( m_sdbSizer1Cancel ); m_sdbSizer1->Realize(); m_staticTextTpath = new wxStaticText( this, wxID_ANY, wxT("Templates path"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticTextTpath->Wrap( -1 ); bmainSizer->Add( m_staticTextTpath, 0, wxRIGHT|wxLEFT, 5 ); bSizer1->Add( m_sdbSizer1, 0, wxALL|wxEXPAND, 3 ); m_textCtrlTemplatePath = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_READONLY ); bmainSizer->Add( m_textCtrlTemplatePath, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 ); m_sdbSizer = new wxStdDialogButtonSizer(); m_sdbSizerOK = new wxButton( this, wxID_OK ); m_sdbSizer->AddButton( m_sdbSizerOK ); m_sdbSizerCancel = new wxButton( this, wxID_CANCEL ); m_sdbSizer->AddButton( m_sdbSizerCancel ); m_sdbSizer->Realize(); this->SetSizer( bSizer1 ); bmainSizer->Add( m_sdbSizer, 0, wxALL|wxEXPAND, 3 ); this->SetSizer( bmainSizer ); this->Layout(); this->Centre( wxBOTH ); // Connect Events m_notebook->Connect( wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, wxNotebookEventHandler( DIALOG_TEMPLATE_SELECTOR_BASE::OnPageChange ), NULL, this ); } DIALOG_TEMPLATE_SELECTOR_BASE::~DIALOG_TEMPLATE_SELECTOR_BASE() { // Disconnect Events m_notebook->Disconnect( wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED, wxNotebookEventHandler( DIALOG_TEMPLATE_SELECTOR_BASE::OnPageChange ), NULL, this ); } TEMPLATE_SELECTION_PANEL_BASE::TEMPLATE_SELECTION_PANEL_BASE( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : wxPanel( parent, id, pos, size, style ) Loading
kicad/dialogs/dialog_template_selector_base.h +31 −22 Original line number Diff line number Diff line /////////////////////////////////////////////////////////////////////////// // C++ code generated with wxFormBuilder (version Apr 10 2012) // C++ code generated with wxFormBuilder (version Oct 8 2012) // http://www.wxformbuilder.org/ // // PLEASE DO "NOT" EDIT THIS FILE! Loading @@ -10,6 +10,8 @@ #include <wx/artprov.h> #include <wx/xrc/xmlres.h> class DIALOG_SHIM; #include "dialog_shim.h" #include <wx/gdicmn.h> #include <wx/notebook.h> Loading @@ -18,6 +20,8 @@ #include <wx/settings.h> #include <wx/string.h> #include <wx/html/htmlwin.h> #include <wx/stattext.h> #include <wx/textctrl.h> #include <wx/sizer.h> #include <wx/button.h> #include <wx/dialog.h> Loading @@ -27,7 +31,6 @@ #include <wx/image.h> #include <wx/icon.h> #include <wx/statbmp.h> #include <wx/stattext.h> /////////////////////////////////////////////////////////////////////////// Loading @@ -42,9 +45,15 @@ class DIALOG_TEMPLATE_SELECTOR_BASE : public DIALOG_SHIM protected: wxNotebook* m_notebook; wxHtmlWindow* m_htmlWin; wxStdDialogButtonSizer* m_sdbSizer1; wxButton* m_sdbSizer1OK; wxButton* m_sdbSizer1Cancel; wxStaticText* m_staticTextTpath; wxTextCtrl* m_textCtrlTemplatePath; wxStdDialogButtonSizer* m_sdbSizer; wxButton* m_sdbSizerOK; wxButton* m_sdbSizerCancel; // Virtual event handlers, overide them in your derived class virtual void OnPageChange( wxNotebookEvent& event ) { event.Skip(); } public: Loading