Commit d5ecafd5 authored by jean-pierre charras's avatar jean-pierre charras

Fix some minor issues in hotkey dialogs

parent 3053d45b
...@@ -54,7 +54,7 @@ HOTKEYS_EDITOR_DIALOG::HOTKEYS_EDITOR_DIALOG( EDA_DRAW_FRAME* parent, ...@@ -54,7 +54,7 @@ HOTKEYS_EDITOR_DIALOG::HOTKEYS_EDITOR_DIALOG( EDA_DRAW_FRAME* parent,
m_hotkeys = hotkeys; m_hotkeys = hotkeys;
m_curEditingRow = -1; m_curEditingRow = -1;
m_table = new HotkeyGridTable( hotkeys ); m_table = new HOTKEY_EDITOR_GRID_TABLE( hotkeys );
m_hotkeyGrid->SetTable( m_table, true ); m_hotkeyGrid->SetTable( m_table, true );
m_hotkeyGrid->AutoSizeColumn( 0 ); m_hotkeyGrid->AutoSizeColumn( 0 );
...@@ -76,7 +76,7 @@ HOTKEYS_EDITOR_DIALOG::HOTKEYS_EDITOR_DIALOG( EDA_DRAW_FRAME* parent, ...@@ -76,7 +76,7 @@ HOTKEYS_EDITOR_DIALOG::HOTKEYS_EDITOR_DIALOG( EDA_DRAW_FRAME* parent,
void HOTKEYS_EDITOR_DIALOG::OnOKClicked( wxCommandEvent& event ) void HOTKEYS_EDITOR_DIALOG::OnOKClicked( wxCommandEvent& event )
{ {
/* edit the live hotkey table */ /* edit the live hotkey table */
HotkeyGridTable::hotkey_spec_vector& hotkey_vec = m_table->getHotkeys(); HOTKEY_EDITOR_GRID_TABLE::hotkey_spec_vector& hotkey_vec = m_table->getHotkeys();
EDA_HOTKEY_CONFIG* section; EDA_HOTKEY_CONFIG* section;
...@@ -91,7 +91,7 @@ void HOTKEYS_EDITOR_DIALOG::OnOKClicked( wxCommandEvent& event ) ...@@ -91,7 +91,7 @@ void HOTKEYS_EDITOR_DIALOG::OnOKClicked( wxCommandEvent& event )
EDA_HOTKEY* info = *info_ptr; EDA_HOTKEY* info = *info_ptr;
/* find the corresponding hotkey */ /* find the corresponding hotkey */
HotkeyGridTable::hotkey_spec_vector::iterator i; HOTKEY_EDITOR_GRID_TABLE::hotkey_spec_vector::iterator i;
for( i = hotkey_vec.begin(); i != hotkey_vec.end(); ++i ) for( i = hotkey_vec.begin(); i != hotkey_vec.end(); ++i )
{ {
...@@ -158,7 +158,7 @@ void HOTKEYS_EDITOR_DIALOG::OnClickOnCell( wxGridEvent& event ) ...@@ -158,7 +158,7 @@ void HOTKEYS_EDITOR_DIALOG::OnClickOnCell( wxGridEvent& event )
int newRow = event.GetRow(); int newRow = event.GetRow();
if( ( event.GetCol() != 1 ) || ( m_table->isHeader( newRow ) ) ) if( ( event.GetCol() != 1 ) || ( m_table->IsHeader( newRow ) ) )
{ {
m_curEditingRow = -1; m_curEditingRow = -1;
} }
......
/////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////
// C++ code generated with wxFormBuilder (version Sep 8 2010) // C++ code generated with wxFormBuilder (version Oct 8 2012)
// http://www.wxformbuilder.org/ // http://www.wxformbuilder.org/
// //
// PLEASE DO "NOT" EDIT THIS FILE! // PLEASE DO "NOT" EDIT THIS FILE!
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
/////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////
HOTKEYS_EDITOR_DIALOG_BASE::HOTKEYS_EDITOR_DIALOG_BASE( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style ) HOTKEYS_EDITOR_DIALOG_BASE::HOTKEYS_EDITOR_DIALOG_BASE( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : DIALOG_SHIM( parent, id, title, pos, size, style )
{ {
this->SetSizeHints( wxDefaultSize, wxDefaultSize ); this->SetSizeHints( wxDefaultSize, wxDefaultSize );
...@@ -55,8 +55,10 @@ HOTKEYS_EDITOR_DIALOG_BASE::HOTKEYS_EDITOR_DIALOG_BASE( wxWindow* parent, wxWind ...@@ -55,8 +55,10 @@ HOTKEYS_EDITOR_DIALOG_BASE::HOTKEYS_EDITOR_DIALOG_BASE( wxWindow* parent, wxWind
m_undoButton = new wxButton( this, wxID_CANCEL, _("Undo"), wxDefaultPosition, wxDefaultSize, 0 ); m_undoButton = new wxButton( this, wxID_CANCEL, _("Undo"), wxDefaultPosition, wxDefaultSize, 0 );
b_buttonsSizer->Add( m_undoButton, 0, wxALL|wxEXPAND, 5 ); b_buttonsSizer->Add( m_undoButton, 0, wxALL|wxEXPAND, 5 );
bMainSizer->Add( b_buttonsSizer, 0, wxALIGN_CENTER_VERTICAL, 5 ); bMainSizer->Add( b_buttonsSizer, 0, wxALIGN_CENTER_VERTICAL, 5 );
this->SetSizer( bMainSizer ); this->SetSizer( bMainSizer );
this->Layout(); this->Layout();
......
...@@ -2,11 +2,13 @@ ...@@ -2,11 +2,13 @@
<wxFormBuilder_Project> <wxFormBuilder_Project>
<FileVersion major="1" minor="11" /> <FileVersion major="1" minor="11" />
<object class="Project" expanded="1"> <object class="Project" expanded="1">
<property name="class_decoration" /> <property name="class_decoration"></property>
<property name="code_generation">C++</property> <property name="code_generation">C++</property>
<property name="disconnect_events">1</property> <property name="disconnect_events">1</property>
<property name="disconnect_mode">source_name</property> <property name="disconnect_mode">source_name</property>
<property name="disconnect_php_events">0</property>
<property name="disconnect_python_events">0</property> <property name="disconnect_python_events">0</property>
<property name="embedded_files_path">res</property>
<property name="encoding">UTF-8</property> <property name="encoding">UTF-8</property>
<property name="event_generation">connect</property> <property name="event_generation">connect</property>
<property name="file">dialog_hotkeys_editor_base</property> <property name="file">dialog_hotkeys_editor_base</property>
...@@ -14,73 +16,78 @@ ...@@ -14,73 +16,78 @@
<property name="help_provider">none</property> <property name="help_provider">none</property>
<property name="internationalize">1</property> <property name="internationalize">1</property>
<property name="name">dialog_hotkeys_editor_base</property> <property name="name">dialog_hotkeys_editor_base</property>
<property name="namespace" /> <property name="namespace"></property>
<property name="path">.</property> <property name="path">.</property>
<property name="precompiled_header" /> <property name="precompiled_header"></property>
<property name="relative_path">1</property> <property name="relative_path">1</property>
<property name="skip_php_events">1</property>
<property name="skip_python_events">1</property> <property name="skip_python_events">1</property>
<property name="use_enum">0</property> <property name="use_enum">0</property>
<property name="use_microsoft_bom">0</property> <property name="use_microsoft_bom">0</property>
<object class="Dialog" expanded="1"> <object class="Dialog" expanded="1">
<property name="bg" /> <property name="aui_managed">0</property>
<property name="center" /> <property name="aui_manager_style">wxAUI_MGR_DEFAULT</property>
<property name="context_help" /> <property name="bg"></property>
<property name="center"></property>
<property name="context_help"></property>
<property name="context_menu">1</property> <property name="context_menu">1</property>
<property name="enabled">1</property> <property name="enabled">1</property>
<property name="event_handler">impl_virtual</property> <property name="event_handler">impl_virtual</property>
<property name="extra_style" /> <property name="extra_style"></property>
<property name="fg" /> <property name="fg"></property>
<property name="font" /> <property name="font"></property>
<property name="hidden">0</property> <property name="hidden">0</property>
<property name="id">wxID_ANY</property> <property name="id">wxID_ANY</property>
<property name="maximum_size" /> <property name="maximum_size"></property>
<property name="minimum_size" /> <property name="minimum_size"></property>
<property name="name">HOTKEYS_EDITOR_DIALOG_BASE</property> <property name="name">HOTKEYS_EDITOR_DIALOG_BASE</property>
<property name="pos" /> <property name="pos"></property>
<property name="size">304,235</property> <property name="size">304,235</property>
<property name="style">wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER</property> <property name="style">wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER</property>
<property name="subclass" /> <property name="subclass">DIALOG_SHIM; dialog_shim.h</property>
<property name="title">Hotkeys Editor</property> <property name="title">Hotkeys Editor</property>
<property name="tooltip" /> <property name="tooltip"></property>
<property name="validator_data_type" /> <property name="window_extra_style"></property>
<property name="validator_style">wxFILTER_NONE</property> <property name="window_name"></property>
<property name="validator_type">wxDefaultValidator</property> <property name="window_style"></property>
<property name="validator_variable" /> <event name="OnActivate"></event>
<property name="window_extra_style" /> <event name="OnActivateApp"></event>
<property name="window_name" /> <event name="OnAuiFindManager"></event>
<property name="window_style" /> <event name="OnAuiPaneButton"></event>
<event name="OnActivate" /> <event name="OnAuiPaneClose"></event>
<event name="OnActivateApp" /> <event name="OnAuiPaneMaximize"></event>
<event name="OnChar" /> <event name="OnAuiPaneRestore"></event>
<event name="OnClose" /> <event name="OnAuiRender"></event>
<event name="OnEnterWindow" /> <event name="OnChar"></event>
<event name="OnEraseBackground" /> <event name="OnClose"></event>
<event name="OnHibernate" /> <event name="OnEnterWindow"></event>
<event name="OnIconize" /> <event name="OnEraseBackground"></event>
<event name="OnIdle" /> <event name="OnHibernate"></event>
<event name="OnInitDialog" /> <event name="OnIconize"></event>
<event name="OnKeyDown" /> <event name="OnIdle"></event>
<event name="OnKeyUp" /> <event name="OnInitDialog"></event>
<event name="OnKillFocus" /> <event name="OnKeyDown"></event>
<event name="OnLeaveWindow" /> <event name="OnKeyUp"></event>
<event name="OnLeftDClick" /> <event name="OnKillFocus"></event>
<event name="OnLeftDown" /> <event name="OnLeaveWindow"></event>
<event name="OnLeftUp" /> <event name="OnLeftDClick"></event>
<event name="OnMiddleDClick" /> <event name="OnLeftDown"></event>
<event name="OnMiddleDown" /> <event name="OnLeftUp"></event>
<event name="OnMiddleUp" /> <event name="OnMiddleDClick"></event>
<event name="OnMotion" /> <event name="OnMiddleDown"></event>
<event name="OnMouseEvents" /> <event name="OnMiddleUp"></event>
<event name="OnMouseWheel" /> <event name="OnMotion"></event>
<event name="OnPaint" /> <event name="OnMouseEvents"></event>
<event name="OnRightDClick" /> <event name="OnMouseWheel"></event>
<event name="OnRightDown" /> <event name="OnPaint"></event>
<event name="OnRightUp" /> <event name="OnRightDClick"></event>
<event name="OnSetFocus" /> <event name="OnRightDown"></event>
<event name="OnSize" /> <event name="OnRightUp"></event>
<event name="OnUpdateUI" /> <event name="OnSetFocus"></event>
<event name="OnSize"></event>
<event name="OnUpdateUI"></event>
<object class="wxBoxSizer" expanded="1"> <object class="wxBoxSizer" expanded="1">
<property name="minimum_size" /> <property name="minimum_size"></property>
<property name="name">bMainSizer</property> <property name="name">bMainSizer</property>
<property name="orient">wxHORIZONTAL</property> <property name="orient">wxHORIZONTAL</property>
<property name="permission">none</property> <property name="permission">none</property>
...@@ -89,115 +96,142 @@ ...@@ -89,115 +96,142 @@
<property name="flag">wxALL|wxEXPAND</property> <property name="flag">wxALL|wxEXPAND</property>
<property name="proportion">1</property> <property name="proportion">1</property>
<object class="wxGrid" expanded="1"> <object class="wxGrid" 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="autosize_cols">1</property> <property name="autosize_cols">1</property>
<property name="autosize_rows">0</property> <property name="autosize_rows">0</property>
<property name="bg" /> <property name="best_size"></property>
<property name="cell_bg" /> <property name="bg"></property>
<property name="cell_font" /> <property name="caption"></property>
<property name="caption_visible">1</property>
<property name="cell_bg"></property>
<property name="cell_font"></property>
<property name="cell_horiz_alignment">wxALIGN_LEFT</property> <property name="cell_horiz_alignment">wxALIGN_LEFT</property>
<property name="cell_text" /> <property name="cell_text"></property>
<property name="cell_vert_alignment">wxALIGN_TOP</property> <property name="cell_vert_alignment">wxALIGN_TOP</property>
<property name="center_pane">0</property>
<property name="close_button">1</property>
<property name="col_label_horiz_alignment">wxALIGN_CENTRE</property> <property name="col_label_horiz_alignment">wxALIGN_CENTRE</property>
<property name="col_label_size">30</property> <property name="col_label_size">30</property>
<property name="col_label_values" /> <property name="col_label_values"></property>
<property name="col_label_vert_alignment">wxALIGN_CENTRE</property> <property name="col_label_vert_alignment">wxALIGN_CENTRE</property>
<property name="cols">2</property> <property name="cols">2</property>
<property name="column_sizes" /> <property name="column_sizes"></property>
<property name="context_help" /> <property name="context_help"></property>
<property name="context_menu">1</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="drag_col_move">0</property> <property name="drag_col_move">0</property>
<property name="drag_col_size">1</property> <property name="drag_col_size">1</property>
<property name="drag_grid_size">0</property> <property name="drag_grid_size">0</property>
<property name="drag_row_size">1</property> <property name="drag_row_size">1</property>
<property name="editing">0</property> <property name="editing">0</property>
<property name="enabled">1</property> <property name="enabled">1</property>
<property name="fg" /> <property name="fg"></property>
<property name="font" /> <property name="floatable">1</property>
<property name="grid_line_color" /> <property name="font"></property>
<property name="grid_line_color"></property>
<property name="grid_lines">1</property> <property name="grid_lines">1</property>
<property name="gripper">0</property>
<property name="hidden">0</property> <property name="hidden">0</property>
<property name="id">wxID_ANY</property> <property name="id">wxID_ANY</property>
<property name="label_bg" /> <property name="label_bg"></property>
<property name="label_font" /> <property name="label_font"></property>
<property name="label_text" /> <property name="label_text"></property>
<property name="margin_height">0</property> <property name="margin_height">0</property>
<property name="margin_width">0</property> <property name="margin_width">0</property>
<property name="maximum_size" /> <property name="max_size"></property>
<property name="minimum_size" /> <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_hotkeyGrid</property> <property name="name">m_hotkeyGrid</property>
<property name="pane_border">1</property>
<property name="pane_position"></property>
<property name="pane_size"></property>
<property name="permission">protected</property> <property name="permission">protected</property>
<property name="pos" /> <property name="pin_button">1</property>
<property name="pos"></property>
<property name="resize">Resizable</property>
<property name="row_label_horiz_alignment">wxALIGN_CENTRE</property> <property name="row_label_horiz_alignment">wxALIGN_CENTRE</property>
<property name="row_label_size">0</property> <property name="row_label_size">0</property>
<property name="row_label_values" /> <property name="row_label_values"></property>
<property name="row_label_vert_alignment">wxALIGN_CENTRE</property> <property name="row_label_vert_alignment">wxALIGN_CENTRE</property>
<property name="row_sizes" /> <property name="row_sizes"></property>
<property name="rows">1</property> <property name="rows">1</property>
<property name="size" /> <property name="show">1</property>
<property name="subclass" /> <property name="size"></property>
<property name="tooltip" /> <property name="subclass"></property>
<property name="validator_data_type" /> <property name="toolbar_pane">0</property>
<property name="validator_style">wxFILTER_NONE</property> <property name="tooltip"></property>
<property name="validator_type">wxDefaultValidator</property> <property name="window_extra_style"></property>
<property name="validator_variable" /> <property name="window_name"></property>
<property name="window_extra_style" />
<property name="window_name" />
<property name="window_style">wxDOUBLE_BORDER|wxTAB_TRAVERSAL|wxWANTS_CHARS</property> <property name="window_style">wxDOUBLE_BORDER|wxTAB_TRAVERSAL|wxWANTS_CHARS</property>
<event name="OnChar">OnKeyPressed</event> <event name="OnChar">OnKeyPressed</event>
<event name="OnEnterWindow" /> <event name="OnEnterWindow"></event>
<event name="OnEraseBackground" /> <event name="OnEraseBackground"></event>
<event name="OnGridCellChange" /> <event name="OnGridCellChange"></event>
<event name="OnGridCellLeftClick" /> <event name="OnGridCellLeftClick"></event>
<event name="OnGridCellLeftDClick" /> <event name="OnGridCellLeftDClick"></event>
<event name="OnGridCellRightClick">OnRightClickOnCell</event> <event name="OnGridCellRightClick">OnRightClickOnCell</event>
<event name="OnGridCellRightDClick" /> <event name="OnGridCellRightDClick"></event>
<event name="OnGridCmdCellChange" /> <event name="OnGridCmdCellChange"></event>
<event name="OnGridCmdCellLeftClick" /> <event name="OnGridCmdCellLeftClick"></event>
<event name="OnGridCmdCellLeftDClick" /> <event name="OnGridCmdCellLeftDClick"></event>
<event name="OnGridCmdCellRightClick" /> <event name="OnGridCmdCellRightClick"></event>
<event name="OnGridCmdCellRightDClick" /> <event name="OnGridCmdCellRightDClick"></event>
<event name="OnGridCmdColSize" /> <event name="OnGridCmdColSize"></event>
<event name="OnGridCmdEditorCreated" /> <event name="OnGridCmdEditorCreated"></event>
<event name="OnGridCmdEditorHidden" /> <event name="OnGridCmdEditorHidden"></event>
<event name="OnGridCmdEditorShown" /> <event name="OnGridCmdEditorShown"></event>
<event name="OnGridCmdLabelLeftClick" /> <event name="OnGridCmdLabelLeftClick"></event>
<event name="OnGridCmdLabelLeftDClick" /> <event name="OnGridCmdLabelLeftDClick"></event>
<event name="OnGridCmdLabelRightClick" /> <event name="OnGridCmdLabelRightClick"></event>
<event name="OnGridCmdLabelRightDClick" /> <event name="OnGridCmdLabelRightDClick"></event>
<event name="OnGridCmdRangeSelect" /> <event name="OnGridCmdRangeSelect"></event>
<event name="OnGridCmdRowSize" /> <event name="OnGridCmdRowSize"></event>
<event name="OnGridCmdSelectCell" /> <event name="OnGridCmdSelectCell"></event>
<event name="OnGridColSize" /> <event name="OnGridColSize"></event>
<event name="OnGridEditorCreated" /> <event name="OnGridEditorCreated"></event>
<event name="OnGridEditorHidden" /> <event name="OnGridEditorHidden"></event>
<event name="OnGridEditorShown" /> <event name="OnGridEditorShown"></event>
<event name="OnGridLabelLeftClick" /> <event name="OnGridLabelLeftClick"></event>
<event name="OnGridLabelLeftDClick" /> <event name="OnGridLabelLeftDClick"></event>
<event name="OnGridLabelRightClick" /> <event name="OnGridLabelRightClick"></event>
<event name="OnGridLabelRightDClick" /> <event name="OnGridLabelRightDClick"></event>
<event name="OnGridRangeSelect" /> <event name="OnGridRangeSelect"></event>
<event name="OnGridRowSize" /> <event name="OnGridRowSize"></event>
<event name="OnGridSelectCell">OnClickOnCell</event> <event name="OnGridSelectCell">OnClickOnCell</event>
<event name="OnKeyDown" /> <event name="OnKeyDown"></event>
<event name="OnKeyUp" /> <event name="OnKeyUp"></event>
<event name="OnKillFocus" /> <event name="OnKillFocus"></event>
<event name="OnLeaveWindow" /> <event name="OnLeaveWindow"></event>
<event name="OnLeftDClick" /> <event name="OnLeftDClick"></event>
<event name="OnLeftDown" /> <event name="OnLeftDown"></event>
<event name="OnLeftUp" /> <event name="OnLeftUp"></event>
<event name="OnMiddleDClick" /> <event name="OnMiddleDClick"></event>
<event name="OnMiddleDown" /> <event name="OnMiddleDown"></event>
<event name="OnMiddleUp" /> <event name="OnMiddleUp"></event>
<event name="OnMotion" /> <event name="OnMotion"></event>
<event name="OnMouseEvents" /> <event name="OnMouseEvents"></event>
<event name="OnMouseWheel" /> <event name="OnMouseWheel"></event>
<event name="OnPaint" /> <event name="OnPaint"></event>
<event name="OnRightDClick" /> <event name="OnRightDClick"></event>
<event name="OnRightDown" /> <event name="OnRightDown"></event>
<event name="OnRightUp" /> <event name="OnRightUp"></event>
<event name="OnSetFocus" /> <event name="OnSetFocus"></event>
<event name="OnSize" /> <event name="OnSize"></event>
<event name="OnUpdateUI" /> <event name="OnUpdateUI"></event>
</object> </object>
</object> </object>
<object class="sizeritem" expanded="1"> <object class="sizeritem" expanded="1">
...@@ -205,7 +239,7 @@ ...@@ -205,7 +239,7 @@
<property name="flag">wxALIGN_CENTER_VERTICAL</property> <property name="flag">wxALIGN_CENTER_VERTICAL</property>
<property name="proportion">0</property> <property name="proportion">0</property>
<object class="wxBoxSizer" expanded="1"> <object class="wxBoxSizer" expanded="1">
<property name="minimum_size" /> <property name="minimum_size"></property>
<property name="name">b_buttonsSizer</property> <property name="name">b_buttonsSizer</property>
<property name="orient">wxVERTICAL</property> <property name="orient">wxVERTICAL</property>
<property name="permission">none</property> <property name="permission">none</property>
...@@ -214,56 +248,87 @@ ...@@ -214,56 +248,87 @@
<property name="flag">wxALL|wxEXPAND</property> <property name="flag">wxALL|wxEXPAND</property>
<property name="proportion">0</property> <property name="proportion">0</property>
<object class="wxButton" expanded="1"> <object class="wxButton" expanded="1">
<property name="bg" /> <property name="BottomDockable">1</property>
<property name="context_help" /> <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="context_menu">1</property>
<property name="default">0</property> <property name="default">0</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="enabled">1</property>
<property name="fg" /> <property name="fg"></property>
<property name="font" /> <property name="floatable">1</property>
<property name="font"></property>
<property name="gripper">0</property>
<property name="hidden">0</property> <property name="hidden">0</property>
<property name="id">wxID_OK</property> <property name="id">wxID_OK</property>
<property name="label">OK</property> <property name="label">OK</property>
<property name="maximum_size" /> <property name="max_size"></property>
<property name="minimum_size" /> <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_OKButton</property> <property name="name">m_OKButton</property>
<property name="pane_border">1</property>
<property name="pane_position"></property>
<property name="pane_size"></property>
<property name="permission">protected</property> <property name="permission">protected</property>
<property name="pos" /> <property name="pin_button">1</property>
<property name="size" /> <property name="pos"></property>
<property name="style" /> <property name="resize">Resizable</property>
<property name="subclass" /> <property name="show">1</property>
<property name="tooltip" /> <property name="size"></property>
<property name="validator_data_type" /> <property name="style"></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_style">wxFILTER_NONE</property>
<property name="validator_type">wxDefaultValidator</property> <property name="validator_type">wxDefaultValidator</property>
<property name="validator_variable" /> <property name="validator_variable"></property>
<property name="window_extra_style" /> <property name="window_extra_style"></property>
<property name="window_name" /> <property name="window_name"></property>
<property name="window_style" /> <property name="window_style"></property>
<event name="OnButtonClick">OnOKClicked</event> <event name="OnButtonClick">OnOKClicked</event>
<event name="OnChar" /> <event name="OnChar"></event>
<event name="OnEnterWindow" /> <event name="OnEnterWindow"></event>
<event name="OnEraseBackground" /> <event name="OnEraseBackground"></event>
<event name="OnKeyDown" /> <event name="OnKeyDown"></event>
<event name="OnKeyUp" /> <event name="OnKeyUp"></event>
<event name="OnKillFocus" /> <event name="OnKillFocus"></event>
<event name="OnLeaveWindow" /> <event name="OnLeaveWindow"></event>
<event name="OnLeftDClick" /> <event name="OnLeftDClick"></event>
<event name="OnLeftDown" /> <event name="OnLeftDown"></event>
<event name="OnLeftUp" /> <event name="OnLeftUp"></event>
<event name="OnMiddleDClick" /> <event name="OnMiddleDClick"></event>
<event name="OnMiddleDown" /> <event name="OnMiddleDown"></event>
<event name="OnMiddleUp" /> <event name="OnMiddleUp"></event>
<event name="OnMotion" /> <event name="OnMotion"></event>
<event name="OnMouseEvents" /> <event name="OnMouseEvents"></event>
<event name="OnMouseWheel" /> <event name="OnMouseWheel"></event>
<event name="OnPaint" /> <event name="OnPaint"></event>
<event name="OnRightDClick" /> <event name="OnRightDClick"></event>
<event name="OnRightDown" /> <event name="OnRightDown"></event>
<event name="OnRightUp" /> <event name="OnRightUp"></event>
<event name="OnSetFocus" /> <event name="OnSetFocus"></event>
<event name="OnSize" /> <event name="OnSize"></event>
<event name="OnUpdateUI" /> <event name="OnUpdateUI"></event>
</object> </object>
</object> </object>
<object class="sizeritem" expanded="1"> <object class="sizeritem" expanded="1">
...@@ -271,56 +336,87 @@ ...@@ -271,56 +336,87 @@
<property name="flag">wxALL|wxEXPAND</property> <property name="flag">wxALL|wxEXPAND</property>
<property name="proportion">0</property> <property name="proportion">0</property>
<object class="wxButton" expanded="1"> <object class="wxButton" expanded="1">
<property name="bg" /> <property name="BottomDockable">1</property>
<property name="context_help" /> <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="context_menu">1</property>
<property name="default">0</property> <property name="default">0</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="enabled">1</property>
<property name="fg" /> <property name="fg"></property>
<property name="font" /> <property name="floatable">1</property>
<property name="font"></property>
<property name="gripper">0</property>
<property name="hidden">0</property> <property name="hidden">0</property>
<property name="id">wxID_CANCEL</property> <property name="id">wxID_CANCEL</property>
<property name="label">Close</property> <property name="label">Close</property>
<property name="maximum_size" /> <property name="max_size"></property>
<property name="minimum_size" /> <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_cancelButton</property> <property name="name"> m_cancelButton</property>
<property name="pane_border">1</property>
<property name="pane_position"></property>
<property name="pane_size"></property>
<property name="permission">protected</property> <property name="permission">protected</property>
<property name="pos" /> <property name="pin_button">1</property>
<property name="size" /> <property name="pos"></property>
<property name="style" /> <property name="resize">Resizable</property>
<property name="subclass" /> <property name="show">1</property>
<property name="tooltip" /> <property name="size"></property>
<property name="validator_data_type" /> <property name="style"></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_style">wxFILTER_NONE</property>
<property name="validator_type">wxDefaultValidator</property> <property name="validator_type">wxDefaultValidator</property>
<property name="validator_variable" /> <property name="validator_variable"></property>
<property name="window_extra_style" /> <property name="window_extra_style"></property>
<property name="window_name" /> <property name="window_name"></property>
<property name="window_style" /> <property name="window_style"></property>
<event name="OnButtonClick">CancelClicked</event> <event name="OnButtonClick">CancelClicked</event>
<event name="OnChar" /> <event name="OnChar"></event>
<event name="OnEnterWindow" /> <event name="OnEnterWindow"></event>
<event name="OnEraseBackground" /> <event name="OnEraseBackground"></event>
<event name="OnKeyDown" /> <event name="OnKeyDown"></event>
<event name="OnKeyUp" /> <event name="OnKeyUp"></event>
<event name="OnKillFocus" /> <event name="OnKillFocus"></event>
<event name="OnLeaveWindow" /> <event name="OnLeaveWindow"></event>
<event name="OnLeftDClick" /> <event name="OnLeftDClick"></event>
<event name="OnLeftDown" /> <event name="OnLeftDown"></event>
<event name="OnLeftUp" /> <event name="OnLeftUp"></event>
<event name="OnMiddleDClick" /> <event name="OnMiddleDClick"></event>
<event name="OnMiddleDown" /> <event name="OnMiddleDown"></event>
<event name="OnMiddleUp" /> <event name="OnMiddleUp"></event>
<event name="OnMotion" /> <event name="OnMotion"></event>
<event name="OnMouseEvents" /> <event name="OnMouseEvents"></event>
<event name="OnMouseWheel" /> <event name="OnMouseWheel"></event>
<event name="OnPaint" /> <event name="OnPaint"></event>
<event name="OnRightDClick" /> <event name="OnRightDClick"></event>
<event name="OnRightDown" /> <event name="OnRightDown"></event>
<event name="OnRightUp" /> <event name="OnRightUp"></event>
<event name="OnSetFocus" /> <event name="OnSetFocus"></event>
<event name="OnSize" /> <event name="OnSize"></event>
<event name="OnUpdateUI" /> <event name="OnUpdateUI"></event>
</object> </object>
</object> </object>
<object class="sizeritem" expanded="1"> <object class="sizeritem" expanded="1">
...@@ -328,56 +424,87 @@ ...@@ -328,56 +424,87 @@
<property name="flag">wxALL|wxEXPAND</property> <property name="flag">wxALL|wxEXPAND</property>
<property name="proportion">0</property> <property name="proportion">0</property>
<object class="wxButton" expanded="1"> <object class="wxButton" expanded="1">
<property name="bg" /> <property name="BottomDockable">1</property>
<property name="context_help" /> <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="context_menu">1</property>
<property name="default">0</property> <property name="default">0</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="enabled">1</property>
<property name="fg" /> <property name="fg"></property>
<property name="font" /> <property name="floatable">1</property>
<property name="font"></property>
<property name="gripper">0</property>
<property name="hidden">0</property> <property name="hidden">0</property>
<property name="id">wxID_CANCEL</property> <property name="id">wxID_CANCEL</property>
<property name="label">Undo</property> <property name="label">Undo</property>
<property name="maximum_size" /> <property name="max_size"></property>
<property name="minimum_size" /> <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_undoButton</property> <property name="name">m_undoButton</property>
<property name="pane_border">1</property>
<property name="pane_position"></property>
<property name="pane_size"></property>
<property name="permission">protected</property> <property name="permission">protected</property>
<property name="pos" /> <property name="pin_button">1</property>
<property name="size" /> <property name="pos"></property>
<property name="style" /> <property name="resize">Resizable</property>
<property name="subclass" /> <property name="show">1</property>
<property name="tooltip" /> <property name="size"></property>
<property name="validator_data_type" /> <property name="style"></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_style">wxFILTER_NONE</property>
<property name="validator_type">wxDefaultValidator</property> <property name="validator_type">wxDefaultValidator</property>
<property name="validator_variable" /> <property name="validator_variable"></property>
<property name="window_extra_style" /> <property name="window_extra_style"></property>
<property name="window_name" /> <property name="window_name"></property>
<property name="window_style" /> <property name="window_style"></property>
<event name="OnButtonClick">UndoClicked</event> <event name="OnButtonClick">UndoClicked</event>
<event name="OnChar" /> <event name="OnChar"></event>
<event name="OnEnterWindow" /> <event name="OnEnterWindow"></event>
<event name="OnEraseBackground" /> <event name="OnEraseBackground"></event>
<event name="OnKeyDown" /> <event name="OnKeyDown"></event>
<event name="OnKeyUp" /> <event name="OnKeyUp"></event>
<event name="OnKillFocus" /> <event name="OnKillFocus"></event>
<event name="OnLeaveWindow" /> <event name="OnLeaveWindow"></event>
<event name="OnLeftDClick" /> <event name="OnLeftDClick"></event>
<event name="OnLeftDown" /> <event name="OnLeftDown"></event>
<event name="OnLeftUp" /> <event name="OnLeftUp"></event>
<event name="OnMiddleDClick" /> <event name="OnMiddleDClick"></event>
<event name="OnMiddleDown" /> <event name="OnMiddleDown"></event>
<event name="OnMiddleUp" /> <event name="OnMiddleUp"></event>
<event name="OnMotion" /> <event name="OnMotion"></event>
<event name="OnMouseEvents" /> <event name="OnMouseEvents"></event>
<event name="OnMouseWheel" /> <event name="OnMouseWheel"></event>
<event name="OnPaint" /> <event name="OnPaint"></event>
<event name="OnRightDClick" /> <event name="OnRightDClick"></event>
<event name="OnRightDown" /> <event name="OnRightDown"></event>
<event name="OnRightUp" /> <event name="OnRightUp"></event>
<event name="OnSetFocus" /> <event name="OnSetFocus"></event>
<event name="OnSize" /> <event name="OnSize"></event>
<event name="OnUpdateUI" /> <event name="OnUpdateUI"></event>
</object> </object>
</object> </object>
</object> </object>
......
/////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////
// C++ code generated with wxFormBuilder (version Sep 8 2010) // C++ code generated with wxFormBuilder (version Oct 8 2012)
// http://www.wxformbuilder.org/ // http://www.wxformbuilder.org/
// //
// PLEASE DO "NOT" EDIT THIS FILE! // PLEASE DO "NOT" EDIT THIS FILE!
/////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////
#ifndef __dialog_hotkeys_editor_base__ #ifndef __DIALOG_HOTKEYS_EDITOR_BASE_H__
#define __dialog_hotkeys_editor_base__ #define __DIALOG_HOTKEYS_EDITOR_BASE_H__
#include <wx/artprov.h>
#include <wx/xrc/xmlres.h>
#include <wx/intl.h> #include <wx/intl.h>
class DIALOG_SHIM;
#include "dialog_shim.h"
#include <wx/colour.h> #include <wx/colour.h>
#include <wx/settings.h> #include <wx/settings.h>
#include <wx/string.h> #include <wx/string.h>
...@@ -26,7 +30,7 @@ ...@@ -26,7 +30,7 @@
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
/// Class HOTKEYS_EDITOR_DIALOG_BASE /// Class HOTKEYS_EDITOR_DIALOG_BASE
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
class HOTKEYS_EDITOR_DIALOG_BASE : public wxDialog class HOTKEYS_EDITOR_DIALOG_BASE : public DIALOG_SHIM
{ {
private: private:
...@@ -47,9 +51,9 @@ class HOTKEYS_EDITOR_DIALOG_BASE : public wxDialog ...@@ -47,9 +51,9 @@ class HOTKEYS_EDITOR_DIALOG_BASE : public wxDialog
public: public:
HOTKEYS_EDITOR_DIALOG_BASE( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Hotkeys Editor"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 304,235 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER ); HOTKEYS_EDITOR_DIALOG_BASE( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Hotkeys Editor"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 304,235 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
~HOTKEYS_EDITOR_DIALOG_BASE(); ~HOTKEYS_EDITOR_DIALOG_BASE();
}; };
#endif //__dialog_hotkeys_editor_base__ #endif //__DIALOG_HOTKEYS_EDITOR_BASE_H__
...@@ -4,174 +4,179 @@ ...@@ -4,174 +4,179 @@
* Reads the hotkey table from its stored format into a format suitable * Reads the hotkey table from its stored format into a format suitable
* for a wxGrid. * for a wxGrid.
*/ */
HotkeyGridTable::HotkeyGridTable( struct EDA_HOTKEY_CONFIG* origin ) : HOTKEY_EDITOR_GRID_TABLE::HOTKEY_EDITOR_GRID_TABLE( struct EDA_HOTKEY_CONFIG* origin ) :
wxGridTableBase(), wxGridTableBase(), m_hotkeys()
m_hotkeys()
{ {
EDA_HOTKEY_CONFIG* section; EDA_HOTKEY_CONFIG* section;
for( section = origin; section->m_HK_InfoList; section++ ) for( section = origin; section->m_HK_InfoList; section++ )
{ {
hotkey_spec spec( *section->m_SectionTag, new EDA_HOTKEY( NULL, 0, 0 ) ); // Add a dummy hotkey_spec which is a header before each hotkey list
hotkey_spec spec( *section->m_SectionTag, NULL );
m_hotkeys.push_back( spec ); m_hotkeys.push_back( spec );
EDA_HOTKEY** info_ptr; EDA_HOTKEY** hotkey_descr_list;
for( info_ptr = section->m_HK_InfoList; *info_ptr; info_ptr++ ) // Add hotkeys descr
for( hotkey_descr_list = section->m_HK_InfoList; *hotkey_descr_list;
hotkey_descr_list++ )
{ {
EDA_HOTKEY* info = *info_ptr; EDA_HOTKEY* hotkey_descr = *hotkey_descr_list;
hotkey_spec spec( *section->m_SectionTag, new EDA_HOTKEY( info ) ); hotkey_spec spec( *section->m_SectionTag, new EDA_HOTKEY( hotkey_descr ) );
m_hotkeys.push_back( spec ); m_hotkeys.push_back( spec );
} }
} }
} }
HotkeyGridTable::hotkey_spec_vector& HotkeyGridTable::getHotkeys() HOTKEY_EDITOR_GRID_TABLE::hotkey_spec_vector& HOTKEY_EDITOR_GRID_TABLE::getHotkeys()
{ {
return m_hotkeys; return m_hotkeys;
} }
int HotkeyGridTable::GetNumberRows() int HOTKEY_EDITOR_GRID_TABLE::GetNumberRows()
{ {
return m_hotkeys.size(); return m_hotkeys.size();
} }
int HotkeyGridTable::GetNumberCols() int HOTKEY_EDITOR_GRID_TABLE::GetNumberCols()
{ {
return 2; return 2;
} }
bool HotkeyGridTable::IsEmptyCell( int row, int col ) bool HOTKEY_EDITOR_GRID_TABLE::IsEmptyCell( int row, int col )
{ {
return col == 1 && m_hotkeys[row].second == 0; return col == 1 && m_hotkeys[row].second == NULL;
} }
wxString HotkeyGridTable::GetValue( int row, int col ) wxString HOTKEY_EDITOR_GRID_TABLE::GetValue( int row, int col )
{ {
EDA_HOTKEY* hotkey_descr = m_hotkeys[row].second;
if( col == 0 ) if( col == 0 )
{ {
if( m_hotkeys[row].second == 0 ) if( hotkey_descr == NULL )
{ {
// section header // section header
return m_hotkeys[row].first; return m_hotkeys[row].first;
} }
else else
{ {
return m_hotkeys[row].second->m_InfoMsg; return hotkey_descr->m_InfoMsg;
} }
} }
else else
{ {
if( m_hotkeys[row].second == 0 ) if( hotkey_descr == NULL )
{ {
return wxString(); // section header
return wxEmptyString;
} }
else else
{ {
return ReturnKeyNameFromKeyCode( m_hotkeys[row].second->m_KeyCode ); return ReturnKeyNameFromKeyCode( hotkey_descr->m_KeyCode );
} }
} }
} }
void HotkeyGridTable::SetValue( int row, int col, const wxString& value ) void HOTKEY_EDITOR_GRID_TABLE::SetValue( int row, int col, const wxString& value )
{ {
} }
wxString HotkeyGridTable::GetTypeName( int row, int col ) wxString HOTKEY_EDITOR_GRID_TABLE::GetTypeName( int row, int col )
{ {
return wxGRID_VALUE_STRING; return wxGRID_VALUE_STRING;
} }
bool HotkeyGridTable::CanGetValueAs( int row, int col, const wxString& typeName ) bool HOTKEY_EDITOR_GRID_TABLE::CanGetValueAs( int row, int col, const wxString& typeName )
{ {
return typeName == wxGRID_VALUE_STRING && col == 2; return typeName == wxGRID_VALUE_STRING && col == 2;
} }
bool HotkeyGridTable::CanSetValueAs( int row, int col, const wxString& typeName ) bool HOTKEY_EDITOR_GRID_TABLE::CanSetValueAs( int row, int col, const wxString& typeName )
{ {
return false; return false;
} }
long HotkeyGridTable::GetValueAsLong( int row, int col ) long HOTKEY_EDITOR_GRID_TABLE::GetValueAsLong( int row, int col )
{ {
return -1L; return -1L;
} }
double HotkeyGridTable::GetValueAsDouble( int row, int col ) double HOTKEY_EDITOR_GRID_TABLE::GetValueAsDouble( int row, int col )
{ {
return 0.0; return 0.0;
} }
bool HotkeyGridTable::GetValueAsBool( int row, int col ) bool HOTKEY_EDITOR_GRID_TABLE::GetValueAsBool( int row, int col )
{ {
return false; return false;
} }
void HotkeyGridTable::SetValueAsLong( int row, int col, long value ) void HOTKEY_EDITOR_GRID_TABLE::SetValueAsLong( int row, int col, long value )
{ {
} }
void HotkeyGridTable::SetValueAsDouble( int row, int col, double value ) void HOTKEY_EDITOR_GRID_TABLE::SetValueAsDouble( int row, int col, double value )
{ {
} }
void HotkeyGridTable::SetValueAsBool( int row, int col, bool value ) void HOTKEY_EDITOR_GRID_TABLE::SetValueAsBool( int row, int col, bool value )
{ {
} }
void* HotkeyGridTable::GetValueAsCustom( int row, int col ) void* HOTKEY_EDITOR_GRID_TABLE::GetValueAsCustom( int row, int col )
{ {
return 0; return 0;
} }
void HotkeyGridTable::SetValueAsCustom( int row, int col, void* value ) void HOTKEY_EDITOR_GRID_TABLE::SetValueAsCustom( int row, int col, void* value )
{ {
} }
wxString HotkeyGridTable::GetColLabelValue( int col ) wxString HOTKEY_EDITOR_GRID_TABLE::GetColLabelValue( int col )
{ {
return col == 0 ? _( "Command" ) : _( "Hotkey" ); return col == 0 ? _( "Command" ) : _( "Hotkey" );
} }
bool HotkeyGridTable::isHeader( int row ) bool HOTKEY_EDITOR_GRID_TABLE::IsHeader( int row )
{ {
return m_hotkeys[row].second == 0; return m_hotkeys[row].second == NULL;
} }
void HotkeyGridTable::SetKeyCode( int row, long key ) void HOTKEY_EDITOR_GRID_TABLE::SetKeyCode( int row, long key )
{ {
m_hotkeys[row].second->m_KeyCode = key; m_hotkeys[row].second->m_KeyCode = key;
} }
void HotkeyGridTable::RestoreFrom( struct EDA_HOTKEY_CONFIG* origin ) void HOTKEY_EDITOR_GRID_TABLE::RestoreFrom( struct EDA_HOTKEY_CONFIG* origin )
{ {
int row = 0; int row = 0;
EDA_HOTKEY_CONFIG* section; EDA_HOTKEY_CONFIG* section;
for( section = origin; section->m_HK_InfoList; section++ ) for( section = origin; section->m_HK_InfoList; section++ )
{ {
++row; ++row; // Skip header
EDA_HOTKEY** info_ptr; EDA_HOTKEY** info_ptr;
for( info_ptr = section->m_HK_InfoList; *info_ptr; info_ptr++ ) for( info_ptr = section->m_HK_InfoList; *info_ptr; info_ptr++ )
...@@ -183,15 +188,10 @@ void HotkeyGridTable::RestoreFrom( struct EDA_HOTKEY_CONFIG* origin ) ...@@ -183,15 +188,10 @@ void HotkeyGridTable::RestoreFrom( struct EDA_HOTKEY_CONFIG* origin )
} }
HotkeyGridTable::~HotkeyGridTable() HOTKEY_EDITOR_GRID_TABLE::~HOTKEY_EDITOR_GRID_TABLE()
{ {
hotkey_spec_vector::iterator i; hotkey_spec_vector::iterator i;
for( i = m_hotkeys.begin(); i != m_hotkeys.end(); ++i ) for( i = m_hotkeys.begin(); i != m_hotkeys.end(); ++i )
{ delete i->second;
if( i->second )
{
delete i->second;
}
}
} }
/* /*
* This program source code file is part of KiCad, a free EDA CAD application. * This program source code file is part of KiCad, a free EDA CAD application.
* *
* Copyright (C) 2007 Jean-Pierre Charras, jaen-pierre.charras@gipsa-lab.inpg.com * Copyright (C) 2013 Jean-Pierre Charras, j-p.charras at wanadoo.fr
* Copyright (C) 2010-2011 Wayne Stambaugh <stambaughw@verizon.net> * Copyright (C) 2010-2011 Wayne Stambaugh <stambaughw@verizon.net>
* Copyright (C) 1992-2011 KiCad Developers, see AUTHORS.txt for contributors. * Copyright (C) 1992-2011 KiCad Developers, see AUTHORS.txt for contributors.
* *
...@@ -212,17 +212,12 @@ wxString ReturnKeyNameFromKeyCode( int aKeycode, bool* aIsFound ) ...@@ -212,17 +212,12 @@ wxString ReturnKeyNameFromKeyCode( int aKeycode, bool* aIsFound )
*/ */
static void AddModifierToKey( wxString& aFullKey, const wxString & aKey ) static void AddModifierToKey( wxString& aFullKey, const wxString & aKey )
{ {
#if 0 // set to 0 for new behavior, 1 for old
aFullKey << wxT( " <" ) << aKey << wxT( ">" );
#else
if( (aKey.Length() == 1) && (aKey[0] >= 'A') && (aKey[0] <= 'Z')) if( (aKey.Length() == 1) && (aKey[0] >= 'A') && (aKey[0] <= 'Z'))
// We can use Shift+<key> as accelerator ans <key> for hot key // We can use Shift+<key> as accelerator and <key> for hot key
aFullKey << wxT( "\t" ) << MODIFIER_SHIFT << aKey; aFullKey << wxT( "\t" ) << MODIFIER_SHIFT << aKey;
else else
// We must use Alt+<key> as accelerator ans <key> for hot key // We must use Alt+<key> as accelerator ans <key> for hot key
aFullKey << wxT( "\t" ) << MODIFIER_ALT << aKey; aFullKey << wxT( "\t" ) << MODIFIER_ALT << aKey;
#endif
} }
/* AddHotkeyName /* AddHotkeyName
...@@ -430,6 +425,10 @@ void DisplayHotkeyList( EDA_DRAW_FRAME* aFrame, struct EDA_HOTKEY_CONFIG* aDescL ...@@ -430,6 +425,10 @@ void DisplayHotkeyList( EDA_DRAW_FRAME* aFrame, struct EDA_HOTKEY_CONFIG* aDescL
if( !hk_decr->m_InfoMsg.Contains( wxT( "Macros" ) ) ) if( !hk_decr->m_InfoMsg.Contains( wxT( "Macros" ) ) )
{ {
keyname = ReturnKeyNameFromKeyCode( hk_decr->m_KeyCode ); keyname = ReturnKeyNameFromKeyCode( hk_decr->m_KeyCode );
// Some chars should be modified, using html encoding, to be
// displayed by DisplayHtmlInfoMessage()
keyname.Replace( wxT("<"), wxT("&lt;") );
keyname.Replace( wxT(">"), wxT("&gt;") );
msg += wxT( "<tr><td>" ) + hk_decr->m_InfoMsg + wxT("</td>"); msg += wxT( "<tr><td>" ) + hk_decr->m_InfoMsg + wxT("</td>");
msg += wxT("<td><b>&nbsp;&nbsp;") + keyname + wxT( "</b></td></tr>" ); msg += wxT("<td><b>&nbsp;&nbsp;") + keyname + wxT( "</b></td></tr>" );
} }
......
...@@ -26,7 +26,7 @@ class HOTKEYS_EDITOR_DIALOG : public HOTKEYS_EDITOR_DIALOG_BASE ...@@ -26,7 +26,7 @@ class HOTKEYS_EDITOR_DIALOG : public HOTKEYS_EDITOR_DIALOG_BASE
protected: protected:
EDA_DRAW_FRAME* m_parent; EDA_DRAW_FRAME* m_parent;
struct EDA_HOTKEY_CONFIG* m_hotkeys; struct EDA_HOTKEY_CONFIG* m_hotkeys;
HotkeyGridTable* m_table; HOTKEY_EDITOR_GRID_TABLE* m_table;
int m_curEditingRow; int m_curEditingRow;
......
...@@ -14,15 +14,15 @@ ...@@ -14,15 +14,15 @@
#include <common.h> #include <common.h>
#include <hotkeys_basic.h> #include <hotkeys_basic.h>
class HotkeyGridTable : public wxGridTableBase class HOTKEY_EDITOR_GRID_TABLE : public wxGridTableBase
{ {
public: public:
typedef std::pair< wxString, EDA_HOTKEY* > hotkey_spec; typedef std::pair< wxString, EDA_HOTKEY* > hotkey_spec;
typedef std::vector< hotkey_spec > hotkey_spec_vector; typedef std::vector< hotkey_spec > hotkey_spec_vector;
HotkeyGridTable( struct EDA_HOTKEY_CONFIG* origin ); HOTKEY_EDITOR_GRID_TABLE( struct EDA_HOTKEY_CONFIG* origin );
virtual ~HotkeyGridTable(); virtual ~HOTKEY_EDITOR_GRID_TABLE();
hotkey_spec_vector& getHotkeys(); hotkey_spec_vector& getHotkeys();
private: private:
...@@ -45,7 +45,7 @@ private: ...@@ -45,7 +45,7 @@ private:
virtual wxString GetColLabelValue( int col ); virtual wxString GetColLabelValue( int col );
public: public:
virtual bool isHeader( int row ); virtual bool IsHeader( int row );
virtual void SetKeyCode( int row, long key ); virtual void SetKeyCode( int row, long key );
virtual void RestoreFrom( struct EDA_HOTKEY_CONFIG* origin ); virtual void RestoreFrom( struct EDA_HOTKEY_CONFIG* origin );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment