Move AddMenuItem inline functions outside wxstruct.h in a new file (menu_helpers.h)
Enhancements in AddMenuItem (that accepts now a menu type) Partial use of the Edwin van den Oetelaar's patch (patch not fully working or correct)
This commit is contained in:
parent
f2f0f66a50
commit
8f62c6aa05
|
@ -189,13 +189,9 @@ Info_3D_Visu::Info_3D_Visu()
|
|||
|
||||
m_Layers = 1;
|
||||
m_BoardSettings = NULL;
|
||||
m_Draw3DAxis = true;
|
||||
m_Draw3DModule = true;
|
||||
m_Draw3DZone = true;
|
||||
m_Draw3DComments = true;
|
||||
m_Draw3DDrawings = true;
|
||||
m_Draw3DEco1 = true;
|
||||
m_Draw3DEco2 = true;
|
||||
// default all special item layers Visible
|
||||
for (ii=0; ii< FL_LAST; ii++)
|
||||
m_DrawFlags[ii]=true;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -206,7 +206,7 @@ GLuint EDA_3D_CANVAS::CreateDrawGL_List()
|
|||
glColorMaterial( GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE );
|
||||
|
||||
// draw axis
|
||||
if( g_Parm_3D_Visu.m_Draw3DAxis )
|
||||
if (g_Parm_3D_Visu.m_DrawFlags[g_Parm_3D_Visu.FL_AXIS])
|
||||
{
|
||||
glEnable( GL_COLOR_MATERIAL );
|
||||
SetGLColor( WHITE );
|
||||
|
@ -223,37 +223,7 @@ GLuint EDA_3D_CANVAS::CreateDrawGL_List()
|
|||
}
|
||||
|
||||
// Draw epoxy limits (do not use, works and test in progress)
|
||||
#if 0
|
||||
glEnable( GL_FOG );
|
||||
GLfloat param;
|
||||
|
||||
// param = GL_LINEAR;
|
||||
// glFogfv(GL_FOG_MODE, & param);
|
||||
param = 0.2;
|
||||
glFogfv( GL_FOG_DENSITY, ¶m );
|
||||
param = g_Parm_3D_Visu.m_LayerZcoord[15];
|
||||
glFogfv( GL_FOG_END, ¶m );
|
||||
glBegin( GL_QUADS );
|
||||
SetGLColor( g_Parm_3D_Visu.m_BoardSettings->m_LayerColor[LAYER_N_FRONT] );
|
||||
double sx = DataScale3D * g_Parm_3D_Visu.m_BoardSize.x / 2;
|
||||
double sy = DataScale3D * g_Parm_3D_Visu.m_BoardSize.y / 2;
|
||||
double zpos = g_Parm_3D_Visu.m_LayerZcoord[15];
|
||||
glNormal3f( 0.0, 0.0, 1.0 ); // Normal is Z axis
|
||||
sx = sy = 0.5;
|
||||
glVertex3f( -sx, -sy, zpos );
|
||||
glVertex3f( -sx, sy, zpos );
|
||||
glVertex3f( sx, sy, zpos );
|
||||
glVertex3f( sx, -sy, zpos );
|
||||
glEnd();
|
||||
glBegin( GL_QUADS );
|
||||
SetGLColor( g_Parm_3D_Visu.m_BoardSettings->m_LayerColor[LAYER_N_BACK] );
|
||||
glNormal3f( 0.0, 0.0, -1.0 ); // Normal is -Z axis
|
||||
glVertex3f( -sx, -sy, 0 );
|
||||
glVertex3f( -sx, sy, 0 );
|
||||
glVertex3f( sx, sy, 0 );
|
||||
glVertex3f( sx, -sy, 0 );
|
||||
glEnd();
|
||||
#endif
|
||||
// TODO
|
||||
|
||||
// move the board in order to draw it with its center at 0,0 3D coordinates
|
||||
glTranslatef( -g_Parm_3D_Visu.m_BoardPos.x * g_Parm_3D_Visu.m_BoardScale,
|
||||
|
@ -271,7 +241,7 @@ GLuint EDA_3D_CANVAS::CreateDrawGL_List()
|
|||
Draw3D_Track( track );
|
||||
}
|
||||
|
||||
if( g_Parm_3D_Visu.m_Draw3DZone )
|
||||
if (g_Parm_3D_Visu.m_DrawFlags[g_Parm_3D_Visu.FL_ZONE])
|
||||
{
|
||||
// Draw segments used to fill copper areas. outdated!
|
||||
for( segzone = pcb->m_Zone; segzone != NULL; segzone = segzone->Next() )
|
||||
|
@ -707,7 +677,7 @@ void MODULE::Draw3D( EDA_3D_CANVAS* glcanvas )
|
|||
S3D_MASTER* Struct3D = m_3D_Drawings;
|
||||
bool As3dShape = false;
|
||||
|
||||
if( g_Parm_3D_Visu.m_Draw3DModule )
|
||||
if (g_Parm_3D_Visu.m_DrawFlags[g_Parm_3D_Visu.FL_MODULE])
|
||||
{
|
||||
glPushMatrix();
|
||||
|
||||
|
@ -1430,23 +1400,33 @@ void EDA_3D_CANVAS::Draw3D_Polygon( std::vector<wxPoint>& aCornersList, double a
|
|||
|
||||
static int Get3DLayerEnable( int act_layer )
|
||||
{
|
||||
bool enablelayer;
|
||||
int i = -1;
|
||||
// see if layer needs to be shown
|
||||
// check the flags
|
||||
switch (act_layer)
|
||||
{
|
||||
case DRAW_N:
|
||||
i=g_Parm_3D_Visu.FL_DRAWINGS;
|
||||
break;
|
||||
|
||||
enablelayer = true;
|
||||
case COMMENT_N:
|
||||
i=g_Parm_3D_Visu.FL_COMMENTS;
|
||||
break;
|
||||
|
||||
if( act_layer == DRAW_N && !g_Parm_3D_Visu.m_Draw3DDrawings )
|
||||
enablelayer = false;
|
||||
case ECO1_N:
|
||||
i=g_Parm_3D_Visu.FL_ECO1;
|
||||
break;
|
||||
|
||||
if( act_layer == COMMENT_N && !g_Parm_3D_Visu.m_Draw3DComments )
|
||||
enablelayer = false;
|
||||
case ECO2_N:
|
||||
i=g_Parm_3D_Visu.FL_ECO2;
|
||||
break;
|
||||
}
|
||||
// the layer was not a layer with a flag, so show it
|
||||
if (i < 0)
|
||||
return true;
|
||||
|
||||
if( act_layer == ECO1_N && !g_Parm_3D_Visu.m_Draw3DEco1 )
|
||||
enablelayer = false;
|
||||
|
||||
if( act_layer == ECO2_N && !g_Parm_3D_Visu.m_Draw3DEco2 )
|
||||
enablelayer = false;
|
||||
|
||||
return enablelayer;
|
||||
// if the layer has a flag, return the flag
|
||||
return g_Parm_3D_Visu.m_DrawFlags[i];
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -222,8 +222,10 @@ void EDA_3D_FRAME::RedrawActiveWindow( wxDC* DC, bool EraseBg )
|
|||
void EDA_3D_FRAME::Process_Special_Functions( wxCommandEvent& event )
|
||||
{
|
||||
#define ROT_ANGLE 10.0
|
||||
int id = event.GetId();
|
||||
bool isChecked = event.IsChecked();
|
||||
|
||||
switch( event.GetId() )
|
||||
switch( id )
|
||||
{
|
||||
case ID_RELOAD3D_BOARD:
|
||||
NewDisplay();
|
||||
|
@ -285,31 +287,38 @@ void EDA_3D_FRAME::Process_Special_Functions( wxCommandEvent& event )
|
|||
return;
|
||||
|
||||
case ID_MENU3D_AXIS_ONOFF:
|
||||
Set3DAxisOnOff();
|
||||
g_Parm_3D_Visu.m_DrawFlags[g_Parm_3D_Visu.FL_AXIS] = isChecked;
|
||||
NewDisplay();
|
||||
return;
|
||||
|
||||
case ID_MENU3D_MODULE_ONOFF:
|
||||
Set3DModuleOnOff();
|
||||
g_Parm_3D_Visu.m_DrawFlags[g_Parm_3D_Visu.FL_MODULE] = isChecked;
|
||||
NewDisplay();
|
||||
return;
|
||||
|
||||
case ID_MENU3D_ZONE_ONOFF:
|
||||
Set3DZoneOnOff();
|
||||
g_Parm_3D_Visu.m_DrawFlags[g_Parm_3D_Visu.FL_ZONE] = isChecked;
|
||||
NewDisplay();
|
||||
return;
|
||||
|
||||
case ID_MENU3D_COMMENTS_ONOFF:
|
||||
Set3DCommentsOnOff();
|
||||
g_Parm_3D_Visu.m_DrawFlags[g_Parm_3D_Visu.FL_COMMENTS] = isChecked;
|
||||
NewDisplay();
|
||||
return;
|
||||
|
||||
case ID_MENU3D_DRAWINGS_ONOFF:
|
||||
Set3DDrawingsOnOff();
|
||||
g_Parm_3D_Visu.m_DrawFlags[g_Parm_3D_Visu.FL_DRAWINGS] = isChecked;
|
||||
NewDisplay();
|
||||
return;
|
||||
|
||||
case ID_MENU3D_ECO1_ONOFF:
|
||||
Set3DEco1OnOff();
|
||||
g_Parm_3D_Visu.m_DrawFlags[g_Parm_3D_Visu.FL_ECO1] = isChecked;
|
||||
NewDisplay();
|
||||
return;
|
||||
|
||||
case ID_MENU3D_ECO2_ONOFF:
|
||||
Set3DEco2OnOff();
|
||||
g_Parm_3D_Visu.m_DrawFlags[g_Parm_3D_Visu.FL_ECO2] = isChecked;
|
||||
NewDisplay();
|
||||
return;
|
||||
|
||||
default:
|
||||
|
@ -367,79 +376,3 @@ void EDA_3D_FRAME::Set3DBgColor()
|
|||
NewDisplay();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void EDA_3D_FRAME::Set3DAxisOnOff()
|
||||
{
|
||||
if( g_Parm_3D_Visu.m_Draw3DAxis )
|
||||
g_Parm_3D_Visu.m_Draw3DAxis = false;
|
||||
else
|
||||
g_Parm_3D_Visu.m_Draw3DAxis = true;
|
||||
|
||||
NewDisplay();
|
||||
}
|
||||
|
||||
|
||||
void EDA_3D_FRAME::Set3DModuleOnOff()
|
||||
{
|
||||
if( g_Parm_3D_Visu.m_Draw3DModule )
|
||||
g_Parm_3D_Visu.m_Draw3DModule = false;
|
||||
else
|
||||
g_Parm_3D_Visu.m_Draw3DModule = true;
|
||||
|
||||
NewDisplay();
|
||||
}
|
||||
|
||||
|
||||
void EDA_3D_FRAME::Set3DZoneOnOff()
|
||||
{
|
||||
if( g_Parm_3D_Visu.m_Draw3DZone )
|
||||
g_Parm_3D_Visu.m_Draw3DZone = false;
|
||||
else
|
||||
g_Parm_3D_Visu.m_Draw3DZone = true;
|
||||
NewDisplay();
|
||||
}
|
||||
|
||||
|
||||
void EDA_3D_FRAME::Set3DCommentsOnOff()
|
||||
{
|
||||
if( g_Parm_3D_Visu.m_Draw3DComments )
|
||||
g_Parm_3D_Visu.m_Draw3DComments = false;
|
||||
else
|
||||
g_Parm_3D_Visu.m_Draw3DComments = true;
|
||||
|
||||
NewDisplay();
|
||||
}
|
||||
|
||||
|
||||
void EDA_3D_FRAME::Set3DDrawingsOnOff()
|
||||
{
|
||||
if( g_Parm_3D_Visu.m_Draw3DDrawings )
|
||||
g_Parm_3D_Visu.m_Draw3DDrawings = false;
|
||||
else
|
||||
g_Parm_3D_Visu.m_Draw3DDrawings = true;
|
||||
|
||||
NewDisplay();
|
||||
}
|
||||
|
||||
|
||||
void EDA_3D_FRAME::Set3DEco1OnOff()
|
||||
{
|
||||
if( g_Parm_3D_Visu.m_Draw3DEco1 )
|
||||
g_Parm_3D_Visu.m_Draw3DEco1 = false;
|
||||
else
|
||||
g_Parm_3D_Visu.m_Draw3DEco1 = true;
|
||||
|
||||
NewDisplay();
|
||||
}
|
||||
|
||||
|
||||
void EDA_3D_FRAME::Set3DEco2OnOff()
|
||||
{
|
||||
if( g_Parm_3D_Visu.m_Draw3DEco2 )
|
||||
g_Parm_3D_Visu.m_Draw3DEco2 = false;
|
||||
else
|
||||
g_Parm_3D_Visu.m_Draw3DEco2 = true;
|
||||
|
||||
NewDisplay();
|
||||
}
|
||||
|
|
|
@ -30,6 +30,7 @@
|
|||
#include <fctsys.h>
|
||||
|
||||
#include <3d_viewer.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
|
||||
void EDA_3D_FRAME::ReCreateHToolbar()
|
||||
|
@ -132,13 +133,13 @@ void EDA_3D_FRAME::ReCreateMenuBar()
|
|||
bool full_options = true;
|
||||
|
||||
// If called from the display frame of CvPcb, only some options are relevant
|
||||
if( Parent()->GetName() == wxT( "CmpFrame" ) )
|
||||
// Called from CvPcb: do not display all options
|
||||
if( Parent()->GetName() == wxT( "CmpFrame" ) ) {
|
||||
full_options = false;
|
||||
}
|
||||
|
||||
wxMenuBar* menuBar = new wxMenuBar;
|
||||
|
||||
wxMenu* fileMenu = new wxMenu;
|
||||
wxMenuBar* menuBar = new wxMenuBar;
|
||||
wxMenu* fileMenu = new wxMenu;
|
||||
wxMenu* prefsMenu = new wxMenu;
|
||||
|
||||
menuBar->Append( fileMenu, _( "&File" ) );
|
||||
|
||||
|
@ -153,34 +154,43 @@ void EDA_3D_FRAME::ReCreateMenuBar()
|
|||
fileMenu->AppendSeparator();
|
||||
fileMenu->Append( wxID_EXIT, _( "&Exit" ) );
|
||||
|
||||
wxMenu* referencesMenu = new wxMenu;
|
||||
menuBar->Append( referencesMenu, _( "&Preferences" ) );
|
||||
menuBar->Append( prefsMenu, _( "&Preferences" ) );
|
||||
|
||||
AddMenuItem( referencesMenu, ID_MENU3D_BGCOLOR_SELECTION,
|
||||
AddMenuItem( prefsMenu, ID_MENU3D_BGCOLOR_SELECTION,
|
||||
_( "Choose background color" ), KiBitmap( palette_xpm ) );
|
||||
|
||||
AddMenuItem( referencesMenu, ID_MENU3D_AXIS_ONOFF,
|
||||
_( "3D Axis On/Off" ), KiBitmap( axis3d_front_xpm ) );
|
||||
wxMenuItem* item;
|
||||
item = AddMenuItem( prefsMenu, ID_MENU3D_AXIS_ONOFF,
|
||||
_( "Show 3D &Axis" ), KiBitmap( axis3d_front_xpm ), wxITEM_CHECK );
|
||||
item->Check(g_Parm_3D_Visu.m_DrawFlags[g_Parm_3D_Visu.FL_AXIS]);
|
||||
|
||||
|
||||
if( full_options )
|
||||
{
|
||||
AddMenuItem( referencesMenu, ID_MENU3D_MODULE_ONOFF,
|
||||
_( "3D Footprints Shapes On/Off" ), KiBitmap( shape_3d_xpm ) );
|
||||
item = AddMenuItem( prefsMenu, ID_MENU3D_MODULE_ONOFF,
|
||||
_( "Show 3D F&ootprints" ), KiBitmap( shape_3d_xpm ), wxITEM_CHECK );
|
||||
item->Check(g_Parm_3D_Visu.m_DrawFlags[g_Parm_3D_Visu.FL_MODULE]);
|
||||
|
||||
AddMenuItem( referencesMenu, ID_MENU3D_ZONE_ONOFF,
|
||||
_( "Zone Filling On/Off" ), KiBitmap( add_zone_xpm ) );
|
||||
item = AddMenuItem( prefsMenu, ID_MENU3D_ZONE_ONOFF,
|
||||
_( "Show Zone &Filling" ), KiBitmap( add_zone_xpm ), wxITEM_CHECK );
|
||||
item->Check(g_Parm_3D_Visu.m_DrawFlags[g_Parm_3D_Visu.FL_ZONE]);
|
||||
|
||||
AddMenuItem( referencesMenu, ID_MENU3D_COMMENTS_ONOFF,
|
||||
_( "Comments Layer On/Off" ), KiBitmap( edit_sheet_xpm ) );
|
||||
item = AddMenuItem( prefsMenu, ID_MENU3D_COMMENTS_ONOFF,
|
||||
_( "Show &Comments Layer" ), KiBitmap( edit_sheet_xpm ), wxITEM_CHECK );
|
||||
item->Check(g_Parm_3D_Visu.m_DrawFlags[g_Parm_3D_Visu.FL_COMMENTS]);
|
||||
|
||||
AddMenuItem( referencesMenu, ID_MENU3D_DRAWINGS_ONOFF,
|
||||
_( "Drawings Layer On/Off" ), KiBitmap( add_polygon_xpm ) );
|
||||
item = AddMenuItem( prefsMenu, ID_MENU3D_DRAWINGS_ONOFF,
|
||||
_( "Show &Drawings Layer" ), KiBitmap( add_polygon_xpm ), wxITEM_CHECK );
|
||||
item->Check(g_Parm_3D_Visu.m_DrawFlags[g_Parm_3D_Visu.FL_DRAWINGS]);
|
||||
|
||||
AddMenuItem( referencesMenu, ID_MENU3D_ECO1_ONOFF,
|
||||
_( "Eco1 Layer On/Off" ), KiBitmap( tools_xpm ) );
|
||||
item = AddMenuItem( prefsMenu, ID_MENU3D_ECO1_ONOFF,
|
||||
_( "Show Eco&1 Layer" ), KiBitmap( tools_xpm ), wxITEM_CHECK );
|
||||
item->Check(g_Parm_3D_Visu.m_DrawFlags[g_Parm_3D_Visu.FL_ECO1]);
|
||||
|
||||
item = AddMenuItem( prefsMenu, ID_MENU3D_ECO2_ONOFF,
|
||||
_( "Show Eco&2 Layer" ), KiBitmap( tools_xpm ), wxITEM_CHECK );
|
||||
item->Check(g_Parm_3D_Visu.m_DrawFlags[g_Parm_3D_Visu.FL_ECO2]);
|
||||
|
||||
AddMenuItem( referencesMenu, ID_MENU3D_ECO2_ONOFF,
|
||||
_( "Eco2 Layer On/Off" ), KiBitmap( tools_xpm ) );
|
||||
}
|
||||
|
||||
SetMenuBar( menuBar );
|
||||
|
|
|
@ -134,19 +134,20 @@ class SEGVIA;
|
|||
/* information needed to display 3D board */
|
||||
class Info_3D_Visu
|
||||
{
|
||||
|
||||
public:
|
||||
enum {
|
||||
FL_AXIS=0, FL_MODULE, FL_ZONE,
|
||||
FL_COMMENTS, FL_DRAWINGS, FL_ECO1, FL_ECO2,
|
||||
FL_LAST
|
||||
};
|
||||
|
||||
double m_Beginx, m_Beginy; /* position of mouse */
|
||||
double m_Quat[4]; /* orientation of object */
|
||||
double m_Rot[4]; /* man rotation of object */
|
||||
double m_Zoom; /* field of view in degrees */
|
||||
S3D_Color m_BgColor;
|
||||
bool m_Draw3DAxis;
|
||||
bool m_Draw3DModule;
|
||||
bool m_Draw3DZone;
|
||||
bool m_Draw3DComments;
|
||||
bool m_Draw3DDrawings;
|
||||
bool m_Draw3DEco1;
|
||||
bool m_Draw3DEco2;
|
||||
bool m_DrawFlags[FL_LAST]; /* show these special items */
|
||||
wxPoint m_BoardPos;
|
||||
wxSize m_BoardSize;
|
||||
int m_Layers;
|
||||
|
@ -320,14 +321,6 @@ public:
|
|||
|
||||
void NewDisplay();
|
||||
void Set3DBgColor();
|
||||
void Set3DAxisOnOff();
|
||||
void Set3DModuleOnOff();
|
||||
void Set3DPlaceOnOff();
|
||||
void Set3DZoneOnOff();
|
||||
void Set3DCommentsOnOff();
|
||||
void Set3DDrawingsOnOff();
|
||||
void Set3DEco1OnOff();
|
||||
void Set3DEco2OnOff();
|
||||
|
||||
DECLARE_EVENT_TABLE()
|
||||
};
|
||||
|
|
|
@ -38,6 +38,7 @@
|
|||
|
||||
#include <colors_selection.h>
|
||||
#include <build_version.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
#define KEYWORD_FRAME_POSX wxT( "Bmconverter_Pos_x" )
|
||||
#define KEYWORD_FRAME_POSY wxT( "Bmconverter_Pos_y" )
|
||||
|
|
|
@ -42,6 +42,7 @@
|
|||
#include <eda_doc.h>
|
||||
#include <wxstruct.h>
|
||||
#include <macros.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
|
||||
/// The default auto save interval is 10 minutes.
|
||||
|
|
|
@ -51,6 +51,7 @@
|
|||
#include <hotkeys_basic.h>
|
||||
#include <online_help.h>
|
||||
#include <gestfich.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
|
||||
static const wxChar* CommonConfigPath = wxT( "kicad_common" );
|
||||
|
@ -839,12 +840,9 @@ void EDA_APP::AddMenuLanguageList( wxMenu* MasterMenu )
|
|||
else
|
||||
label = wxGetTranslation( s_Language_List[ii].m_Lang_Label );
|
||||
|
||||
item = new wxMenuItem( menu,
|
||||
s_Language_List[ii].m_KI_Lang_Identifier,
|
||||
label, wxEmptyString, wxITEM_CHECK );
|
||||
|
||||
SETBITMAPS( s_Language_List[ii].m_Lang_Icon );
|
||||
menu->Append( item );
|
||||
AddMenuItem( menu, s_Language_List[ii].m_KI_Lang_Identifier,
|
||||
label, KiBitmap(s_Language_List[ii].m_Lang_Icon ),
|
||||
wxITEM_CHECK );
|
||||
}
|
||||
|
||||
AddMenuItem( MasterMenu, menu,
|
||||
|
|
|
@ -38,6 +38,7 @@
|
|||
#include <wxstruct.h>
|
||||
#include <macros.h>
|
||||
#include <dialog_hotkeys_editor.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
#include <wx/apptrait.h>
|
||||
#include <wx/stdpaths.h>
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
#include <wxstruct.h>
|
||||
#include <kicad_device_context.h>
|
||||
#include <hotkeys_basic.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
|
||||
void EDA_DRAW_FRAME::RedrawScreen( const wxPoint& aCenterPoint, bool aWarpPointer )
|
||||
|
|
|
@ -30,6 +30,7 @@
|
|||
#include <appl_wxstruct.h>
|
||||
#include <confirm.h>
|
||||
#include <gestfich.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
#include <cvpcb.h>
|
||||
#include <cvpcb_mainframe.h>
|
||||
|
|
|
@ -32,6 +32,7 @@
|
|||
#include <class_drawpanel.h>
|
||||
#include <eda_dde.h>
|
||||
#include <wxEeschemaStruct.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
#include <eeschema_id.h>
|
||||
#include <general.h>
|
||||
|
|
|
@ -13,11 +13,11 @@
|
|||
#include <class_sch_screen.h>
|
||||
|
||||
#include <general.h>
|
||||
#include <protos.h>
|
||||
#include <libeditframe.h>
|
||||
#include <class_libentry.h>
|
||||
#include <lib_pin.h>
|
||||
#include <lib_polyline.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
|
||||
/* functions to add commands and submenus depending on the item */
|
||||
|
|
|
@ -51,6 +51,7 @@
|
|||
#include <dialogs/dialog_libedit_dimensions.h>
|
||||
|
||||
#include <dialog_helpers.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
#include <boost/foreach.hpp>
|
||||
|
||||
|
|
|
@ -36,9 +36,10 @@
|
|||
#include <wxEeschemaStruct.h>
|
||||
|
||||
#include <general.h>
|
||||
#include <protos.h>
|
||||
//#include <protos.h>
|
||||
#include <eeschema_id.h>
|
||||
#include <hotkeys.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
#include <help_common_strings.h>
|
||||
|
||||
|
|
|
@ -36,6 +36,7 @@
|
|||
#include <hotkeys.h>
|
||||
|
||||
#include <help_common_strings.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
/**
|
||||
* @brief (Re)Create the menubar for the component editor frame
|
||||
|
|
|
@ -32,9 +32,9 @@
|
|||
#include <class_drawpanel.h>
|
||||
#include <confirm.h>
|
||||
#include <wxEeschemaStruct.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
#include <general.h>
|
||||
#include <protos.h>
|
||||
#include <sch_bus_entry.h>
|
||||
#include <sch_text.h>
|
||||
#include <sch_marker.h>
|
||||
|
|
|
@ -32,6 +32,7 @@
|
|||
#include <class_drawpanel.h>
|
||||
#include <confirm.h>
|
||||
#include <wxEeschemaStruct.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
#include <general.h>
|
||||
#include <hotkeys.h>
|
||||
|
|
|
@ -34,6 +34,7 @@
|
|||
#include <gerbview.h>
|
||||
#include <gerbview_id.h>
|
||||
#include <hotkeys.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
|
||||
void GERBVIEW_FRAME::ReCreateMenuBar( void )
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
#include <id.h>
|
||||
|
||||
#include <gerbview.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
|
||||
/* Prepare the right-click pullup menu.
|
||||
|
|
|
@ -0,0 +1,174 @@
|
|||
/**
|
||||
* @file menus_helpers.h
|
||||
* @brief Usefull macros and inline functions to create menus items
|
||||
* in menubars or popup menus
|
||||
*/
|
||||
|
||||
#include <bitmaps.h>
|
||||
|
||||
/**
|
||||
* Definition SETBITMAPS
|
||||
* is a macro use to add a bitmaps to check menu item.
|
||||
* @note Do not use with normal menu items or any platform other than Windows.
|
||||
* @param aImage is the image to add the menu item.
|
||||
*/
|
||||
#if defined( USE_IMAGES_IN_MENUS ) && defined( __WINDOWS__ )
|
||||
# define SETBITMAPS( aImage ) item->SetBitmaps( KiBitmap( apply_xpm ), KiBitmap( aImage ) )
|
||||
#else
|
||||
# define SETBITMAPS( aImage )
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Definition SETBITMAP
|
||||
* is a macro use to add a bitmap to a menu items.
|
||||
* @note Do not use with checked menu items.
|
||||
* @param aImage is the image to add the menu item.
|
||||
*/
|
||||
#if !defined( USE_IMAGES_IN_MENUS )
|
||||
# define SET_BITMAP( aImage )
|
||||
#else
|
||||
# define SET_BITMAP( aImage ) item->SetBitmap( aImage )
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Function AddMenuItem
|
||||
* is an inline helper function to create and insert a menu item with an icon
|
||||
* into \a aMenu
|
||||
*
|
||||
* @param aMenu is the menu to add the new item.
|
||||
* @param aId is the command ID for the new menu item.
|
||||
* @param aText is the string for the new menu item.
|
||||
* @param aImage is the icon to add to the new menu item.
|
||||
* @param aType is the type of menu :wxITEM_NORMAL (default), wxITEM_CHECK ...
|
||||
* @return a pointer to the new created wxMenuItem
|
||||
*/
|
||||
static inline wxMenuItem* AddMenuItem( wxMenu* aMenu,
|
||||
int aId,
|
||||
const wxString& aText,
|
||||
const wxBitmap& aImage,
|
||||
wxItemKind aType = wxITEM_NORMAL )
|
||||
{
|
||||
wxMenuItem* item;
|
||||
|
||||
item = new wxMenuItem( aMenu, aId, aText, wxEmptyString, aType );
|
||||
|
||||
if( aType == wxITEM_CHECK )
|
||||
{
|
||||
#if defined( USE_IMAGES_IN_MENUS ) && defined( __WINDOWS__ )
|
||||
item->SetBitmaps( KiBitmap( apply_xpm ), aImage );
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
SET_BITMAP( aImage );
|
||||
}
|
||||
|
||||
aMenu->Append( item );
|
||||
|
||||
return item;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Function AddMenuItem
|
||||
* is an inline helper function to create and insert a menu item with an icon
|
||||
* and a help message string into \a aMenu
|
||||
*
|
||||
* @param aMenu is the menu to add the new item.
|
||||
* @param aId is the command ID for the new menu item.
|
||||
* @param aText is the string for the new menu item.
|
||||
* @param aHelpText is the help message string for the new menu item.
|
||||
* @param aImage is the icon to add to the new menu item.
|
||||
* @param aType is the type of menu :wxITEM_NORMAL (default), wxITEM_CHECK ...
|
||||
* @return a pointer to the new created wxMenuItem
|
||||
*/
|
||||
static inline wxMenuItem* AddMenuItem( wxMenu* aMenu,
|
||||
int aId,
|
||||
const wxString& aText,
|
||||
const wxString& aHelpText,
|
||||
const wxBitmap& aImage,
|
||||
wxItemKind aType = wxITEM_NORMAL )
|
||||
{
|
||||
wxMenuItem* item;
|
||||
|
||||
item = new wxMenuItem( aMenu, aId, aText, aHelpText, aType );
|
||||
|
||||
if( aType == wxITEM_CHECK )
|
||||
{
|
||||
#if defined( USE_IMAGES_IN_MENUS ) && defined( __WINDOWS__ )
|
||||
item->SetBitmaps( KiBitmap( apply_xpm ), aImage );
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
SET_BITMAP( aImage );
|
||||
}
|
||||
|
||||
aMenu->Append( item );
|
||||
|
||||
return item;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Function AddMenuItem
|
||||
* is an inline helper function to create and insert a menu item with an icon
|
||||
* into \a aSubMenu in \a aMenu
|
||||
*
|
||||
* @param aMenu is the menu to add the new submenu item.
|
||||
* @param aSubMenu is the submenu to add the new menu.
|
||||
* @param aId is the command ID for the new menu item.
|
||||
* @param aText is the string for the new menu item.
|
||||
* @param aImage is the icon to add to the new menu item.
|
||||
* @return a pointer to the new created wxMenuItem
|
||||
*/
|
||||
static inline wxMenuItem* AddMenuItem( wxMenu* aMenu,
|
||||
wxMenu* aSubMenu,
|
||||
int aId,
|
||||
const wxString& aText,
|
||||
const wxBitmap& aImage )
|
||||
{
|
||||
wxMenuItem* item;
|
||||
|
||||
item = new wxMenuItem( aMenu, aId, aText );
|
||||
item->SetSubMenu( aSubMenu );
|
||||
|
||||
SET_BITMAP( aImage );
|
||||
|
||||
aMenu->Append( item );
|
||||
|
||||
return item;
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Function AddMenuItem
|
||||
* is an inline helper function to create and insert a menu item with an icon
|
||||
* and a help message string into \a aSubMenu in \a aMenu
|
||||
*
|
||||
* @param aMenu is the menu to add the new submenu item.
|
||||
* @param aSubMenu is the submenu to add the new menu.
|
||||
* @param aId is the command ID for the new menu item.
|
||||
* @param aText is the string for the new menu item.
|
||||
* @param aHelpText is the help message string for the new menu item.
|
||||
* @param aImage is the icon to add to the new menu item.
|
||||
* @return a pointer to the new created wxMenuItem
|
||||
*/
|
||||
static inline wxMenuItem* AddMenuItem( wxMenu* aMenu,
|
||||
wxMenu* aSubMenu,
|
||||
int aId,
|
||||
const wxString& aText,
|
||||
const wxString& aHelpText,
|
||||
const wxBitmap& aImage )
|
||||
{
|
||||
wxMenuItem* item;
|
||||
|
||||
item = new wxMenuItem( aMenu, aId, aText, aHelpText );
|
||||
item->SetSubMenu( aSubMenu );
|
||||
|
||||
SET_BITMAP( aImage );
|
||||
|
||||
aMenu->Append( item );
|
||||
|
||||
return item;
|
||||
};
|
|
@ -42,7 +42,6 @@
|
|||
#include <wx/aui/aui.h>
|
||||
#include <wx/docview.h>
|
||||
|
||||
#include <bitmaps.h>
|
||||
#include <colors.h>
|
||||
#include <common.h>
|
||||
|
||||
|
@ -961,148 +960,6 @@ public:
|
|||
};
|
||||
|
||||
|
||||
/**
|
||||
* Function AddMenuItem
|
||||
* is an inline helper function to create and insert a menu item with an image
|
||||
* into \a aMenu
|
||||
*
|
||||
* @param aMenu is the menu to add the new item.
|
||||
* @param aId is the command ID for the new menu item.
|
||||
* @param aText is the string for the new menu item.
|
||||
* @param aImage is the image to add to the new menu item.
|
||||
*/
|
||||
static inline void AddMenuItem( wxMenu* aMenu,
|
||||
int aId,
|
||||
const wxString& aText,
|
||||
const wxBitmap& aImage )
|
||||
{
|
||||
wxMenuItem* item;
|
||||
|
||||
item = new wxMenuItem( aMenu, aId, aText );
|
||||
|
||||
#if defined( USE_IMAGES_IN_MENUS )
|
||||
item->SetBitmap( aImage );
|
||||
#endif
|
||||
|
||||
aMenu->Append( item );
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Function AddMenuItem
|
||||
* is an inline helper function to create and insert a menu item with an image
|
||||
* and a help message string into \a aMenu
|
||||
*
|
||||
* @param aMenu is the menu to add the new item.
|
||||
* @param aId is the command ID for the new menu item.
|
||||
* @param aText is the string for the new menu item.
|
||||
* @param aHelpText is the help message string for the new menu item.
|
||||
* @param aImage is the image to add to the new menu item.
|
||||
*/
|
||||
static inline void AddMenuItem( wxMenu* aMenu,
|
||||
int aId,
|
||||
const wxString& aText,
|
||||
const wxString& aHelpText,
|
||||
const wxBitmap& aImage )
|
||||
{
|
||||
wxMenuItem* item;
|
||||
|
||||
item = new wxMenuItem( aMenu, aId, aText, aHelpText );
|
||||
|
||||
#if defined( USE_IMAGES_IN_MENUS )
|
||||
item->SetBitmap( aImage );
|
||||
#endif
|
||||
|
||||
aMenu->Append( item );
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Function AddMenuItem
|
||||
* is an inline helper function to create and insert a menu item with an image
|
||||
* into \a aSubMenu in \a aMenu
|
||||
*
|
||||
* @param aMenu is the menu to add the new submenu item.
|
||||
* @param aSubMenu is the submenu to add the new menu.
|
||||
* @param aId is the command ID for the new menu item.
|
||||
* @param aText is the string for the new menu item.
|
||||
* @param aImage is the image to add to the new menu item.
|
||||
*/
|
||||
static inline void AddMenuItem( wxMenu* aMenu,
|
||||
wxMenu* aSubMenu,
|
||||
int aId,
|
||||
const wxString& aText,
|
||||
const wxBitmap& aImage )
|
||||
{
|
||||
wxMenuItem* item;
|
||||
|
||||
item = new wxMenuItem( aMenu, aId, aText );
|
||||
item->SetSubMenu( aSubMenu );
|
||||
|
||||
#if defined( USE_IMAGES_IN_MENUS )
|
||||
item->SetBitmap( aImage );
|
||||
#endif
|
||||
|
||||
aMenu->Append( item );
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Function AddMenuItem
|
||||
* is an inline helper function to create and insert a menu item with an image
|
||||
* and a help message string into \a aSubMenu in \a aMenu
|
||||
*
|
||||
* @param aMenu is the menu to add the new submenu item.
|
||||
* @param aSubMenu is the submenu to add the new menu.
|
||||
* @param aId is the command ID for the new menu item.
|
||||
* @param aText is the string for the new menu item.
|
||||
* @param aHelpText is the help message string for the new menu item.
|
||||
* @param aImage is the image to add to the new menu item.
|
||||
*/
|
||||
static inline void AddMenuItem( wxMenu* aMenu,
|
||||
wxMenu* aSubMenu,
|
||||
int aId,
|
||||
const wxString& aText,
|
||||
const wxString& aHelpText,
|
||||
const wxBitmap& aImage )
|
||||
{
|
||||
wxMenuItem* item;
|
||||
|
||||
item = new wxMenuItem( aMenu, aId, aText, aHelpText );
|
||||
item->SetSubMenu( aSubMenu );
|
||||
|
||||
#if defined( USE_IMAGES_IN_MENUS )
|
||||
item->SetBitmap( aImage );
|
||||
#endif
|
||||
|
||||
aMenu->Append( item );
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Definition SETBITMAPS
|
||||
* is a macro use to add a bitmaps to check menu item.
|
||||
* @note Do not use with normal menu items or any platform other than Windows.
|
||||
* @param aImage is the image to add the menu item.
|
||||
*/
|
||||
#if defined( USE_IMAGES_IN_MENUS ) && defined( __WINDOWS__ )
|
||||
# define SETBITMAPS( aImage ) item->SetBitmaps( KiBitmap( apply_xpm ), KiBitmap( aImage ) )
|
||||
#else
|
||||
# define SETBITMAPS( aImage )
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Definition SETBITMAP
|
||||
* is a macro use to add a bitmap to a menu items.
|
||||
* @note Do not use with checked menu items.
|
||||
* @param aImage is the image to add the menu item.
|
||||
*/
|
||||
#if !defined( USE_IMAGES_IN_MENUS )
|
||||
# define SET_BITMAP( aImage )
|
||||
#else
|
||||
# define SET_BITMAP( aImage ) item->SetBitmap( aImage )
|
||||
#endif
|
||||
|
||||
|
||||
/**
|
||||
* Specialization of the wxAuiPaneInfo class for KiCad panels.
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
|
||||
#include <wx/regex.h>
|
||||
#include <wx/imaglist.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
|
||||
IMPLEMENT_ABSTRACT_CLASS( TREEPROJECTFILES, wxTreeCtrl )
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
#include <macros.h>
|
||||
|
||||
#include <kicad.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
|
||||
RIGHT_KM_FRAME::RIGHT_KM_FRAME( KICAD_MANAGER_FRAME* parent ) :
|
||||
|
|
|
@ -36,6 +36,7 @@
|
|||
#include <kicad.h>
|
||||
#include <tree_project_frame.h>
|
||||
#include <wildcards_and_files_ext.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
|
||||
static const wxString TreeFrameWidthEntry( wxT( "LeftWinWidth" ) );
|
||||
|
|
|
@ -30,6 +30,7 @@
|
|||
#include <fctsys.h>
|
||||
#include <appl_wxstruct.h>
|
||||
#include <kicad.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
|
||||
/* Menubar and toolbar event table */
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
#include <wx/regex.h>
|
||||
#include <wx/dir.h>
|
||||
#include <wx/imaglist.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
|
||||
/* Note about the tree project build process:
|
||||
|
|
|
@ -41,6 +41,7 @@
|
|||
#include <pcbnew.h>
|
||||
#include <protos.h>
|
||||
#include <collectors.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
//external functions used here:
|
||||
extern bool Magnetize( BOARD* m_Pcb, PCB_EDIT_FRAME* frame,
|
||||
|
|
|
@ -32,6 +32,7 @@
|
|||
#include <pcbnew.h>
|
||||
#include <wxPcbStruct.h>
|
||||
#include <module_editor_frame.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
#include <protos.h>
|
||||
#include <pcbnew_id.h>
|
||||
|
|
|
@ -36,6 +36,7 @@
|
|||
#include <pcbnew_id.h>
|
||||
|
||||
#include <help_common_strings.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
/**
|
||||
* Pcbnew mainframe menubar
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
|
||||
#include <dialog_edit_module_for_Modedit.h>
|
||||
#include <wildcards_and_files_ext.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
// Functions defined in block_module_editor, but used here
|
||||
// These 2 functions are used in modedit to rotate or mirror the whole footprint
|
||||
|
|
|
@ -14,11 +14,12 @@
|
|||
#include <class_edge_mod.h>
|
||||
|
||||
#include <pcbnew.h>
|
||||
#include <protos.h>
|
||||
//#include <protos.h>
|
||||
#include <pcbnew_id.h>
|
||||
#include <hotkeys.h>
|
||||
#include <module_editor_frame.h>
|
||||
#include <dialog_edit_module_for_Modedit.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
|
||||
void FOOTPRINT_EDIT_FRAME::OnLeftClick( wxDC* DC, const wxPoint& MousePos )
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* 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) 2007 Jean-Pierre Charras, jean-pierre.charras@gipsa-lab.inpg.fr
|
||||
* Copyright (C) 2011 Wayne Stambaugh <stambaughw@verizon.net>
|
||||
* Copyright (C) 1992-2011 KiCad Developers, see AUTHORS.txt for contributors.
|
||||
*
|
||||
|
@ -39,6 +39,7 @@
|
|||
|
||||
#include <pcbnew.h>
|
||||
#include <pcbnew_id.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
|
||||
/* Handle the left button mouse click, when a tool is active
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||
*
|
||||
* Copyright (C) 2009 Jean-Pierre Charras, jaen-pierre.charras@gipsa-lab.inpg.com
|
||||
* Copyright (C) 2009 Jean-Pierre Charras, jean-pierre.charras@gipsa-lab.inpg.fr
|
||||
* Copyright (C) 2007-2011 Wayne Stambaugh <stambaughw@verizon.net>
|
||||
* Copyright (C) 1992-2011 KiCad Developers, see AUTHORS.txt for contributors.
|
||||
*
|
||||
|
@ -43,6 +43,7 @@
|
|||
#include <pcbnew_id.h>
|
||||
#include <hotkeys.h>
|
||||
#include <collectors.h>
|
||||
#include <menus_helpers.h>
|
||||
|
||||
|
||||
static wxMenu* Append_Track_Width_List( BOARD* aBoard );
|
||||
|
|
Loading…
Reference in New Issue