~jeru-sheng/kicad/kicad-feature

« back to all changes in this revision

Viewing changes to gerbview/tool_gerber.cpp

  • Committer: plyatov
  • Date: 2007-05-06 16:03:28 UTC
  • Revision ID: svn-v4:16bec504-3128-0410-b3e8-8e38c2123bca:trunk/kicad:13
Initial import of KiCad.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
        /***********************************************/
 
2
        /*      buildmnu.h: construction du menu principal */
 
3
        /***********************************************/
 
4
 
 
5
#include "fctsys.h"
 
6
 
 
7
#include "common.h"
 
8
#include "gerbview.h"
 
9
#include "pcbplot.h"
 
10
 
 
11
#include "protos.h"
 
12
 
 
13
#define BITMAP wxBitmap
 
14
 
 
15
#include "bitmaps.h"
 
16
 
 
17
#include "id.h"
 
18
 
 
19
 
 
20
/***********************************************/
 
21
void WinEDA_GerberFrame::ReCreateHToolbar(void)
 
22
/***********************************************/
 
23
{
 
24
int layer = 0;
 
25
GERBER_Descr * gerber_layer     = NULL;
 
26
int ii;
 
27
 
 
28
        // delete and recreate the toolbar
 
29
        if ( m_HToolBar  != NULL ) return;
 
30
 
 
31
        if ( GetScreen() )
 
32
                {
 
33
                layer = GetScreen()->m_Active_Layer;
 
34
                gerber_layer = g_GERBER_Descr_List[layer];
 
35
                }
 
36
 
 
37
        m_HToolBar = new WinEDA_Toolbar(TOOLBAR_MAIN, this, ID_H_TOOLBAR, TRUE);
 
38
        SetToolBar(m_HToolBar);
 
39
 
 
40
        // Set up toolbar
 
41
        m_HToolBar->AddTool(ID_NEW_BOARD, BITMAP(new_xpm),
 
42
                                wxNullBitmap, FALSE,
 
43
                                -1, -1, (wxObject *) NULL,
 
44
                                _("New World") );
 
45
 
 
46
        m_HToolBar->AddTool(ID_LOAD_FILE, BITMAP(open_xpm),
 
47
                                        wxNullBitmap, FALSE,
 
48
                                        -1, -1, (wxObject *) NULL,
 
49
                                        _("Open existing Layer"));
 
50
 
 
51
#if 0
 
52
        m_HToolBar->AddTool(ID_SAVE_PROJECT, BITMAP(save_button),
 
53
                                        wxNullBitmap, FALSE,
 
54
                                        -1, -1, (wxObject *) NULL,
 
55
                                        _("Save World"));
 
56
 
 
57
        m_HToolBar->AddSeparator();
 
58
        m_HToolBar->AddTool(ID_SHEET_SET, BITMAP(sheetset_xpm),
 
59
                                        wxNullBitmap,
 
60
                                        FALSE,
 
61
                                        -1, -1, (wxObject *) NULL,
 
62
                                        _("page settings (size, texts)"));
 
63
 
 
64
#endif
 
65
 
 
66
        m_HToolBar->AddSeparator();
 
67
 
 
68
#if 0
 
69
        m_HToolBar->AddTool(wxID_CUT, BITMAP(cut_button),
 
70
                                        wxNullBitmap,
 
71
                                        FALSE,
 
72
                                        -1, -1, (wxObject *) NULL,
 
73
                                        _("Cut selected item"));
 
74
 
 
75
        m_HToolBar->AddTool(wxID_COPY, BITMAP(copy_button),
 
76
                                        wxNullBitmap, FALSE,
 
77
                                        -1, -1, (wxObject *) NULL,
 
78
                                        _("Copy selected item"));
 
79
 
 
80
        m_HToolBar->AddTool(wxID_PASTE, BITMAP(paste_xpm),
 
81
                                        wxNullBitmap,
 
82
                                        FALSE,
 
83
                                        -1, -1, (wxObject *) NULL,
 
84
                                        _("Paste"));
 
85
#endif
 
86
 
 
87
        m_HToolBar->AddTool(ID_UNDO_BUTT, BITMAP(undelete_xpm),
 
88
                                        wxNullBitmap,
 
89
                                        FALSE,
 
90
                                        -1, -1, (wxObject *) NULL,
 
91
                                        _("Undelete"));
 
92
 
 
93
        m_HToolBar->AddSeparator();
 
94
        m_HToolBar->AddTool(ID_GEN_PRINT, BITMAP(print_button),
 
95
                                        wxNullBitmap,
 
96
                                        FALSE,
 
97
                                        -1, -1, (wxObject *) NULL,
 
98
                                        _("Print World"));
 
99
 
 
100
        m_HToolBar->AddSeparator();
 
101
        m_HToolBar->AddTool(ID_ZOOM_PLUS_BUTT, BITMAP(zoom_in_xpm),
 
102
                                        wxNullBitmap,
 
103
                                        FALSE,
 
104
                                        -1, -1, (wxObject *) NULL,
 
105
                                        _("zoom + (F1)"));
 
106
 
 
107
        m_HToolBar->AddTool(ID_ZOOM_MOINS_BUTT, BITMAP(zoom_out_xpm),
 
108
                                        wxNullBitmap,
 
109
                                        FALSE,
 
110
                                        -1, -1, (wxObject *) NULL,
 
111
                                        _("zoom - (F2)"));
 
112
 
 
113
        m_HToolBar->AddTool(ID_ZOOM_REDRAW_BUTT, BITMAP(repaint_xpm),
 
114
                                        wxNullBitmap,
 
115
                                        FALSE,
 
116
                                        -1, -1, (wxObject *) NULL,
 
117
                                        _("redraw (F3)"));
 
118
 
 
119
        m_HToolBar->AddTool(ID_ZOOM_PAGE_BUTT, BITMAP(zoom_optimal_xpm),
 
120
                                        wxNullBitmap,
 
121
                                        FALSE,
 
122
                                        -1, -1, (wxObject *) NULL,
 
123
                                        _("auto zoom"));
 
124
 
 
125
        m_HToolBar->AddSeparator();
 
126
        m_HToolBar->AddTool(ID_FIND_ITEMS, BITMAP(find_xpm),
 
127
                                        wxNullBitmap,
 
128
                                        FALSE,
 
129
                                        -1, -1, (wxObject *) NULL,
 
130
                                        _("Find D Codes"));
 
131
 
 
132
wxArrayString choices;
 
133
        m_HToolBar->AddSeparator();
 
134
        for ( ii = 0; ii < 32 ; ii ++ )
 
135
        {
 
136
                wxString msg;
 
137
                msg = _("Layer "); msg << ii+1;
 
138
                choices.Add(msg);
 
139
        }
 
140
        m_SelLayerBox = new WinEDAChoiceBox(m_HToolBar, ID_TOOLBARH_PCB_SELECT_LAYER,
 
141
                                        wxDefaultPosition, wxSize(150, -1), choices);
 
142
        m_SelLayerBox->SetSelection( GetScreen()->m_Active_Layer );
 
143
        m_HToolBar->AddControl(m_SelLayerBox);
 
144
 
 
145
        m_HToolBar->AddSeparator();
 
146
        choices.Clear();
 
147
        choices.Add( _("No tool"));
 
148
        for ( ii = 0; ii < MAX_TOOLS ; ii ++ )
 
149
        {
 
150
                wxString msg;
 
151
                msg = _("Tool "); msg << ii + FIRST_DCODE;
 
152
                choices.Add(msg);
 
153
        }
 
154
        m_SelLayerTool = new WinEDAChoiceBox(m_HToolBar, ID_TOOLBARH_GERBER_SELECT_TOOL,
 
155
                                        wxDefaultPosition, wxSize(150, -1), choices);
 
156
        m_HToolBar->AddControl(m_SelLayerTool);
 
157
 
 
158
 
 
159
        // after adding the buttons to the toolbar, must call Realize() to reflect
 
160
        // the changes
 
161
        m_HToolBar->Realize();
 
162
        SetToolbars();
 
163
}
 
164
 
 
165
 
 
166
/**********************************************/
 
167
void WinEDA_GerberFrame::ReCreateVToolbar(void)
 
168
/**********************************************/
 
169
{
 
170
        if( m_VToolBar ) return;
 
171
 
 
172
        m_VToolBar = new WinEDA_Toolbar(TOOLBAR_TOOL, this, ID_V_TOOLBAR, FALSE);
 
173
 
 
174
        // Set up toolbar
 
175
        m_VToolBar->AddTool(ID_NO_SELECT_BUTT,
 
176
                                BITMAP(cursor_xpm),
 
177
                                wxNullBitmap, TRUE,
 
178
                                        -1, -1, (wxObject *) NULL );
 
179
        m_VToolBar->ToggleTool(ID_NO_SELECT_BUTT,TRUE);
 
180
 
 
181
#if 0
 
182
        m_VToolBar->AddSeparator();
 
183
        m_VToolBar->AddTool(ID_COMPONENT_BUTT,
 
184
                                BITMAP(component_button),
 
185
                                wxNullBitmap, TRUE,
 
186
                                        -1, -1, (wxObject *) NULL,
 
187
                                        _("Add Flashes"));
 
188
 
 
189
        m_VToolBar->AddTool(ID_BUS_BUTT,
 
190
                                BITMAP(bus_button),
 
191
                                wxNullBitmap, TRUE,
 
192
                                        -1, -1, (wxObject *) NULL,
 
193
                                        _("Add Lines"));
 
194
 
 
195
        m_VToolBar->AddTool(ID_JUNCTION_BUTT,
 
196
                                BITMAP(junction_xpm),
 
197
                                wxNullBitmap, TRUE,
 
198
                                        -1, -1, (wxObject *) NULL,
 
199
                                        _("Add Mires"));
 
200
 
 
201
        m_VToolBar->AddSeparator();
 
202
        m_VToolBar->AddTool(ID_TEXT_COMMENT_BUTT,
 
203
                                BITMAP(tool_text_xpm),
 
204
                                wxNullBitmap, TRUE,
 
205
                                        -1, -1, (wxObject *) NULL,
 
206
                                        _("Add Text"));
 
207
 
 
208
#endif
 
209
        m_VToolBar->AddSeparator();
 
210
        m_VToolBar->AddTool(ID_PCB_DELETE_ITEM_BUTT,
 
211
                                BITMAP(delete_body_xpm),
 
212
                                wxNullBitmap, TRUE,
 
213
                                        -1, -1, (wxObject *) NULL,
 
214
                                        _("Delete items"));
 
215
 
 
216
        m_VToolBar->Realize();
 
217
        SetToolbars();
 
218
}
 
