From 9dedbc74a302622bb5621e4a678813c9e253a7b1 Mon Sep 17 00:00:00 2001 From: jean-pierre charras <jp.charras@wanadoo.fr> Date: Fri, 21 Dec 2018 13:48:00 +0100 Subject: [PATCH] Gerbview exporter: fix a wxASSERT. --- .../dialog_layers_select_to_pcb_base.fbp | 914 +++++++++--------- .../dialogs/dialog_select_one_pcb_layer.cpp | 17 +- gerbview/export_to_pcbnew.cpp | 63 +- 3 files changed, 501 insertions(+), 493 deletions(-) diff --git a/gerbview/dialogs/dialog_layers_select_to_pcb_base.fbp b/gerbview/dialogs/dialog_layers_select_to_pcb_base.fbp index 1031fa85c5..cd948196e1 100644 --- a/gerbview/dialogs/dialog_layers_select_to_pcb_base.fbp +++ b/gerbview/dialogs/dialog_layers_select_to_pcb_base.fbp @@ -1,8 +1,8 @@ <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> <wxFormBuilder_Project> - <FileVersion major="1" minor="13" /> + <FileVersion major="1" minor="15" /> <object class="Project" expanded="1"> - <property name="class_decoration"></property> + <property name="class_decoration" /> <property name="code_generation">C++</property> <property name="disconnect_events">1</property> <property name="disconnect_mode">source_name</property> @@ -16,9 +16,9 @@ <property name="help_provider">none</property> <property name="internationalize">1</property> <property name="name">dialog_layers_select_to_pcb_base</property> - <property name="namespace"></property> + <property name="namespace" /> <property name="path">.</property> - <property name="precompiled_header"></property> + <property name="precompiled_header" /> <property name="relative_path">1</property> <property name="skip_lua_events">1</property> <property name="skip_php_events">1</property> @@ -29,67 +29,67 @@ <object class="Dialog" expanded="1"> <property name="aui_managed">0</property> <property name="aui_manager_style">wxAUI_MGR_DEFAULT</property> - <property name="bg"></property> + <property name="bg" /> <property name="center">wxBOTH</property> - <property name="context_help"></property> + <property name="context_help" /> <property name="context_menu">1</property> <property name="enabled">1</property> <property name="event_handler">impl_virtual</property> - <property name="extra_style"></property> - <property name="fg"></property> - <property name="font"></property> + <property name="extra_style" /> + <property name="fg" /> + <property name="font" /> <property name="hidden">0</property> <property name="id">ID_LAYERS_MAP_DIALOG_BASE</property> - <property name="maximum_size"></property> - <property name="minimum_size"></property> + <property name="maximum_size" /> + <property name="minimum_size" /> <property name="name">LAYERS_MAP_DIALOG_BASE</property> - <property name="pos"></property> + <property name="pos" /> <property name="size">386,333</property> <property name="style">wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER</property> <property name="subclass">DIALOG_SHIM; dialog_shim.h</property> <property name="title">Layer Selection</property> - <property name="tooltip"></property> - <property name="window_extra_style"></property> - <property name="window_name"></property> - <property name="window_style"></property> - <event name="OnActivate"></event> - <event name="OnActivateApp"></event> - <event name="OnAuiFindManager"></event> - <event name="OnAuiPaneButton"></event> - <event name="OnAuiPaneClose"></event> - <event name="OnAuiPaneMaximize"></event> - <event name="OnAuiPaneRestore"></event> - <event name="OnAuiRender"></event> - <event name="OnChar"></event> - <event name="OnClose"></event> - <event name="OnEnterWindow"></event> - <event name="OnEraseBackground"></event> - <event name="OnHibernate"></event> - <event name="OnIconize"></event> - <event name="OnIdle"></event> - <event name="OnInitDialog"></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> + <property name="tooltip" /> + <property name="window_extra_style" /> + <property name="window_name" /> + <property name="window_style" /> + <event name="OnActivate" /> + <event name="OnActivateApp" /> + <event name="OnAuiFindManager" /> + <event name="OnAuiPaneButton" /> + <event name="OnAuiPaneClose" /> + <event name="OnAuiPaneMaximize" /> + <event name="OnAuiPaneRestore" /> + <event name="OnAuiRender" /> + <event name="OnChar" /> + <event name="OnClose" /> + <event name="OnEnterWindow" /> + <event name="OnEraseBackground" /> + <event name="OnHibernate" /> + <event name="OnIconize" /> + <event name="OnIdle" /> + <event name="OnInitDialog" /> + <event name="OnKeyDown" /> + <event name="OnKeyUp" /> + <event name="OnKillFocus" /> + <event name="OnLeaveWindow" /> + <event name="OnLeftDClick" /> + <event name="OnLeftDown" /> + <event name="OnLeftUp" /> + <event name="OnMiddleDClick" /> + <event name="OnMiddleDown" /> + <event name="OnMiddleUp" /> + <event name="OnMotion" /> + <event name="OnMouseEvents" /> + <event name="OnMouseWheel" /> + <event name="OnPaint" /> + <event name="OnRightDClick" /> + <event name="OnRightDown" /> + <event name="OnRightUp" /> + <event name="OnSetFocus" /> + <event name="OnSize" /> + <event name="OnUpdateUI" /> <object class="wxBoxSizer" expanded="1"> - <property name="minimum_size"></property> + <property name="minimum_size" /> <property name="name">bSizerMain</property> <property name="orient">wxVERTICAL</property> <property name="permission">none</property> @@ -98,7 +98,7 @@ <property name="flag">wxEXPAND</property> <property name="proportion">1</property> <object class="wxBoxSizer" expanded="1"> - <property name="minimum_size"></property> + <property name="minimum_size" /> <property name="name">sbUpperSizer</property> <property name="orient">wxHORIZONTAL</property> <property name="permission">none</property> @@ -107,7 +107,7 @@ <property name="flag">wxEXPAND</property> <property name="proportion">1</property> <object class="wxBoxSizer" expanded="1"> - <property name="minimum_size"></property> + <property name="minimum_size" /> <property name="name">bSizerLayerSelection</property> <property name="orient">wxVERTICAL</property> <property name="permission">none</property> @@ -120,78 +120,78 @@ <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="aui_layer" /> + <property name="aui_name" /> + <property name="aui_position" /> + <property name="aui_row" /> + <property name="best_size" /> + <property name="bg" /> + <property name="caption" /> <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_help" /> <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="fg" /> <property name="floatable">1</property> - <property name="font"></property> + <property name="font" /> <property name="gripper">0</property> <property name="hidden">0</property> <property name="id">wxID_ANY</property> <property name="label">Layer selection:</property> - <property name="max_size"></property> + <property name="max_size" /> <property name="maximize_button">0</property> - <property name="maximum_size"></property> - <property name="min_size"></property> + <property name="maximum_size" /> + <property name="min_size" /> <property name="minimize_button">0</property> - <property name="minimum_size"></property> + <property name="minimum_size" /> <property name="moveable">1</property> <property name="name">m_staticTextLayerSel</property> <property name="pane_border">1</property> - <property name="pane_position"></property> - <property name="pane_size"></property> + <property name="pane_position" /> + <property name="pane_size" /> <property name="permission">protected</property> <property name="pin_button">1</property> - <property name="pos"></property> + <property name="pos" /> <property name="resize">Resizable</property> <property name="show">1</property> - <property name="size"></property> - <property name="style"></property> - <property name="subclass"></property> + <property name="size" /> + <property name="style" /> + <property name="subclass" /> <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="tooltip" /> + <property name="window_extra_style" /> + <property name="window_name" /> + <property name="window_style" /> <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> + <event name="OnChar" /> + <event name="OnEnterWindow" /> + <event name="OnEraseBackground" /> + <event name="OnKeyDown" /> + <event name="OnKeyUp" /> + <event name="OnKillFocus" /> + <event name="OnLeaveWindow" /> + <event name="OnLeftDClick" /> + <event name="OnLeftDown" /> + <event name="OnLeftUp" /> + <event name="OnMiddleDClick" /> + <event name="OnMiddleDown" /> + <event name="OnMiddleUp" /> + <event name="OnMotion" /> + <event name="OnMouseEvents" /> + <event name="OnMouseWheel" /> + <event name="OnPaint" /> + <event name="OnRightDClick" /> + <event name="OnRightDown" /> + <event name="OnRightUp" /> + <event name="OnSetFocus" /> + <event name="OnSize" /> + <event name="OnUpdateUI" /> </object> </object> <object class="sizeritem" expanded="1"> @@ -199,7 +199,7 @@ <property name="flag">wxEXPAND</property> <property name="proportion">1</property> <object class="wxBoxSizer" expanded="1"> - <property name="minimum_size"></property> + <property name="minimum_size" /> <property name="name">m_bSizerLayerList</property> <property name="orient">wxHORIZONTAL</property> <property name="permission">protected</property> @@ -221,9 +221,9 @@ <property name="cols">4</property> <property name="flexible_direction">wxBOTH</property> <property name="growablecols">0,1,2,3</property> - <property name="growablerows"></property> + <property name="growablerows" /> <property name="hgap">0</property> - <property name="minimum_size"></property> + <property name="minimum_size" /> <property name="name">m_flexLeftColumnBoxSizer</property> <property name="non_flexible_grow_mode">wxFLEX_GROWMODE_SPECIFIED</property> <property name="permission">protected</property> @@ -240,76 +240,76 @@ <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="aui_layer" /> + <property name="aui_name" /> + <property name="aui_position" /> + <property name="aui_row" /> + <property name="best_size" /> + <property name="bg" /> + <property name="caption" /> <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_help" /> <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="fg" /> <property name="floatable">1</property> - <property name="font"></property> + <property name="font" /> <property name="gripper">0</property> <property name="hidden">0</property> <property name="id">ID_M_STATICLINESEP</property> - <property name="max_size"></property> + <property name="max_size" /> <property name="maximize_button">0</property> - <property name="maximum_size"></property> - <property name="min_size"></property> + <property name="maximum_size" /> + <property name="min_size" /> <property name="minimize_button">0</property> - <property name="minimum_size"></property> + <property name="minimum_size" /> <property name="moveable">1</property> <property name="name">m_staticlineSep</property> <property name="pane_border">1</property> - <property name="pane_position"></property> - <property name="pane_size"></property> + <property name="pane_position" /> + <property name="pane_size" /> <property name="permission">protected</property> <property name="pin_button">1</property> - <property name="pos"></property> + <property name="pos" /> <property name="resize">Resizable</property> <property name="show">1</property> - <property name="size"></property> + <property name="size" /> <property name="style">wxLI_VERTICAL</property> - <property name="subclass"></property> + <property name="subclass" /> <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> - <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> + <property name="tooltip" /> + <property name="window_extra_style" /> + <property name="window_name" /> + <property name="window_style" /> + <event name="OnChar" /> + <event name="OnEnterWindow" /> + <event name="OnEraseBackground" /> + <event name="OnKeyDown" /> + <event name="OnKeyUp" /> + <event name="OnKillFocus" /> + <event name="OnLeaveWindow" /> + <event name="OnLeftDClick" /> + <event name="OnLeftDown" /> + <event name="OnLeftUp" /> + <event name="OnMiddleDClick" /> + <event name="OnMiddleDown" /> + <event name="OnMiddleUp" /> + <event name="OnMotion" /> + <event name="OnMouseEvents" /> + <event name="OnMouseWheel" /> + <event name="OnPaint" /> + <event name="OnRightDClick" /> + <event name="OnRightDown" /> + <event name="OnRightUp" /> + <event name="OnSetFocus" /> + <event name="OnSize" /> + <event name="OnUpdateUI" /> </object> </object> <object class="sizeritem" expanded="1"> @@ -320,9 +320,9 @@ <property name="cols">4</property> <property name="flexible_direction">wxBOTH</property> <property name="growablecols">0,1,2,3</property> - <property name="growablerows"></property> + <property name="growablerows" /> <property name="hgap">0</property> - <property name="minimum_size"></property> + <property name="minimum_size" /> <property name="name">m_flexRightColumnBoxSizer</property> <property name="non_flexible_grow_mode">wxFLEX_GROWMODE_SPECIFIED</property> <property name="permission">protected</property> @@ -339,7 +339,7 @@ <property name="flag">wxALIGN_CENTER_VERTICAL</property> <property name="proportion">0</property> <object class="wxBoxSizer" expanded="1"> - <property name="minimum_size"></property> + <property name="minimum_size" /> <property name="name">bRightSizer</property> <property name="orient">wxVERTICAL</property> <property name="permission">none</property> @@ -348,7 +348,7 @@ <property name="flag">wxEXPAND</property> <property name="proportion">0</property> <object class="wxBoxSizer" expanded="1"> - <property name="minimum_size"></property> + <property name="minimum_size" /> <property name="name">bSizerLyrCnt</property> <property name="orient">wxVERTICAL</property> <property name="permission">none</property> @@ -361,78 +361,78 @@ <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="aui_layer" /> + <property name="aui_name" /> + <property name="aui_position" /> + <property name="aui_row" /> + <property name="best_size" /> + <property name="bg" /> + <property name="caption" /> <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_help" /> <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="fg" /> <property name="floatable">1</property> - <property name="font"></property> + <property name="font" /> <property name="gripper">0</property> <property name="hidden">0</property> <property name="id">ID_M_STATICTEXTCOPPERLAYERCOUNT</property> <property name="label">Copper layers count:</property> - <property name="max_size"></property> + <property name="max_size" /> <property name="maximize_button">0</property> - <property name="maximum_size"></property> - <property name="min_size"></property> + <property name="maximum_size" /> + <property name="min_size" /> <property name="minimize_button">0</property> - <property name="minimum_size"></property> + <property name="minimum_size" /> <property name="moveable">1</property> <property name="name">m_staticTextCopperlayerCount</property> <property name="pane_border">1</property> - <property name="pane_position"></property> - <property name="pane_size"></property> + <property name="pane_position" /> + <property name="pane_size" /> <property name="permission">protected</property> <property name="pin_button">1</property> - <property name="pos"></property> + <property name="pos" /> <property name="resize">Resizable</property> <property name="show">1</property> - <property name="size"></property> - <property name="style"></property> - <property name="subclass"></property> + <property name="size" /> + <property name="style" /> + <property name="subclass" /> <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="tooltip" /> + <property name="window_extra_style" /> + <property name="window_name" /> + <property name="window_style" /> <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> + <event name="OnChar" /> + <event name="OnEnterWindow" /> + <event name="OnEraseBackground" /> + <event name="OnKeyDown" /> + <event name="OnKeyUp" /> + <event name="OnKillFocus" /> + <event name="OnLeaveWindow" /> + <event name="OnLeftDClick" /> + <event name="OnLeftDown" /> + <event name="OnLeftUp" /> + <event name="OnMiddleDClick" /> + <event name="OnMiddleDown" /> + <event name="OnMiddleUp" /> + <event name="OnMotion" /> + <event name="OnMouseEvents" /> + <event name="OnMouseWheel" /> + <event name="OnPaint" /> + <event name="OnRightDClick" /> + <event name="OnRightDown" /> + <event name="OnRightUp" /> + <event name="OnSetFocus" /> + <event name="OnSize" /> + <event name="OnUpdateUI" /> </object> </object> <object class="sizeritem" expanded="1"> @@ -444,88 +444,88 @@ <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="aui_layer" /> + <property name="aui_name" /> + <property name="aui_position" /> + <property name="aui_row" /> + <property name="best_size" /> + <property name="bg" /> + <property name="caption" /> <property name="caption_visible">1</property> <property name="center_pane">0</property> <property name="choices">"2 Layers" "4 Layers" "6 Layers" "8 Layers" "10 Layers" "12 Layers" "14 Layers" "16 Layers"</property> <property name="close_button">1</property> - <property name="context_help"></property> + <property name="context_help" /> <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="fg" /> <property name="floatable">1</property> - <property name="font"></property> + <property name="font" /> <property name="gripper">0</property> <property name="hidden">0</property> <property name="id">ID_M_COMBOCOPPERLAYERSCOUNT</property> - <property name="max_size"></property> + <property name="max_size" /> <property name="maximize_button">0</property> - <property name="maximum_size"></property> - <property name="min_size"></property> + <property name="maximum_size" /> + <property name="min_size" /> <property name="minimize_button">0</property> - <property name="minimum_size"></property> + <property name="minimum_size" /> <property name="moveable">1</property> <property name="name">m_comboCopperLayersCount</property> <property name="pane_border">1</property> - <property name="pane_position"></property> - <property name="pane_size"></property> + <property name="pane_position" /> + <property name="pane_size" /> <property name="permission">protected</property> <property name="pin_button">1</property> - <property name="pos"></property> + <property name="pos" /> <property name="resize">Resizable</property> <property name="selection">-1</property> <property name="show">1</property> - <property name="size"></property> - <property name="style"></property> - <property name="subclass"></property> + <property name="size" /> + <property name="style" /> + <property name="subclass" /> <property name="toolbar_pane">0</property> - <property name="tooltip"></property> - <property name="validator_data_type"></property> + <property name="tooltip" /> + <property name="validator_data_type" /> <property name="validator_style">wxFILTER_NONE</property> <property name="validator_type">wxDefaultValidator</property> - <property name="validator_variable"></property> + <property name="validator_variable" /> <property name="value">2 Layers</property> - <property name="window_extra_style"></property> - <property name="window_name"></property> - <property name="window_style"></property> - <event name="OnChar"></event> + <property name="window_extra_style" /> + <property name="window_name" /> + <property name="window_style" /> + <event name="OnChar" /> <event name="OnCombobox">OnBrdLayersCountSelection</event> - <event name="OnComboboxCloseup"></event> - <event name="OnComboboxDropdown"></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="OnUpdateUI"></event> + <event name="OnComboboxCloseup" /> + <event name="OnComboboxDropdown" /> + <event name="OnEnterWindow" /> + <event name="OnEraseBackground" /> + <event name="OnKeyDown" /> + <event name="OnKeyUp" /> + <event name="OnKillFocus" /> + <event name="OnLeaveWindow" /> + <event name="OnLeftDClick" /> + <event name="OnLeftDown" /> + <event name="OnLeftUp" /> + <event name="OnMiddleDClick" /> + <event name="OnMiddleDown" /> + <event name="OnMiddleUp" /> + <event name="OnMotion" /> + <event name="OnMouseEvents" /> + <event name="OnMouseWheel" /> + <event name="OnPaint" /> + <event name="OnRightDClick" /> + <event name="OnRightDown" /> + <event name="OnRightUp" /> + <event name="OnSetFocus" /> + <event name="OnSize" /> + <event name="OnText" /> + <event name="OnTextEnter" /> + <event name="OnUpdateUI" /> </object> </object> </object> @@ -545,7 +545,7 @@ <property name="flag">wxEXPAND</property> <property name="proportion">0</property> <object class="wxBoxSizer" expanded="1"> - <property name="minimum_size"></property> + <property name="minimum_size" /> <property name="name">bSizerButtons</property> <property name="orient">wxVERTICAL</property> <property name="permission">none</property> @@ -558,17 +558,17 @@ <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="aui_layer" /> + <property name="aui_name" /> + <property name="aui_position" /> + <property name="aui_row" /> + <property name="best_size" /> + <property name="bg" /> + <property name="caption" /> <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_help" /> <property name="context_menu">1</property> <property name="default">0</property> <property name="default_pane">0</property> @@ -576,65 +576,65 @@ <property name="dock_fixed">0</property> <property name="docking">Left</property> <property name="enabled">1</property> - <property name="fg"></property> + <property name="fg" /> <property name="floatable">1</property> - <property name="font"></property> + <property name="font" /> <property name="gripper">0</property> <property name="hidden">0</property> <property name="id">ID_STORE_CHOICE</property> <property name="label">Store Choice</property> - <property name="max_size"></property> + <property name="max_size" /> <property name="maximize_button">0</property> - <property name="maximum_size"></property> - <property name="min_size"></property> + <property name="maximum_size" /> + <property name="min_size" /> <property name="minimize_button">0</property> - <property name="minimum_size"></property> + <property name="minimum_size" /> <property name="moveable">1</property> <property name="name">m_buttonStore</property> <property name="pane_border">1</property> - <property name="pane_position"></property> - <property name="pane_size"></property> + <property name="pane_position" /> + <property name="pane_size" /> <property name="permission">protected</property> <property name="pin_button">1</property> - <property name="pos"></property> + <property name="pos" /> <property name="resize">Resizable</property> <property name="show">1</property> - <property name="size"></property> - <property name="style"></property> - <property name="subclass"></property> + <property name="size" /> + <property name="style" /> + <property name="subclass" /> <property name="toolbar_pane">0</property> - <property name="tooltip"></property> - <property name="validator_data_type"></property> + <property name="tooltip" /> + <property name="validator_data_type" /> <property name="validator_style">wxFILTER_NONE</property> <property name="validator_type">wxDefaultValidator</property> - <property name="validator_variable"></property> - <property name="window_extra_style"></property> - <property name="window_name"></property> - <property name="window_style"></property> + <property name="validator_variable" /> + <property name="window_extra_style" /> + <property name="window_name" /> + <property name="window_style" /> <event name="OnButtonClick">OnStoreSetup</event> - <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> + <event name="OnChar" /> + <event name="OnEnterWindow" /> + <event name="OnEraseBackground" /> + <event name="OnKeyDown" /> + <event name="OnKeyUp" /> + <event name="OnKillFocus" /> + <event name="OnLeaveWindow" /> + <event name="OnLeftDClick" /> + <event name="OnLeftDown" /> + <event name="OnLeftUp" /> + <event name="OnMiddleDClick" /> + <event name="OnMiddleDown" /> + <event name="OnMiddleUp" /> + <event name="OnMotion" /> + <event name="OnMouseEvents" /> + <event name="OnMouseWheel" /> + <event name="OnPaint" /> + <event name="OnRightDClick" /> + <event name="OnRightDown" /> + <event name="OnRightUp" /> + <event name="OnSetFocus" /> + <event name="OnSize" /> + <event name="OnUpdateUI" /> </object> </object> <object class="sizeritem" expanded="1"> @@ -646,17 +646,17 @@ <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="aui_layer" /> + <property name="aui_name" /> + <property name="aui_position" /> + <property name="aui_row" /> + <property name="best_size" /> + <property name="bg" /> + <property name="caption" /> <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_help" /> <property name="context_menu">1</property> <property name="default">0</property> <property name="default_pane">0</property> @@ -664,65 +664,65 @@ <property name="dock_fixed">0</property> <property name="docking">Left</property> <property name="enabled">1</property> - <property name="fg"></property> + <property name="fg" /> <property name="floatable">1</property> - <property name="font"></property> + <property name="font" /> <property name="gripper">0</property> <property name="hidden">0</property> <property name="id">ID_GET_PREVIOUS_CHOICE</property> <property name="label">Get Stored Choice</property> - <property name="max_size"></property> + <property name="max_size" /> <property name="maximize_button">0</property> - <property name="maximum_size"></property> - <property name="min_size"></property> + <property name="maximum_size" /> + <property name="min_size" /> <property name="minimize_button">0</property> - <property name="minimum_size"></property> + <property name="minimum_size" /> <property name="moveable">1</property> <property name="name">m_buttonRetrieve</property> <property name="pane_border">1</property> - <property name="pane_position"></property> - <property name="pane_size"></property> + <property name="pane_position" /> + <property name="pane_size" /> <property name="permission">protected</property> <property name="pin_button">1</property> - <property name="pos"></property> + <property name="pos" /> <property name="resize">Resizable</property> <property name="show">1</property> - <property name="size"></property> - <property name="style"></property> - <property name="subclass"></property> + <property name="size" /> + <property name="style" /> + <property name="subclass" /> <property name="toolbar_pane">0</property> - <property name="tooltip"></property> - <property name="validator_data_type"></property> + <property name="tooltip" /> + <property name="validator_data_type" /> <property name="validator_style">wxFILTER_NONE</property> <property name="validator_type">wxDefaultValidator</property> - <property name="validator_variable"></property> - <property name="window_extra_style"></property> - <property name="window_name"></property> - <property name="window_style"></property> + <property name="validator_variable" /> + <property name="window_extra_style" /> + <property name="window_name" /> + <property name="window_style" /> <event name="OnButtonClick">OnGetSetup</event> - <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> + <event name="OnChar" /> + <event name="OnEnterWindow" /> + <event name="OnEraseBackground" /> + <event name="OnKeyDown" /> + <event name="OnKeyUp" /> + <event name="OnKillFocus" /> + <event name="OnLeaveWindow" /> + <event name="OnLeftDClick" /> + <event name="OnLeftDown" /> + <event name="OnLeftUp" /> + <event name="OnMiddleDClick" /> + <event name="OnMiddleDown" /> + <event name="OnMiddleUp" /> + <event name="OnMotion" /> + <event name="OnMouseEvents" /> + <event name="OnMouseWheel" /> + <event name="OnPaint" /> + <event name="OnRightDClick" /> + <event name="OnRightDown" /> + <event name="OnRightUp" /> + <event name="OnSetFocus" /> + <event name="OnSize" /> + <event name="OnUpdateUI" /> </object> </object> <object class="sizeritem" expanded="1"> @@ -734,17 +734,17 @@ <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="aui_layer" /> + <property name="aui_name" /> + <property name="aui_position" /> + <property name="aui_row" /> + <property name="best_size" /> + <property name="bg" /> + <property name="caption" /> <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_help" /> <property name="context_menu">1</property> <property name="default">0</property> <property name="default_pane">0</property> @@ -752,65 +752,65 @@ <property name="dock_fixed">0</property> <property name="docking">Left</property> <property name="enabled">1</property> - <property name="fg"></property> + <property name="fg" /> <property name="floatable">1</property> - <property name="font"></property> + <property name="font" /> <property name="gripper">0</property> <property name="hidden">0</property> <property name="id">ID_RESET_CHOICE</property> <property name="label">Reset</property> - <property name="max_size"></property> + <property name="max_size" /> <property name="maximize_button">0</property> - <property name="maximum_size"></property> - <property name="min_size"></property> + <property name="maximum_size" /> + <property name="min_size" /> <property name="minimize_button">0</property> - <property name="minimum_size"></property> + <property name="minimum_size" /> <property name="moveable">1</property> <property name="name">m_buttonReset</property> <property name="pane_border">1</property> - <property name="pane_position"></property> - <property name="pane_size"></property> + <property name="pane_position" /> + <property name="pane_size" /> <property name="permission">protected</property> <property name="pin_button">1</property> - <property name="pos"></property> + <property name="pos" /> <property name="resize">Resizable</property> <property name="show">1</property> - <property name="size"></property> - <property name="style"></property> - <property name="subclass"></property> + <property name="size" /> + <property name="style" /> + <property name="subclass" /> <property name="toolbar_pane">0</property> - <property name="tooltip"></property> - <property name="validator_data_type"></property> + <property name="tooltip" /> + <property name="validator_data_type" /> <property name="validator_style">wxFILTER_NONE</property> <property name="validator_type">wxDefaultValidator</property> - <property name="validator_variable"></property> - <property name="window_extra_style"></property> - <property name="window_name"></property> - <property name="window_style"></property> + <property name="validator_variable" /> + <property name="window_extra_style" /> + <property name="window_name" /> + <property name="window_style" /> <event name="OnButtonClick">OnResetClick</event> - <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> + <event name="OnChar" /> + <event name="OnEnterWindow" /> + <event name="OnEraseBackground" /> + <event name="OnKeyDown" /> + <event name="OnKeyUp" /> + <event name="OnKillFocus" /> + <event name="OnLeaveWindow" /> + <event name="OnLeftDClick" /> + <event name="OnLeftDown" /> + <event name="OnLeftUp" /> + <event name="OnMiddleDClick" /> + <event name="OnMiddleDown" /> + <event name="OnMiddleUp" /> + <event name="OnMotion" /> + <event name="OnMouseEvents" /> + <event name="OnMouseWheel" /> + <event name="OnPaint" /> + <event name="OnRightDClick" /> + <event name="OnRightDown" /> + <event name="OnRightUp" /> + <event name="OnSetFocus" /> + <event name="OnSize" /> + <event name="OnUpdateUI" /> </object> </object> </object> @@ -828,76 +828,76 @@ <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="aui_layer" /> + <property name="aui_name" /> + <property name="aui_position" /> + <property name="aui_row" /> + <property name="best_size" /> + <property name="bg" /> + <property name="caption" /> <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_help" /> <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="fg" /> <property name="floatable">1</property> - <property name="font"></property> + <property name="font" /> <property name="gripper">0</property> <property name="hidden">0</property> <property name="id">wxID_ANY</property> - <property name="max_size"></property> + <property name="max_size" /> <property name="maximize_button">0</property> - <property name="maximum_size"></property> - <property name="min_size"></property> + <property name="maximum_size" /> + <property name="min_size" /> <property name="minimize_button">0</property> - <property name="minimum_size"></property> + <property name="minimum_size" /> <property name="moveable">1</property> <property name="name">m_staticline1</property> <property name="pane_border">1</property> - <property name="pane_position"></property> - <property name="pane_size"></property> + <property name="pane_position" /> + <property name="pane_size" /> <property name="permission">protected</property> <property name="pin_button">1</property> - <property name="pos"></property> + <property name="pos" /> <property name="resize">Resizable</property> <property name="show">1</property> - <property name="size"></property> + <property name="size" /> <property name="style">wxLI_HORIZONTAL</property> - <property name="subclass"></property> + <property name="subclass" /> <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> - <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> + <property name="tooltip" /> + <property name="window_extra_style" /> + <property name="window_name" /> + <property name="window_style" /> + <event name="OnChar" /> + <event name="OnEnterWindow" /> + <event name="OnEraseBackground" /> + <event name="OnKeyDown" /> + <event name="OnKeyUp" /> + <event name="OnKillFocus" /> + <event name="OnLeaveWindow" /> + <event name="OnLeftDClick" /> + <event name="OnLeftDown" /> + <event name="OnLeftUp" /> + <event name="OnMiddleDClick" /> + <event name="OnMiddleDown" /> + <event name="OnMiddleUp" /> + <event name="OnMotion" /> + <event name="OnMouseEvents" /> + <event name="OnMouseWheel" /> + <event name="OnPaint" /> + <event name="OnRightDClick" /> + <event name="OnRightDown" /> + <event name="OnRightUp" /> + <event name="OnSetFocus" /> + <event name="OnSize" /> + <event name="OnUpdateUI" /> </object> </object> <object class="sizeritem" expanded="1"> @@ -913,17 +913,17 @@ <property name="OK">1</property> <property name="Save">0</property> <property name="Yes">0</property> - <property name="minimum_size"></property> + <property name="minimum_size" /> <property name="name">m_sdbSizerButtons</property> <property name="permission">protected</property> - <event name="OnApplyButtonClick"></event> - <event name="OnCancelButtonClick"></event> - <event name="OnContextHelpButtonClick"></event> - <event name="OnHelpButtonClick"></event> - <event name="OnNoButtonClick"></event> + <event name="OnApplyButtonClick" /> + <event name="OnCancelButtonClick" /> + <event name="OnContextHelpButtonClick" /> + <event name="OnHelpButtonClick" /> + <event name="OnNoButtonClick" /> <event name="OnOKButtonClick">OnOkClick</event> - <event name="OnSaveButtonClick"></event> - <event name="OnYesButtonClick"></event> + <event name="OnSaveButtonClick" /> + <event name="OnYesButtonClick" /> </object> </object> </object> diff --git a/gerbview/dialogs/dialog_select_one_pcb_layer.cpp b/gerbview/dialogs/dialog_select_one_pcb_layer.cpp index 4bd125573a..963141f611 100644 --- a/gerbview/dialogs/dialog_select_one_pcb_layer.cpp +++ b/gerbview/dialogs/dialog_select_one_pcb_layer.cpp @@ -137,8 +137,11 @@ SELECT_LAYER_DIALOG::SELECT_LAYER_DIALOG( GERBVIEW_FRAME* parent, } // Build the layer list; build non copper layers list - for( ; ii < NB_PCB_LAYERS; ++ii ) + for( ; ; ++ii ) { + if( GetPCBDefaultLayerName( ii ) == "" ) // End of list + break; + layerList.Add( GetPCBDefaultLayerName( ii ) ); if( ii == aDefaultLayer ) @@ -260,17 +263,11 @@ const wxString GetPCBDefaultLayerName( int aLayerId ) case Eco1_User: txt = wxT( "Eco1.User" ); break; case Eco2_User: txt = wxT( "Eco2.User" ); break; case Edge_Cuts: txt = wxT( "Edge.Cuts" ); break; - case Margin: txt = wxT( "Margin" ); break; - // Footprint - case F_CrtYd: txt = wxT( "F.CrtYd" ); break; - case B_CrtYd: txt = wxT( "B.CrtYd" ); break; - case F_Fab: txt = wxT( "F.Fab" ); break; - case B_Fab: txt = wxT( "B.Fab" ); break; + // Pcbnew konws some oter layers. But any other layer is not suitable for export. - default: - wxASSERT_MSG( 0, wxT( "aLayerId out of range" ) ); - txt = wxT( "BAD INDEX!" ); break; + default: // Sentinel + txt = wxT( "" ); break; } return wxString( txt ); diff --git a/gerbview/export_to_pcbnew.cpp b/gerbview/export_to_pcbnew.cpp index f428f8d76f..59ebce744f 100644 --- a/gerbview/export_to_pcbnew.cpp +++ b/gerbview/export_to_pcbnew.cpp @@ -46,7 +46,6 @@ // Imported function extern const wxString GetPCBDefaultLayerName( LAYER_NUM aLayerNumber ); -#define TO_PCB_UNIT( x ) ( x / IU_PER_MM) /* A helper class to export a Gerber set of files to Pcbnew */ @@ -137,6 +136,15 @@ private: * Write a very basic header to the board file */ void writePcbHeader( LAYER_NUM* aLayerLookUpTable ); + + /** In Pcbnew files units are mm for coordinates. + * So MapToPcbUnits converts internal gerbview to mm any pcbnew value + * @param aValue is a coordinate value to convert in mm + */ + double MapToPcbUnits( int aValue ) + { + return aValue / IU_PER_MM; + } }; @@ -362,11 +370,11 @@ void GBR_TO_PCB_EXPORTER::writeCopperLineItem( wxPoint& aStart, wxPoint& aEnd, int aWidth, LAYER_NUM aLayer ) { fprintf( m_fp, "(segment (start %s %s) (end %s %s) (width %s) (layer %s) (net 0))\n", - Double2Str( TO_PCB_UNIT(aStart.x) ).c_str(), - Double2Str( TO_PCB_UNIT(aStart.y) ).c_str(), - Double2Str( TO_PCB_UNIT(aEnd.x) ).c_str(), - Double2Str( TO_PCB_UNIT(aEnd.y) ).c_str(), - Double2Str( TO_PCB_UNIT( aWidth ) ).c_str(), + Double2Str( MapToPcbUnits(aStart.x) ).c_str(), + Double2Str( MapToPcbUnits(aStart.y) ).c_str(), + Double2Str( MapToPcbUnits(aEnd.x) ).c_str(), + Double2Str( MapToPcbUnits(aEnd.y) ).c_str(), + Double2Str( MapToPcbUnits( aWidth ) ).c_str(), TO_UTF8( GetPCBDefaultLayerName( aLayer ) ) ); } @@ -447,9 +455,9 @@ void GBR_TO_PCB_EXPORTER::export_flashed_copper_item( GERBER_DRAW_ITEM* aGbrItem // Layers are Front to Back fprintf( m_fp, " (via (at %s %s) (size %s)", - Double2Str( TO_PCB_UNIT(via_pos.x) ).c_str(), - Double2Str( TO_PCB_UNIT(via_pos.y) ).c_str(), - Double2Str( TO_PCB_UNIT( width ) ).c_str() ); + Double2Str( MapToPcbUnits(via_pos.x) ).c_str(), + Double2Str( MapToPcbUnits(via_pos.y) ).c_str(), + Double2Str( MapToPcbUnits( width ) ).c_str() ); fprintf( m_fp, " (layers %s %s))\n", TO_UTF8( GetPCBDefaultLayerName( F_Cu ) ), @@ -476,6 +484,9 @@ void GBR_TO_PCB_EXPORTER::writePcbHeader( LAYER_NUM* aLayerLookUpTable ) for( int ii = B_Adhes; ii < PCB_LAYER_ID_COUNT; ii++ ) { + if( GetPCBDefaultLayerName( ii ).IsEmpty() ) // Layer not available for export + continue; + fprintf( m_fp, " (%d %s user)\n", ii, TO_UTF8( GetPCBDefaultLayerName( ii ) ) ); } @@ -489,35 +500,35 @@ void GBR_TO_PCB_EXPORTER::writePcbLineItem( bool aIsArc, wxPoint& aStart, wxPoin if( aIsArc && ( aAngle == 360.0 || aAngle == 0 ) ) { fprintf( m_fp, "(gr_circle (center %s %s) (end %s %s)(layer %s) (width %s))\n", - Double2Str( TO_PCB_UNIT(aStart.x) ).c_str(), - Double2Str( TO_PCB_UNIT(aStart.y) ).c_str(), - Double2Str( TO_PCB_UNIT(aEnd.x) ).c_str(), - Double2Str( TO_PCB_UNIT(aEnd.y) ).c_str(), + Double2Str( MapToPcbUnits(aStart.x) ).c_str(), + Double2Str( MapToPcbUnits(aStart.y) ).c_str(), + Double2Str( MapToPcbUnits(aEnd.x) ).c_str(), + Double2Str( MapToPcbUnits(aEnd.y) ).c_str(), TO_UTF8( GetPCBDefaultLayerName( aLayer ) ), - Double2Str( TO_PCB_UNIT( aWidth ) ).c_str() + Double2Str( MapToPcbUnits( aWidth ) ).c_str() ); } else if( aIsArc ) { fprintf( m_fp, "(gr_arc (start %s %s) (end %s %s) (angle %s)(layer %s) (width %s))\n", - Double2Str( TO_PCB_UNIT(aStart.x) ).c_str(), - Double2Str( TO_PCB_UNIT(aStart.y) ).c_str(), - Double2Str( TO_PCB_UNIT(aEnd.x) ).c_str(), - Double2Str( TO_PCB_UNIT(aEnd.y) ).c_str(), + Double2Str( MapToPcbUnits(aStart.x) ).c_str(), + Double2Str( MapToPcbUnits(aStart.y) ).c_str(), + Double2Str( MapToPcbUnits(aEnd.x) ).c_str(), + Double2Str( MapToPcbUnits(aEnd.y) ).c_str(), Double2Str( aAngle ).c_str(), TO_UTF8( GetPCBDefaultLayerName( aLayer ) ), - Double2Str( TO_PCB_UNIT( aWidth ) ).c_str() + Double2Str( MapToPcbUnits( aWidth ) ).c_str() ); } else { fprintf( m_fp, "(gr_line (start %s %s) (end %s %s)(layer %s) (width %s))\n", - Double2Str( TO_PCB_UNIT(aStart.x) ).c_str(), - Double2Str( TO_PCB_UNIT(aStart.y) ).c_str(), - Double2Str( TO_PCB_UNIT(aEnd.x) ).c_str(), - Double2Str( TO_PCB_UNIT(aEnd.y) ).c_str(), + Double2Str( MapToPcbUnits(aStart.x) ).c_str(), + Double2Str( MapToPcbUnits(aStart.y) ).c_str(), + Double2Str( MapToPcbUnits(aEnd.x) ).c_str(), + Double2Str( MapToPcbUnits(aEnd.y) ).c_str(), TO_UTF8( GetPCBDefaultLayerName( aLayer ) ), - Double2Str( TO_PCB_UNIT( aWidth ) ).c_str() + Double2Str( MapToPcbUnits( aWidth ) ).c_str() ); } } @@ -547,8 +558,8 @@ void GBR_TO_PCB_EXPORTER::writePcbPolygonItem( GERBER_DRAW_ITEM* aGbrItem, LAYER } fprintf( m_fp, " (xy %s %s)", - Double2Str( TO_PCB_UNIT( poly.Point( ii ).x ) ).c_str(), - Double2Str( TO_PCB_UNIT( -poly.Point( ii ).y ) ).c_str() ); + Double2Str( MapToPcbUnits( poly.Point( ii ).x ) ).c_str(), + Double2Str( MapToPcbUnits( -poly.Point( ii ).y ) ).c_str() ); } fprintf( m_fp, ")" );