219
 
 
220
 
 
221
/************************************************/
 
222
void WinEDA_GerberFrame::ReCreateOptToolbar(void)
 
223
/************************************************/
 
224
{
 
225
        if ( m_OptionsToolBar ) return;
 
226
 
 
227
        // creation du tool bar options
 
228
        m_OptionsToolBar = new WinEDA_Toolbar(TOOLBAR_OPTION, this, ID_OPT_TOOLBAR, FALSE);
 
229
 
 
230
        m_OptionsToolBar->AddTool(ID_TB_OPTIONS_SHOW_GRID, BITMAP(grid_xpm),
 
231
                                        wxNullBitmap,
 
232
                                        TRUE,
 
233
                                        -1, -1, (wxObject *) NULL,
 
234
                                        _("Display Grid OFF"));
 
235
 
 
236
        m_OptionsToolBar->AddTool(ID_TB_OPTIONS_SHOW_POLAR_COORD, BITMAP(polar_coord_xpm),
 
237
                                        wxNullBitmap,
 
238
                                        TRUE,
 
239
                                        -1, -1, (wxObject *) NULL,
 
240
                                        _("Display Polar Coord ON"));
 
241
 
 
242
        m_OptionsToolBar->AddTool(ID_TB_OPTIONS_SELECT_UNIT_INCH, wxEmptyString,
 
243
                                        BITMAP(unit_inch_xpm),
 
244
                                        _("Units = Inch"), wxITEM_CHECK );
 
245
 
 
246
        m_OptionsToolBar->AddTool(ID_TB_OPTIONS_SELECT_UNIT_MM, wxEmptyString,
 
247
                                        BITMAP(unit_mm_xpm),
 
248
                                        _("Units = mm"), wxITEM_CHECK );
 
249
 
 
250
        m_OptionsToolBar->AddTool(ID_TB_OPTIONS_SELECT_CURSOR, BITMAP(cursor_shape_xpm),
 
251
                                        wxNullBitmap,
 
252
                                        TRUE,
 
253
                                        -1, -1, (wxObject *) NULL,
 
254
                                        _("Change Cursor Shape"));
 
255
 
 
256
        m_OptionsToolBar->AddSeparator();
 
257
        m_OptionsToolBar->AddTool(ID_TB_OPTIONS_SHOW_PADS_SKETCH,
 
258
                                        BITMAP(pad_sketch_xpm),
 
259
                                        wxNullBitmap,
 
260
                                        TRUE,
 
261
                                        -1, -1, (wxObject *) NULL,
 
262
                                        _("Show Spots Sketch"));
 
263
 
 
264
        m_OptionsToolBar->AddTool(ID_TB_OPTIONS_SHOW_TRACKS_SKETCH,
 
265
                                        BITMAP(showtrack_xpm),
 
266
                                        wxNullBitmap,
 
267
                                        TRUE,
 
268
                                        -1, -1, (wxObject *) NULL,
 
269
                                        _("Show Lines Sketch"));
 
270
 
 
271
        m_OptionsToolBar->AddTool(ID_TB_OPTIONS_SHOW_DCODES,
 
272
                                        BITMAP(show_dcodenumber_xpm),
 
273
                                        wxNullBitmap,
 
274
                                        TRUE,
 
275
                                        -1, -1, (wxObject *) NULL,
 
276
                                        _("Show dcode number"));
 
277
 
 
278
        m_OptionsToolBar->Realize();
 
279
 
 
280
        SetToolbars();
 
281
}
 
282
 
 
283
 
 
284
 
 
285