Commit 6bfff89f authored by Dick Hollenbeck's avatar Dick Hollenbeck

merge tip in, resolve.

parents 2c67c3ff 898ed744
boost_root
.downloads-by-cmake
Build
common/netlist_keywords.*
common/netlist_lexer.h
common/pcb_plot_params_lexer.h
......
......@@ -45,16 +45,11 @@
#include <info3d_visu.h>
#include <trackball.h>
// Exported function:
void Set_Object_Data( std::vector< S3D_VERTEX >& aVertices, double aBiuTo3DUnits );
void S3D_MASTER::Set_Object_Coords( std::vector< S3D_VERTEX >& aVertices )
void S3D_MASTER::ObjectCoordsTo3DUnits( std::vector< S3D_VERTEX >& aVertices )
{
unsigned ii;
/* adjust object scale, rotation and offset position */
for( ii = 0; ii < aVertices.size(); ii++ )
for( unsigned ii = 0; ii < aVertices.size(); ii++ )
{
aVertices[ii].x *= m_MatScale.x;
aVertices[ii].y *= m_MatScale.y;
......@@ -79,7 +74,7 @@ void S3D_MASTER::Set_Object_Coords( std::vector< S3D_VERTEX >& aVertices )
}
void Set_Object_Data( std::vector< S3D_VERTEX >& aVertices, double aBiuTo3DUnits )
void TransfertToGLlist( std::vector< S3D_VERTEX >& aVertices, double aBiuTo3DUnits )
{
unsigned ii;
GLfloat ax, ay, az, bx, by, bz, nx, ny, nz, r;
......@@ -138,44 +133,6 @@ void Set_Object_Data( std::vector< S3D_VERTEX >& aVertices, double aBiuTo3DUnits
glEnd();
}
GLuint EDA_3D_CANVAS::DisplayCubeforTest()
{
GLuint gllist = glGenLists( 1 );
glNewList( gllist, GL_COMPILE_AND_EXECUTE );
/* draw six faces of a cube */
glBegin( GL_QUADS );
glNormal3f( 0.0F, 0.0F, 1.0F );
glVertex3f( 0.5F, 0.5F, 0.5F ); glVertex3f( -0.5F, 0.5F, 0.5F );
glVertex3f( -0.5F, -0.5F, 0.5F ); glVertex3f( 0.5F, -0.5F, 0.5F );
glNormal3f( 0.0F, 0.0F, -1.0F );
glVertex3f( -0.5F, -0.5F, -0.5F ); glVertex3f( -0.5F, 0.5F, -0.5F );
glVertex3f( 0.5F, 0.5F, -0.5F ); glVertex3f( 0.5F, -0.5F, -0.5F );
glNormal3f( 0.0F, 1.0F, 0.0F );
glVertex3f( 0.5F, 0.5F, 0.5F ); glVertex3f( 0.5F, 0.5F, -0.5F );
glVertex3f( -0.5F, 0.5F, -0.5F ); glVertex3f( -0.5F, 0.5F, 0.5F );
glNormal3f( 0.0F, -1.0F, 0.0F );
glVertex3f( -0.5F, -0.5F, -0.5F ); glVertex3f( 0.5F, -0.5F, -0.5F );
glVertex3f( 0.5F, -0.5F, 0.5F ); glVertex3f( -0.5F, -0.5F, 0.5F );
glNormal3f( 1.0F, 0.0F, 0.0F );
glVertex3f( 0.5F, 0.5F, 0.5F ); glVertex3f( 0.5F, -0.5F, 0.5F );
glVertex3f( 0.5F, -0.5F, -0.5F ); glVertex3f( 0.5F, 0.5F, -0.5F );
glNormal3f( -1.0F, 0.0F, 0.0F );
glVertex3f( -0.5F, -0.5F, -0.5F ); glVertex3f( -0.5F, -0.5F, 0.5F );
glVertex3f( -0.5F, 0.5F, 0.5F ); glVertex3f( -0.5F, 0.5F, -0.5F );
glEnd();
glEndList();
return gllist;
}
VERTEX_VALUE_CTRL::VERTEX_VALUE_CTRL( wxWindow* aParent, wxBoxSizer* aBoxSizer )
{
wxString text;
......
......@@ -78,7 +78,11 @@ EDA_3D_CANVAS::EDA_3D_CANVAS( EDA_3D_FRAME* parent, int* attribList ) :
wxFULL_REPAINT_ON_RESIZE )
{
m_init = false;
m_gllist = 0;
// Clear all gl list identifiers:
for( int ii = GL_ID_BEGIN; ii < GL_ID_END; ii++ )
m_glLists[ii] = 0;
// Explicitly create a new rendering context instance for this canvas.
m_glRC = new wxGLContext( this );
......@@ -94,12 +98,25 @@ EDA_3D_CANVAS::~EDA_3D_CANVAS()
}
void EDA_3D_CANVAS::ClearLists()
void EDA_3D_CANVAS::ClearLists( GLuint aGlList )
{
if( m_gllist > 0 )
glDeleteLists( m_gllist, 1 );
if( aGlList )
{
if( m_glLists[aGlList] > 0 )
glDeleteLists( m_glLists[aGlList], 1 );
m_glLists[aGlList] = 0;
return;
}
m_gllist = 0;
for( int ii = GL_ID_BEGIN; ii < GL_ID_END; ii++ )
{
if( m_glLists[ii] > 0 )
glDeleteLists( m_glLists[ii], 1 );
m_glLists[ii] = 0;
}
}
......
......@@ -50,14 +50,29 @@ class S3D_VERTEX;
class SEGVIA;
class D_PAD;
// We are using GL lists to store layers and other items
// to draw or not
// GL_LIST_ID are the GL lists indexes in m_glLists
enum GL_LIST_ID
{
GL_ID_BEGIN = 0,
GL_ID_AXIS = GL_ID_BEGIN, // list id for 3D axis
GL_ID_GRID, // list id for 3D grid
GL_ID_BOARD, // List id for copper layers
GL_ID_TECH_LAYERS, // List id for non copper layers (masks...)
GL_ID_AUX_LAYERS, // List id for user layers (draw, eco, comment)
GL_ID_3DSHAPES_SOLID, // List id for 3D shapes, non transparent entities
GL_ID_3DSHAPES_TRANSP, // List id for 3D shapes, transparent entities
GL_ID_END
};
class EDA_3D_CANVAS : public wxGLCanvas
{
private:
bool m_init;
GLuint m_gllist;
GLuint m_glLists[GL_ID_END]; // GL lists
wxGLContext* m_glRC;
wxRealPoint m_draw3dOffset; // offset to draw the 3 mesh.
wxRealPoint m_draw3dOffset; // offset to draw the 3D mesh.
double m_ZBottom; // position of the back layer
double m_ZTop; // position of the front layer
......@@ -67,7 +82,15 @@ public:
EDA_3D_FRAME* Parent() { return (EDA_3D_FRAME*)GetParent(); }
void ClearLists();
BOARD* GetBoard() { return Parent()->GetBoard(); }
/**
* Function ClearLists
* Clear the display list.
* @param aGlList = the list to clear.
* if 0 (default) all lists are cleared
*/
void ClearLists( GLuint aGlList = 0 );
// Event functions:
void OnPaint( wxPaintEvent& event );
......@@ -81,10 +104,9 @@ public:
void OnEnterWindow( wxMouseEvent& event );
// Display functions
GLuint DisplayCubeforTest(); // Just a test function
void SetView3D( int keycode );
void DisplayStatus();
void Redraw( bool finish = false );
void Redraw();
void Render();
/**
......@@ -92,7 +114,7 @@ public:
* Prepares the parameters of the OpenGL draw list
* creates the OpenGL draw list items (board, grid ...
*/
GLuint CreateDrawGL_List();
void CreateDrawGL_List();
void InitGL();
void SetLights();
void SetOffset(double aPosX, double aPosY)
......@@ -104,11 +126,40 @@ public:
/**
* Function BuildBoard3DView
* Called by CreateDrawGL_List()
* Fills the OpenGL draw list with board items draw list.
* Populates the OpenGL GL_ID_BOARD draw list with board items only on copper layers.
* 3D footprint shapes, tech layers and aux layers are not on this list
*/
void BuildBoard3DView();
void DrawGrid( double aGriSizeMM );
/**
* Function BuildTechLayers3DView
* Called by CreateDrawGL_List()
* Populates the OpenGL GL_ID_BOARD draw list with items on tech layers
*/
void BuildTechLayers3DView();
/**
* Function BuildFootprintShape3DList
* Called by CreateDrawGL_List()
* Fills the OpenGL GL_ID_3DSHAPES_SOLID and GL_ID_3DSHAPES_TRANSP
* draw lists with 3D footprint shapes
* @param aOpaqueList is the gl list for non transparent items
* @param aTransparentList is the gl list for non transparent items,
* which need to be drawn after all other items
*/
void BuildFootprintShape3DList( GLuint aOpaqueList,
GLuint aTransparentList);
/**
* Function BuildBoard3DAuxLayers
* Called by CreateDrawGL_List()
* Fills the OpenGL GL_ID_AUX_LAYERS draw list
* with items on aux layers only
*/
void BuildBoard3DAuxLayers();
void Draw3DGrid( double aGriSizeMM );
void Draw3DAxis();
void Draw3DViaHole( SEGVIA * aVia );
void Draw3DPadHole( D_PAD * aPad );
......
......@@ -41,9 +41,14 @@ S3D_MATERIAL::S3D_MATERIAL( S3D_MASTER* father, const wxString& name ) :
m_Name = name;
}
void S3D_MATERIAL::SetMaterial()
{
S3D_MASTER * s3dParent = (S3D_MASTER *) GetParent();
s3dParent->SetLastTransparency( m_Transparency );
if( ! s3dParent->IsOpenGlAllowed() )
return;
glColorMaterial( GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE );
glColor4f( m_DiffuseColor.x * m_AmbientIntensity,
m_DiffuseColor.y * m_AmbientIntensity,
......@@ -52,8 +57,29 @@ void S3D_MATERIAL::SetMaterial()
#if 0
glColorMaterial( GL_FRONT_AND_BACK, GL_SPECULAR );
glColor3f( m_SpecularColor.x, m_SpecularColor.y, m_SpecularColor.z );
#endif
glColorMaterial( GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE );
#endif
}
bool S3D_MASTER::IsOpenGlAllowed()
{
if( m_loadNonTransparentObjects ) // return true for non transparent objects only
{
if( m_lastTransparency == 0.0 )
return true;
}
if( m_loadTransparentObjects ) // return true for transparent objects only
if( m_lastTransparency != 0.0 )
return true;
return false;
}
void S3D_MASTER::Insert( S3D_MATERIAL* aMaterial )
{
aMaterial->SetNext( m_Materials );
m_Materials = aMaterial;
}
......@@ -72,6 +98,7 @@ S3D_MASTER::S3D_MASTER( EDA_ITEM* aParent ) :
EDA_ITEM( aParent, NOT_USED )
{
m_MatScale.x = m_MatScale.y = m_MatScale.z = 1.0;
m_lastTransparency = 0.0;
m_3D_Drawings = NULL;
m_Materials = NULL;
m_ShapeType = FILE3D_NONE;
......
This diff is collapsed.
......@@ -35,7 +35,7 @@
#include <3d_draw_basic_functions.h>
// Imported function:
extern void Set_Object_Data( std::vector<S3D_VERTEX>& aVertices, double aBiuTo3DUnits );
extern void TransfertToGLlist( std::vector<S3D_VERTEX>& aVertices, double aBiuTo3DUnits );
extern void CheckGLError();
// Number of segments to approximate a circle by segments
......@@ -116,7 +116,7 @@ static void Draw3D_VerticalPolygonalCylinder( const CPOLYGONS_LIST& aPolysList,
coords[3].y = coords[2].y; // only z change
// Creates the GL_QUAD
Set_Object_Data( coords, aBiuTo3DUnits );
TransfertToGLlist( coords, aBiuTo3DUnits );
}
}
......
......@@ -39,12 +39,15 @@
#include <wxBasePcbFrame.h>
INFO3D_VISU g_Parm_3D_Visu;
// Key to store 3D Viewer config:
static const wxChar keyBgColor_Red[] = wxT( "BgColor_Red" );
static const wxChar keyBgColor_Green[] = wxT( "BgColor_Green" );
static const wxChar keyBgColor_Blue[] = wxT( "BgColor_Blue" );
static const wxChar keyShowRealisticMode[] = wxT( "ShowRealisticMode" );
static const wxChar keyShowAxis[] = wxT( "ShowAxis" );
static const wxChar keyShowGrid[] = wxT( "ShowGrid3D" );
static const wxChar keyShowGridSize[] = wxT( "Grid3DSize" );
static const wxChar keyShowZones[] = wxT( "ShowZones" );
static const wxChar keyShowFootprints[] = wxT( "ShowFootprints" );
static const wxChar keyShowCopperThickness[] = wxT( "ShowCopperThickness" );
......@@ -159,6 +162,12 @@ void EDA_3D_FRAME::LoadSettings( wxConfigBase* aCfg )
aCfg->Read( keyShowAxis, &tmp, true );
prms.SetFlag( FL_AXIS, tmp );
aCfg->Read( keyShowGrid, &tmp, true );
prms.SetFlag( FL_GRID, tmp );
aCfg->Read( keyShowGridSize, &prms.m_3D_Grid, 10.0 );
prms.SetFlag( FL_MODULE, tmp );
aCfg->Read( keyShowFootprints, &tmp, true );
prms.SetFlag( FL_MODULE, tmp );
......@@ -202,6 +211,8 @@ void EDA_3D_FRAME::SaveSettings( wxConfigBase* aCfg )
aCfg->Write( keyBgColor_Blue, g_Parm_3D_Visu.m_BgColor.m_Blue );
aCfg->Write( keyShowRealisticMode, prms.GetFlag( FL_USE_REALISTIC_MODE ) );
aCfg->Write( keyShowAxis, prms.GetFlag( FL_AXIS ) );
aCfg->Write( keyShowGrid, prms.GetFlag( FL_GRID ) );
aCfg->Write( keyShowGridSize, prms.m_3D_Grid );
aCfg->Write( keyShowFootprints, prms.GetFlag( FL_MODULE ) );
aCfg->Write( keyShowCopperThickness, prms.GetFlag( FL_USE_COPPER_THICKNESS ) );
aCfg->Write( keyShowZones, prms.GetFlag( FL_ZONE ) );
......@@ -359,52 +370,52 @@ void EDA_3D_FRAME::Process_Special_Functions( wxCommandEvent& event )
case ID_MENU3D_AXIS_ONOFF:
g_Parm_3D_Visu.SetFlag( FL_AXIS, isChecked );
NewDisplay();
m_canvas->Refresh();
return;
case ID_MENU3D_MODULE_ONOFF:
g_Parm_3D_Visu.SetFlag( FL_MODULE, isChecked );
NewDisplay();
m_canvas->Refresh();
return;
case ID_MENU3D_USE_COPPER_THICKNESS:
g_Parm_3D_Visu.SetFlag( FL_USE_COPPER_THICKNESS, isChecked );
NewDisplay();
NewDisplay(GL_ID_BOARD);
return;
case ID_MENU3D_ZONE_ONOFF:
g_Parm_3D_Visu.SetFlag( FL_ZONE, isChecked );
NewDisplay();
NewDisplay(GL_ID_BOARD);
return;
case ID_MENU3D_ADHESIVE_ONOFF:
g_Parm_3D_Visu.SetFlag( FL_ADHESIVE, isChecked );
NewDisplay();
NewDisplay(GL_ID_TECH_LAYERS);
return;
case ID_MENU3D_SILKSCREEN_ONOFF:
g_Parm_3D_Visu.SetFlag( FL_SILKSCREEN, isChecked );
NewDisplay();
NewDisplay(GL_ID_TECH_LAYERS);
return;
case ID_MENU3D_SOLDER_MASK_ONOFF:
g_Parm_3D_Visu.SetFlag( FL_SOLDERMASK, isChecked );
NewDisplay();
NewDisplay(GL_ID_TECH_LAYERS);
return;
case ID_MENU3D_SOLDER_PASTE_ONOFF:
g_Parm_3D_Visu.SetFlag( FL_SOLDERPASTE, isChecked );
NewDisplay();
NewDisplay(GL_ID_TECH_LAYERS);
return;
case ID_MENU3D_COMMENTS_ONOFF:
g_Parm_3D_Visu.SetFlag( FL_COMMENTS, isChecked );
NewDisplay();
NewDisplay(GL_ID_AUX_LAYERS);
return;
case ID_MENU3D_ECO_ONOFF:
g_Parm_3D_Visu.SetFlag( FL_ECO, isChecked );
NewDisplay();
NewDisplay(GL_ID_AUX_LAYERS);
return;
default:
......@@ -429,7 +440,6 @@ void EDA_3D_FRAME::On3DGridSelection( wxCommandEvent& event )
GetMenuBar()->Check( ii, false );
}
switch( id )
{
case ID_MENU3D_GRID_NOGRID:
......@@ -461,18 +471,17 @@ void EDA_3D_FRAME::On3DGridSelection( wxCommandEvent& event )
return;
}
NewDisplay();
NewDisplay( GL_ID_GRID );
}
void EDA_3D_FRAME::NewDisplay()
void EDA_3D_FRAME::NewDisplay( GLuint aGlList )
{
m_reloadRequest = false;
m_canvas->ClearLists();
m_canvas->ClearLists( aGlList );
m_canvas->CreateDrawGL_List();
// m_canvas->InitGL();
m_canvas->Refresh( true );
m_canvas->DisplayStatus();
}
......@@ -502,6 +511,9 @@ void EDA_3D_FRAME::Set3DBgColor()
newcolor = wxGetColourFromUser( this, oldcolor );
if( !newcolor.IsOk() ) // Happens on cancel dialog
return;
if( newcolor != oldcolor )
{
g_Parm_3D_Visu.m_BgColor.m_Red = (double) newcolor.Red() / 255.0;
......@@ -510,3 +522,8 @@ void EDA_3D_FRAME::Set3DBgColor()
NewDisplay();
}
}
BOARD* EDA_3D_FRAME::GetBoard()
{
return Parent()->GetBoard();
}
......@@ -38,9 +38,6 @@
#include "3d_struct.h"
#include "modelparsers.h"
// Imported function:
extern void Set_Object_Data( std::vector< S3D_VERTEX >& aVertices, double aBiuTo3DUnits );
S3D_MODEL_PARSER* S3D_MODEL_PARSER::Create( S3D_MASTER* aMaster,
const wxString aExtension )
......@@ -59,16 +56,46 @@ S3D_MODEL_PARSER* S3D_MODEL_PARSER::Create( S3D_MASTER* aMaster,
}
}
const wxString S3D_MASTER::GetShape3DFullFilename()
{
wxString shapeName;
// Expand any environment variables embedded in footprint's m_Shape3DName field.
// To ensure compatibility with most of footprint's m_Shape3DName field,
// if the m_Shape3DName is not an absolute path the default path
// given by the environment variable KISYS3DMOD will be used
if( m_Shape3DName.StartsWith( wxT("${") ) )
shapeName = wxExpandEnvVars( m_Shape3DName );
else
shapeName = m_Shape3DName;
wxFileName fn( shapeName );
if( fn.IsAbsolute() || shapeName.StartsWith( wxT(".") ) )
return shapeName;
wxString default_path;
wxGetEnv( wxT( KISYS3DMOD ), &default_path );
if( default_path.IsEmpty() )
return shapeName;
if( !default_path.EndsWith( wxT("/") ) && !default_path.EndsWith( wxT("\\") ) )
default_path += wxT("/");
default_path += shapeName;
return default_path;
}
int S3D_MASTER::ReadData()
{
if( m_Shape3DName.IsEmpty() )
{
return 1;
}
// Expand any environment variables embedded in footprint's m_Shape3DName field.
wxString filename = wxExpandEnvVars( m_Shape3DName );
wxString filename = GetShape3DFullFilename();
#ifdef __WINDOWS__
filename.Replace( wxT( "/" ), wxT( "\\" ) );
......@@ -103,15 +130,3 @@ int S3D_MASTER::ReadData()
return -1;
}
int STRUCT_3D_SHAPE::ReadData( FILE* file, int* LineNum )
{
char line[512];
while( GetLine( file, line, LineNum, 512 ) )
{
}
return -1;
}
......@@ -109,6 +109,10 @@ public:
private:
wxString m_Shape3DName; /* 3D shape name in 3D library */
FILE3D_TYPE m_ShapeType;
double m_lastTransparency; // last transparency value from
// last material in use
bool m_loadTransparentObjects;
bool m_loadNonTransparentObjects;
public:
S3D_MASTER( EDA_ITEM* aParent );
......@@ -117,16 +121,41 @@ public:
S3D_MASTER* Next() const { return (S3D_MASTER*) Pnext; }
S3D_MASTER* Back() const { return (S3D_MASTER*) Pback; }
void Insert( S3D_MATERIAL* aMaterial )
{
aMaterial->SetNext( m_Materials );
m_Materials = aMaterial;
}
// Accessors
void SetLastTransparency( double aValue ) { m_lastTransparency = aValue; }
void SetLoadTransparentObjects( bool aLoad )
{ m_loadTransparentObjects = aLoad; }
void SetLoadNonTransparentObjects( bool aLoad )
{ m_loadNonTransparentObjects = aLoad; }
void Insert( S3D_MATERIAL* aMaterial );
/**
* Function IsOpenGlAllowed
* @return true if opengl current list accepts a gl data
* used to filter transparent objects, which are drawn after
* non transparent objects
*/
bool IsOpenGlAllowed();
void Copy( S3D_MASTER* pattern );
/**
* Function ReadData
* Select the parser to read the 3D data file (vrml, x3d ...)
* and build the description objects list
*/
int ReadData();
void Set_Object_Coords( std::vector< S3D_VERTEX >& aVertices );
/**
* Function ObjectCoordsTo3DUnits
* @param aVertices = a list of 3D coordinates in shape units
* to convert to 3D canvas units, according to the
* footprint 3Dshape rotation, offset and scale parameters
*/
void ObjectCoordsTo3DUnits( std::vector< S3D_VERTEX >& aVertices );
#if defined(DEBUG)
void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); } // override
......@@ -144,6 +173,21 @@ public:
return m_Shape3DName;
}
/**
* Function GetShape3DFullFilename
* @return the full filename of the 3D shape,
* expanding environment variable (if any ) and/or adding default 3D path
* given by environment variable KISYS3DMOD
*/
const wxString GetShape3DFullFilename();
/**
* Function SetShape3DName
* @param aShapeName = file name of the data file relative to the 3D shape
*
* Set the filename of the 3D shape, and depending on the file extention
* (vrl, x3d, idf ) the type of file.
*/
void SetShape3DName( const wxString& aShapeName );
};
......@@ -163,8 +207,6 @@ public:
STRUCT_3D_SHAPE* Next() const { return (STRUCT_3D_SHAPE*) Pnext; }
STRUCT_3D_SHAPE* Back() const { return (STRUCT_3D_SHAPE*) Pback; }
int ReadData( FILE* file, int* LineNum );
#if defined(DEBUG)
void Show( int nestLevel, std::ostream& os ) const { ShowDummy( os ); } // override
#endif
......
......@@ -166,13 +166,22 @@ void EDA_3D_FRAME::CreateMenuBar()
wxMenu * gridlistMenu = new wxMenu;
AddMenuItem( prefsMenu, gridlistMenu, ID_MENU3D_GRID,
_( "3D Grid" ), KiBitmap( grid_xpm ) );
gridlistMenu->Append( ID_MENU3D_GRID_NOGRID, _( "No 3D Grid" ), wxEmptyString, true );
gridlistMenu->Check( ID_MENU3D_GRID_NOGRID, true );
gridlistMenu->Append( ID_MENU3D_GRID_10_MM, _( "3D Grid 10 mm" ), wxEmptyString, true );
gridlistMenu->Append( ID_MENU3D_GRID_5_MM, _( "3D Grid 5 mm" ), wxEmptyString, true );
gridlistMenu->Append( ID_MENU3D_GRID_2P5_MM, _( "3D Grid 2.5 mm" ), wxEmptyString, true );
gridlistMenu->Append( ID_MENU3D_GRID_1_MM, _( "3D Grid 1 mm" ), wxEmptyString, true );
gridlistMenu->Append( ID_MENU3D_GRID_NOGRID, _( "No 3D Grid" ), wxEmptyString, true );
gridlistMenu->Append( ID_MENU3D_GRID_10_MM, _( "3D Grid 10 mm" ), wxEmptyString, true );
gridlistMenu->Append( ID_MENU3D_GRID_5_MM, _( "3D Grid 5 mm" ), wxEmptyString, true );
gridlistMenu->Append( ID_MENU3D_GRID_2P5_MM, _( "3D Grid 2.5 mm" ), wxEmptyString, true );
gridlistMenu->Append( ID_MENU3D_GRID_1_MM, _( "3D Grid 1 mm" ), wxEmptyString, true );
// If the grid is on, check the corresponding menuitem showing the grid size
if( g_Parm_3D_Visu.GetFlag( FL_GRID ) )
{
gridlistMenu->Check( ID_MENU3D_GRID_10_MM, g_Parm_3D_Visu.m_3D_Grid == 10.0 );
gridlistMenu->Check( ID_MENU3D_GRID_5_MM, g_Parm_3D_Visu.m_3D_Grid == 5.0 );
gridlistMenu->Check( ID_MENU3D_GRID_2P5_MM, g_Parm_3D_Visu.m_3D_Grid == 2.5 );
gridlistMenu->Check( ID_MENU3D_GRID_1_MM, g_Parm_3D_Visu.m_3D_Grid == 1.0 );
}
else
gridlistMenu->Check( ID_MENU3D_GRID_NOGRID, true );
prefsMenu->AppendSeparator();
......
......@@ -48,6 +48,9 @@
# include <GL/glu.h>
#endif
#define KISYS3DMOD "KISYS3DMOD"
#include <3d_struct.h>
#define KISYS3DMOD "KISYS3DMOD"
......@@ -80,6 +83,8 @@ public:
PCB_BASE_FRAME* Parent() { return (PCB_BASE_FRAME*)GetParent(); }
BOARD* GetBoard();
/**
* Function ReloadRequest
* must be called when reloading data from Pcbnew is needed
......@@ -95,8 +100,10 @@ public:
* Function NewDisplay
* Rebuild the display list.
* must be called when 3D opengl data is modified
* @param aGlList = the list to rebuild.
* if 0 (default) all lists are rebuilt
*/
void NewDisplay();
void NewDisplay( GLuint aGlList = 0 );
void SetDefaultFileName(const wxString &aFn) { m_defaultFileName = aFn; }
const wxString &GetDefaultFileName() const { return m_defaultFileName; }
......
......@@ -88,8 +88,8 @@ void INFO3D_VISU::InitSettings( BOARD* aBoard )
if( bbbox.GetWidth() == 0 && bbbox.GetHeight() == 0 )
{
bbbox.SetWidth( 100 * IU_PER_MM );
bbbox.SetHeight( 100 * IU_PER_MM );
bbbox.SetWidth( Millimeter2iu( 100 ) );
bbbox.SetHeight( Millimeter2iu( 100 ) );
}
m_BoardSettings = &aBoard->GetDesignSettings();
......@@ -131,6 +131,7 @@ void INFO3D_VISU::InitSettings( BOARD* aBoard )
// Fill remaining unused copper layers and front layer zpos
// with m_EpoxyThickness
// Solder mask and Solder paste have the same Z position
for( ; layer <= LAST_COPPER_LAYER; layer++ )
{
m_LayerZcoord[layer] = m_EpoxyThickness;
......@@ -144,19 +145,19 @@ void INFO3D_VISU::InitSettings( BOARD* aBoard )
switch( layer_id )
{
case ADHESIVE_N_BACK:
zpos = zpos_copper_back - 4 * zpos_offset;
zpos = zpos_copper_back - 3 * zpos_offset;
break;
case ADHESIVE_N_FRONT:
zpos = zpos_copper_front + 4 * zpos_offset;
zpos = zpos_copper_front + 3 * zpos_offset;
break;
case SOLDERPASTE_N_BACK:
zpos = zpos_copper_back - 3 * zpos_offset;
zpos = zpos_copper_back - 1 * zpos_offset;
break;
case SOLDERPASTE_N_FRONT:
zpos = zpos_copper_front + 3 * zpos_offset;
zpos = zpos_copper_front + 1 * zpos_offset;
break;
case SOLDERMASK_N_BACK:
......@@ -177,7 +178,7 @@ void INFO3D_VISU::InitSettings( BOARD* aBoard )
default:
zpos = zpos_copper_front +
(layer_id - FIRST_NON_COPPER_LAYER + 5) * zpos_offset;
(layer_id - FIRST_NON_COPPER_LAYER + 4) * zpos_offset;
break;
}
......
......@@ -74,7 +74,6 @@ enum DISPLAY3D_FLG {
FL_LAST
};
class INFO3D_VISU
{
public:
......@@ -148,9 +147,10 @@ public: INFO3D_VISU();
*/
int GetCopperThicknessBIU() const
{
bool use_copper_thickness = GetFlag( FL_USE_COPPER_THICKNESS ) ||
GetFlag( FL_USE_REALISTIC_MODE );
return use_copper_thickness ?
bool use_thickness = GetFlag( FL_USE_COPPER_THICKNESS )
// || GetFlag( FL_USE_REALISTIC_MODE )
;
return use_thickness ?
KiROUND( m_CopperThickness / m_BiuTo3Dunits )
: 0;
}
......@@ -173,9 +173,10 @@ public: INFO3D_VISU();
*/
int GetNonCopperLayerThicknessBIU() const
{
bool use_copper_thickness = GetFlag( FL_USE_COPPER_THICKNESS ) ||
GetFlag( FL_USE_REALISTIC_MODE );
return use_copper_thickness ?
bool use_thickness = GetFlag( FL_USE_COPPER_THICKNESS )
// || GetFlag( FL_USE_REALISTIC_MODE )
;
return use_thickness ?
KiROUND( m_NonCopperLayerThickness / m_BiuTo3Dunits )
: 0;
}
......
......@@ -37,7 +37,7 @@
class S3D_MASTER;
class S3D_VERTEX;
extern void Set_Object_Data( std::vector< S3D_VERTEX >& aVertices, double aBiuTo3DUnits );
extern void TransfertToGLlist( std::vector< S3D_VERTEX >& aVertices, double aBiuTo3DUnits );
class S3D_MODEL_PARSER;
class X3D_MODEL_PARSER;
......
......@@ -68,6 +68,8 @@ void VRML_MODEL_PARSER::Load( const wxString aFilename )
while( GetLine( file, line, &LineNum, 512 ) )
{
text = strtok( line, sep_chars );
if ( text == NULL )
continue;
if( stricmp( text, "DEF" ) == 0 || stricmp( text, "Group" ) == 0 )
{
......@@ -280,8 +282,6 @@ int VRML_MODEL_PARSER::readAppearance( FILE* file, int* LineNum )
}
#define BUFSIZE 2000
void VRML_MODEL_PARSER::readCoordsList( FILE* file, char* text_buffer,
std::vector< double >& aList, int* LineNum )
{
......@@ -371,6 +371,9 @@ int VRML_MODEL_PARSER::readGeometry( FILE* file, int* LineNum )
strcpy( buffer, line );
text = strtok( buffer, sep_chars );
if( text == NULL )
continue;
if( *text == '}' )
{
err = 0;
......@@ -381,7 +384,7 @@ int VRML_MODEL_PARSER::readGeometry( FILE* file, int* LineNum )
{
text = strtok( NULL, " ,\t\n\r" );
if( stricmp( text, "true" ) == 0 )
if( text && stricmp( text, "true" ) == 0 )
{
}
else
......@@ -395,7 +398,7 @@ int VRML_MODEL_PARSER::readGeometry( FILE* file, int* LineNum )
{
text = strtok( NULL, " ,\t\n\r" );
if( stricmp( text, "true" ) == 0 )
if( text && stricmp( text, "true" ) == 0 )
{
}
else
......@@ -516,8 +519,12 @@ int VRML_MODEL_PARSER::readGeometry( FILE* file, int* LineNum )
vertices.push_back( vertex );
}
GetMaster()->Set_Object_Coords( vertices );
Set_Object_Data( vertices, vrmlunits_to_3Dunits );
if( GetMaster()->IsOpenGlAllowed() )
{
GetMaster()->ObjectCoordsTo3DUnits( vertices );
TransfertToGLlist( vertices, vrmlunits_to_3Dunits );
}
vertices.clear();
coordIndex.clear();
}
......
......@@ -479,8 +479,11 @@ void X3D_MODEL_PARSER::readIndexedFaceSet( wxXmlNode* aFaceNode,
vertices.push_back( triplets.at( *id ) );
}
GetMaster()->Set_Object_Coords( vertices );
Set_Object_Data( vertices, vrmlunits_to_3Dunits );
if( GetMaster()->IsOpenGlAllowed() )
{
GetMaster()->ObjectCoordsTo3DUnits( vertices );
TransfertToGLlist( vertices, vrmlunits_to_3Dunits );
}
vertices.clear();
coordIndex.clear();
......
This diff is collapsed.
# This program source code file is part of KICAD, a free EDA CAD application.
#
# Copyright (C) 2013 SoftPLC Corporation, Dick Hollenbeck <dick@softplc.com>
# Copyright (C) 2013 Kicad Developers, see AUTHORS.txt for contributors.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, you may find one here:
# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
# or you may search the http://www.gnu.org website for the version 2 license,
# or you may write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
# Downloads and builds PCRE
#-----<configure>----------------------------------------------------------------
set( PCRE_RELEASE 8.34 )
set( PCRE_MD5 eb34b2c9c727fd64940d6fd9a00995eb ) # re-calc this on every RELEASE change
set( PCRE_ROOT "${PROJECT_SOURCE_DIR}/pcre_root" )
#-----</configure>---------------------------------------------------------------
find_package( BZip2 REQUIRED )
set( PREFIX ${DOWNLOAD_DIR}/pcre )
if (APPLE)
if( CMAKE_OSX_ARCHITECTURES )
set( PCRE_CFLAGS "CFLAGS=-arch ${CMAKE_OSX_ARCHITECTURES} -mmacosx-version-min=10.5" )
set( PCRE_CXXFLAGS "CXXFLAGS=-arch ${CMAKE_OSX_ARCHITECTURES} -mmacosx-version-min=10.5" )
set( PCRE_LDFLAGS "LDFLAGS=-arch ${CMAKE_OSX_ARCHITECTURES} -mmacosx-version-min=10.5" )
endif( CMAKE_OSX_ARCHITECTURES )
endif(APPLE)
ExternalProject_Add( pcre
PREFIX "${PREFIX}"
DOWNLOAD_DIR "${DOWNLOAD_DIR}"
URL http://sourceforge.net/projects/pcre/files/pcre/${PCRE_RELEASE}/pcre-${PCRE_RELEASE}.tar.gz
URL_MD5 ${PCRE_MD5}
STAMP_DIR "${PREFIX}"
#SOURCE_DIR "${PREFIX}"
BUILD_IN_SOURCE 1
UPDATE_COMMAND ${CMAKE_COMMAND} -E remove_directory "${PCRE_ROOT}"
#PATCH_COMMAND "true"
CONFIGURE_COMMAND ./configure --prefix=${PCRE_ROOT} ${PCRE_CFLAGS} ${PCRE_CXXFLAGS} ${PCRE_LDFLAGS} --disable-dependency-tracking
#BINARY_DIR "${PREFIX}"
BUILD_COMMAND $(MAKE)
INSTALL_DIR "${PCRE_ROOT}"
INSTALL_COMMAND $(MAKE) install
)
# This program source code file is part of KICAD, a free EDA CAD application.
#
# Copyright (C) 2013 SoftPLC Corporation, Dick Hollenbeck <dick@softplc.com>
# Copyright (C) 2013 Kicad Developers, see AUTHORS.txt for contributors.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, you may find one here:
# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
# or you may search the http://www.gnu.org website for the version 2 license,
# or you may write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
# Downloads and builds SWIG
#-----<configure>----------------------------------------------------------------
set( SWIG_RELEASE 2.0.11 )
set( SWIG_MD5 291ba57c0acd218da0b0916c280dcbae ) # re-calc this on every RELEASE change
# The boost headers [and static libs if built] go here, at the top of KiCad
# source tree in boost_root.
set( SWIG_ROOT "${PROJECT_SOURCE_DIR}/swig_root" )
#-----</configure>---------------------------------------------------------------
find_package( BZip2 REQUIRED )
set( PREFIX ${DOWNLOAD_DIR}/swig )
if (APPLE)
if( CMAKE_OSX_ARCHITECTURES )
set( SWIG_CFLAGS "CFLAGS=-arch ${CMAKE_OSX_ARCHITECTURES} -mmacosx-version-min=10.5" )
set( SWIG_CXXFLAGS "CXXFLAGS=-arch ${CMAKE_OSX_ARCHITECTURES} -mmacosx-version-min=10.5" )
set( SWIG_LDFLAGS "LDFLAGS=-arch ${CMAKE_OSX_ARCHITECTURES} -mmacosx-version-min=10.5" )
endif( CMAKE_OSX_ARCHITECTURES )
set( SWIG_PYTHON "--with-python=/usr/bin/python2.6" )
set( SWIG_OPTS --disable-dependency-tracking )
endif(APPLE)
# <SOURCE_DIR> = ${PREFIX}/src/glew
# There is a Bazaar 'boost scratch repo' in <SOURCE_DIR>/boost and after committing pristine
# download, the patch is applied. This lets you regenerate a new patch at any time
# easily, simply by editing the working tree in <SOURCE_DIR> and doing "bzr diff" in there.
ExternalProject_Add( swig
PREFIX "${PREFIX}"
DOWNLOAD_DIR "${DOWNLOAD_DIR}"
URL http://sourceforge.net/projects/swig/files/swig/swig-${SWIG_RELEASE}/swig-${SWIG_RELEASE}.tar.gz
URL_MD5 ${SWIG_MD5}
STAMP_DIR "${PREFIX}"
DEPENDS pcre
#SOURCE_DIR "${PREFIX}"
BUILD_IN_SOURCE 1
UPDATE_COMMAND ${CMAKE_COMMAND} -E remove_directory "${SWIG_ROOT}"
#PATCH_COMMAND "true"
CONFIGURE_COMMAND ./configure --prefix=${SWIG_ROOT} --with-pcre-prefix=${PCRE_ROOT} ${SWIG_CFLAGS} ${SWIG_LDFLAGS} ${SWIG_CXXFLAGS} ${SWIG_PYTHON} ${SWIG_OPTS}
#BINARY_DIR "${PREFIX}"
BUILD_COMMAND $(MAKE)
INSTALL_DIR "${SWIG_ROOT}"
INSTALL_COMMAND $(MAKE) install
)
# This program source code file is part of KICAD, a free EDA CAD application.
#
# Copyright (C) 2013 SoftPLC Corporation, Dick Hollenbeck <dick@softplc.com>
# Copyright (C) 2013 Kicad Developers, see AUTHORS.txt for contributors.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, you may find one here:
# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
# or you may search the http://www.gnu.org website for the version 2 license,
# or you may write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
# Downloads and builds LIBWXPYTHON
#-----<configure>----------------------------------------------------------------
set( LIBWXPYTHON_RELEASE 3.0.0.0 )
set( LIBWXPYTHON_MD5 f5e32c7d85dc261ba777e113c3b7e365 ) # re-calc this on every RELEASE change
set( LIBWXPYTHON_ROOT "${PROJECT_SOURCE_DIR}/libwxpython_root" )
#-----</configure>---------------------------------------------------------------
find_package( BZip2 REQUIRED )
set( PREFIX ${DOWNLOAD_DIR}/libwxpython )
set( LIBWXPYTHON_EXEC python )
set( LIBWXPYTHON_OPTS --wxpy_installdir=${LIBWXPYTHON_ROOT}/wxPython )
if (APPLE)
SET( LIBWXPYTHON_EXEC python2.6 )
SET( LIBWXPYTHON_OPTS ${LIBWXPYTHON_OPTS} --osx_cocoa )
#SET( LIBWXPYTHON_OPTS ${LIBWXPYTHON_OPTS} --mac_framework --mac_framework_prefix=${LIBWXPYTHON_ROOT}/wxPython )
if( CMAKE_OSX_ARCHITECTURES )
STRING(REGEX REPLACE " -arch " "," LIBWXPYTHON_ARCHITECTURES ${CMAKE_OSX_ARCHITECTURES})
SET( LIBWXPYTHON_OPTS ${LIBWXPYTHON_OPTS} --mac_arch=${LIBWXPYTHON_ARCHITECTURES})
endif( CMAKE_OSX_ARCHITECTURES )
if( CMAKE_CXX_COMPILER_ID MATCHES "Clang" )
SET( LIBWXPYTHON_PRECMD export CFLAGS=-Qunused-arguments && )
endif()
endif(APPLE)
if ( KICAD_BUILD_STATIC )
#message fail
set( LIBWXPYTHON_BUILDTYPE "--disable-shared" )
endif( KICAD_BUILD_STATIC )
# <SOURCE_DIR> = ${PREFIX}/src/libwx
# There is a Bazaar 'boost scratch repo' in <SOURCE_DIR>/boost and after committing pristine
# download, the patch is applied. This lets you regenerate a new patch at any time
# easily, simply by editing the working tree in <SOURCE_DIR> and doing "bzr diff" in there.
ExternalProject_Add( libwxpython
PREFIX "${PREFIX}"
DOWNLOAD_DIR "${DOWNLOAD_DIR}"
URL http://sourceforge.net/projects/wxpython/files/wxPython/${LIBWXPYTHON_RELEASE}/wxPython-src-${LIBWXPYTHON_RELEASE}.tar.bz2
URL_MD5 ${LIBWXPYTHON_MD5}
STAMP_DIR "${PREFIX}"
BUILD_IN_SOURCE 1
PATCH_COMMAND bzr revert
COMMAND bzr patch -p0 "${PROJECT_SOURCE_DIR}/patches/wxpython-3.0.0_macosx.patch"
COMMAND bzr patch -p0 "${PROJECT_SOURCE_DIR}/patches/wxpython-3.0.0_macosx_multiarch.patch" # http://trac.wxwidgets.org/ticket/15957
UPDATE_COMMAND ${CMAKE_COMMAND} -E remove_directory "${LIBWXPYTHON_ROOT}"
COMMAND ${LIBWXPYTHON_EXEC} wxPython/build-wxpython.py --clean
CONFIGURE_COMMAND ${LIBWXPYTHON_PRECMD} ${LIBWXPYTHON_EXEC} wxPython/build-wxpython.py --prefix=${LIBWXPYTHON_ROOT} --unicode --install ${LIBWXPYTHON_OPTS}
#BINARY_DIR "${PREFIX}"
BUILD_COMMAND true
INSTALL_DIR "${LIBWXPYTHON_ROOT}"
INSTALL_COMMAND true
)
ExternalProject_Add_Step( libwxpython bzr_commit_libwxpython
COMMAND bzr ci -q -m pristine <SOURCE_DIR>
COMMENT "committing pristine libwxpython files to 'libwxpython scratch repo'"
DEPENDERS patch
)
ExternalProject_Add_Step( libwxpython bzr_add_libwxpython
COMMAND bzr add -q ${PREFIX}/src/libwxpython
COMMENT "adding pristine libwxpython files to 'libwxpython scratch repo'"
DEPENDERS bzr_commit_libwxpython
)
ExternalProject_Add_Step( libwxpython bzr_init_libwxpython
COMMAND bzr init -q <SOURCE_DIR>
COMMENT "creating 'libwxpython scratch repo' specifically for libwx to track libwx patches"
DEPENDERS bzr_add_libwxpython
DEPENDEES download
)
######
# Now is time to search what we have built
######
ExternalProject_Add_Step( libwxpython libwxpython_recursive_message
COMMAND cmake .
COMMENT "*** RERUN CMAKE - wxWidgets built, now reissue a cmake to build Kicad"
DEPENDEES install
)
......@@ -11,32 +11,40 @@ Contribute to KiCad (under Linux)
2) initialize Bazaar:
bzr whoami "John Doe <john.doe@gmail.com>"
3) get LATEST KiCad source tree and name it, for instance, "kicad_john":
3) get latest KiCad source tree:
cd ~/
bzr branch lp:kicad kicad_john
bzr branch lp:kicad kicad.bzr
4) Read coding_style_policy.pdf, in <kicad_sources>/Documentation,
and other docs.
this should leave you with the folder kicad.bzr
5) Modify/add source code.
cd kicad_john
4) Read coding_style_policy.pdf, in kicad.bzr/Documentation,
and other docs.
5) create a local (branch) copy of the KiCad project
bzr branch ./kicad.bzr ./kicad.my_contrib
6) Modify/add source code in
cd kicad.my_contrib
gedit .......
if you need to create and add the file foo.cpp do so and:
bzr add foo.cpp
if you need to delete files:
bzr rm foo.cpp
6) Compile:
cd kicad_john
7) Compile:
cd kicad.my_contrib
mkdir build; cd build
cmake ../ -DCMAKE_BUILD_TYPE=Debug
to build a debug version
or
to build a debug version
or
cmake ../ -DCMAKE_BUILD_TYPE=Release
to build a release version
make
to build a release version
make -j8
7) Repeat step 5 and 6 until satisfied.
8) Repeat step 6 and 7 until satisfied.
8) Create a patch:
in kicad_john:
if some files are added: bzr add [FILE...]
9) Create a patch file:
cd kicad.my_contrib
bzr diff > my_changes.patch
9) Send the patch file "my_changes.patch" to the KiCad developers mailing list.
......
......@@ -31,15 +31,22 @@ KiCad from source.
* bzr - Bazaar version control system
* CMake - Cross-platform make
* GLUT - The OpenGL Utility Library
* GLEW
* wxGTK or wxWidgets - The wxWidgets GUI toolkit with GTK+ bindings
* libbz2 (dev)
* libcairo (dev)
* Boost - Collection of portable C++ source libraries
boost will be automagically downloaded and copied in kicad sources tree,
boost will be automagically downloaded, copied in kicad sources tree and patched,
the first time you compile kicad.
Useful, but not required:
* Doxygen - Documentation system for several programming languages
Required to build Kicad with scripting (using python) support:
Python
Swig
KiCad uses the Bazaar version control system to track source code changes,
and download the boost libraries needed by Kicad.
Be sure you bzr install also includes bzrtools.
......@@ -60,40 +67,43 @@ Install or Build wxWidgets
WARNING:
see wxWidgets_patch_notes.txt for patches and issues in wxWidgets.
If on Windows, download
http://sourceforge.net/projects/wxwindows/files/wxAll/2.9.3/wxWidgets-2.9.3.zip/download
On Windows, download
http://sourceforge.net/projects/wxwindows/files/3.0.0/wxWidgets-3.0.0.zip/download
or a newer version.
Do NOT use previous versions which all have annoying issues for KiCad.
Start msys so you have a bash shell.
Note also since 2.9 versions no need to build a "debug" version of the wxWidgets library,
the release abd the debug version are same.
the release and the debug version are same.
Unzip the wxWidgets zip file into the build directory. Change directories into
there, and then:
mkdir Release
cd Release
../configure --enable-unicode --enable-monolithic=no --disable-shared --with-opengl
../configure --with-opengl
make
and under Linux, but not under Windows:
sudo make install that install wxWidgets libs and headers in /usr/local/
If on linux, you can use your package manager to install the
development versions of the wxWidgets packages which include the C++ headers. An
alternative is to build static libaries from source. Verify that wx-config is in
your path by running it from a command prompt. Linux users then go to next step.
On linux, yo can also download wxWidgets 3.0 (recommandedd)
or you can use your package manager to install the
development versions of the wxWidgets packages which include the C++ headers.
The recommended way is to build wxWidgets from source, and use wxWidgets 3.0
or more recent (Older versions have a print function which does not work).
Verify that wx-config is in your path by running it from a command prompt.
Linux users then go to next step.
Install CMake
-------------
If windows, download the installation binary for windows from cmake.org.
On windows, download the installation binary for windows from cmake.org.
Install that and choose to add cmake to your path during installation. You
will have to restart and command shells for the new path to take effect.
will have to restart your command shell for the new path to take effect.
Verify that cmake is in your path by trying to run it from a command prompt.
If linux, use your package manager to install cmake. You should get cmake 2.6.4
On linux, use your package manager to install cmake. You should get cmake 2.8.4
or later. If only an older one is available in your package repository, build
cmake from source. Verify that cmake is in your path by trying to run it from a
command prompt.
......@@ -106,25 +116,50 @@ To download files from Launchpad repository, you should install bazaar (bzr) th
version control system like subversion, mercurial, git...
Launchpad repository handle 2 branches for KiCda sources:
- a testing branch (used by developers)
- a stable branch (a copy of the testing branch, when this testing branch is near a stable state))
Testing branch:
bzr branch lp:kicad kicad_testing
- a product branch (used by developers, which is most of time usable in production)
- a stable branch (a copy of the testing branch,
when the product branch is a stable state))
Remarks:
- The product branch is actively maintained
- From the product branch, you can go back to any previous version, using bzr features
- The stable branch is poorly or not maintained (and could be removed)
In order to have a working Kicad installtion, you need
- sources to build binaries
- libraries (they are not included in sources)
- documentation and translations (they are not included in sources)
product branch:
bzr branch lp:kicad kicad_src
Stable branch:
bzr branch lp:kicad/stable kicad_stable
bzr branch lp:kicad/stable kicad_src
Components and Footprints libraries
bzr branch lp:~kicad-lib-committers/kicad/library kicad_libraries
all (schematic libs, 3D shapes ...) but new footprints libraries (use Download zip tool)
https://github.com/KiCad/kicad-library/
New footprints libraries (use Download zip tool for each lib you want)
https://github.com/KiCad/ for footprint libs (*.pretty folders)
A mirror of github is available, using bzr:
(schematic libs, 3D shapes ... all but new footprints libraries)
bzr checkout lp:~kicad-product-committers/kicad/library
Old legacy libraries:
bzr checkout lp:~dickelbeck/kicad/library-read-only
Note also Kicad is able to read on github.com/KiCad/ the *.pretty folders
without download, using github plugin.
(however the time to read them can be long)
Documentation and translations:
bzr branch lp:~kicad-developers/kicad/doc kicad_doc
Create Makefiles with CMake
---------------------------
If windows, go into your msys shell. Linux and windows users both then make
two "out of source" build directories:
On windows, go into your msys shell.
Linux and windows users both then make two "out of source" build directories:
cd <kicadSource>
mkdir -p build/release
mkdir build/debug (if you want a debug version of KiCad)
......@@ -133,10 +168,10 @@ two "out of source" build directories:
On either cmake command line shown below, you can optionally include
-DCMAKE_INSTALL_PREFIX=<finallInstallDir>
If windows, run the following command:
On windows, run the following command:
cmake -G "MSYS Makefiles" -DCMAKE_BUILD_TYPE=Release -DwxWidgets_ROOT_DIR=<wxInstallDir> ../../
If linux, run instead the following command:
On linux, run instead the following command:
cmake -DCMAKE_BUILD_TYPE=Release ../../
Take a look at CMakeCache.txt, and in particular CMAKE_INSTALL_PREFIX, which
......@@ -166,18 +201,16 @@ On either cmake command line shown below, you can optionally include
Although normally you do not install the Debug binaries, you can debug them
where they were built.
If windows, run the following command:
On windows, run the following command:
cmake -G "MSYS Makefiles" -DCMAKE_BUILD_TYPE=Debug -DwxWidgets_ROOT_DIR=<wxInstallDir> ../../
where <wxInstallDir> is <wxWidgets path>/Release
If linux, run instead the following command:
On linux, run instead the following command:
cmake -DCMAKE_BUILD_TYPE=Debug -DwxWidgets_USE_DEBUG=ON ../../
Make the Debug binaries:
make
Note: that it is easy to build only a specific binary such as pcbnew alone:
make pcbnew
See ./cmake_config.txt for customizing the KiCad build setting.
See Documentation/compiling/build-config.txt for a list of all CMake options
available when compiling KiCad.
Bazaar
------
======
KiCad uses the Bazaar version control system to track source code changes,
and download the boost libraries needed by Kicad.
The easiest way to get a copy of the KiCad source is to use Bazaar.
......@@ -11,7 +12,8 @@ Be sure bzrtools is also installed.
boost libraries will be downloaded the first time you build Kicad.
CMake
-----
=====
KiCad uses CMake to generate the build files specific for the target platform
specified by the developer. This document attempts to define some of the more
common CMake and KiCad build configuration settings. You can use CMake either
......@@ -23,7 +25,8 @@ http://www.cmake.org/cmake/help/documentation.html.
Useful CMake Build Settings.
----------------------------
============================
This section defines some of the more common CMake build configuration setting
used when configuring KiCad. These settings are valid for all projects that
use CMake.
......@@ -39,14 +42,18 @@ switch on the command line. Please note, only a small subset of these project
generators are supported. If you want to use Eclipse on Linux to build KiCad,
you may be in for a lot of work.
CMAKE_BUILD_TYPE (Release/Debug/RelWithDebInfo/MinSizeRel)
----------------------------------------------------------
Default: Release
When configuring the KiCad build for the command line you must specify build
type. To create a debug build, set CMAKE_BUILD_TYPE to Debug. To create a
release build, set CMAKE_BUILD_TYPE to Release. See the CMake documentation
for other build types. For IDE project files, the build type can be selected
by the IDE configuration manager.
CMAKE_INSTALL_PATH (InstallPath)
--------------------------------
By default CMake will select the correct install path for your platform. If
......@@ -57,7 +64,8 @@ installed on your system.
wxWidgets Library Configuration.
--------------------------------
================================
KiCad is built using the wxWidgets library. The following options allow you
to specifically tailor the wxWidgets library configuration. For the complete
list of wxWidgets setting see CMakeModules/FindwxWidgets.cmake in the KiCad
......@@ -69,85 +77,147 @@ CMake looks in the standard platform locations to find the default version of
the wxWidgets library. If you wish to use a custom built wxWidgets library,
set wxWidgets_ROOT_DIR to the correct path.
wxWidgets_USE_DEBUG (ON/OFF)
----------------------------
Default: OFF
When creating a debug build of KiCad, it is often useful to link against the
debug build of the wxWidgets. To use the debug build of wxWidgets, set
wxWidgets_USE_DEBUG to ON.
wxWidgets_USE_UNICODE (ON/OFF)
------------------------------
Default: ON (wxWidgets 2.9 or later), OFF (older versions)
If your platform supports Unicode and you wish to build KiCad with Unicode
support, set wxWidgets_USE_UNICODE to ON. Please note as of the 2.9 branch
this option is not required.
KiCad Specific Options
----------------------
======================
All of the configuration settings below are specific to the KiCad project.
If for any reason you add or remove a build option to the KiCad CMake files,
please update the list below.
KICAD_SKIP_BOOST (ON/OFF)
--------------------------
Skips building the required boost library components.
WARNING: KiCad developers strongly advise you to build the bundled boost library, as it is
known to work with KiCad. Other versions may contain bugs that may result in KiCad errors.
Default: OFF
Use the version of the Boost library installed on the system rather than
building a local copy.
WARNING: The KiCad developers strongly advise you to build the bundled copy of
the Boost library, as it is known to work with KiCad. Other versions may
contain bugs that may result in KiCad errors.
USE_WX_GRAPHICS_CONTEXT (ON/OFF)
--------------------------------
This option is *Experimental* and used the advanced drawing library code
using wxGraphicsContext and should only be used for testing purposes.
Under Windows, a very recent version of mingw is needed. It also requires
wxWidgets to be built with the --enable-graphics_ctx configuration switch.
Default: OFF
This option is *Experimental*. It enables advanced drawing library code using
wxGraphicsContext and should only be used for testing purposes. Under Windows,
a very recent version of mingw is needed. It also requires wxWidgets to be
built with the --enable-graphics_ctx configuration switch.
USE_IMAGES_IN_MENUS (ON/OFF)
----------------------------
Default: OFF for OSX, ON for other platforms.
This option is used to enable or disable building KiCad with images in menu
items. If this is not defined when CMake is used to create the build files,
images will be included in menu items on all platforms except OSX.
DOWNLOAD_DIR (PATH)
-------------------
Default: <source directory>/.downloads-by-cmake
Some external dependencies are automatically download and built when you
compile KiCad. This option specifies which directory they are stored in. If you
are building multiple copies of KiCad (e.g., to test different features or your
own modifications), it is recommended you set this option to a global directory
to avoid download and building the dependencies multiple times.
KICAD_USER_CONFIG_DIR (PATH)
----------------------------
Default: Home directory (Unix-based systems), Application data directory (Windows)
This option specifies where to store user-specific configuration information.
KICAD_KEEPCASE (ON/OFF)
-----------------------
This option enables or disables turning off the automatic component name
conversion to uppercase. The default is OFF which means component names will
be converted to upper case.
Default: ON
If this is OFF, component names are automatically converted to uppercase meaning
they are case insensitive. If it is ON, component names are not changed and
are therefore case sensitive.
USE_WX_OVERLAY (ON/OFF)
-----------------------
This option enables or disables wxOverlay for drawing operation on OSX. It is
OFF by default on all platforms except OSX. Warning, this is experimental!
Default: ON for OSX, OFF for other platforms.
This option enables or disables the use of wxOverlay for drawing operations.
Warning, this is experimental!
KICAD_SCRIPTING (ON/OFF)
------------------------
This option enables or disables building Python scripting support for KiCad.
The default is OFF. Currently only Pcbnew is supported. This option requires
that SWIG and Python are installed on the system.
Default: OFF
This option enables or disables building Python scripting support within KiCad.
Currently only Pcbnew is supported. This option requires SWIG and Python to be
installed on the system.
KICAD_SCRIPTING_MODULES (ON/OFF)
--------------------------------
This option enables or disables building the KiCad modules that can be used
from scripting languages. The default is OFF. Currently only Pcbnew is
supported. This option requires that SWIG and Python are installed on the
system.
Default: OFF
This option enables or disables building KiCad Python modules that can be used
externally by Python. Currently only Pcbnew is supported. This option
requires SWIG and Python to be installed on the system.
KICAD_SCRIPTING_WXPYTHON (ON/OFF)
---------------------------------
This option enables or disables building wxPython support into KiCad for
python and py.shell. The default is OFF. Currently only Pcbnew is
supported. This option requires that SWIG, Python, and wxPython are
installed on the system.
Default: OFF
This option enables or disables building wxPython support into the KiCad
scripting support. Currently only Pcbnew is supported. This option requires
SWIG, Python, and wxPython to be installed on the system.
PYTHON_SITE_PACKAGE_PATH (PATH)
-------------------------------
Default: System site library path
When building KiCad with Python scripting enable, the Python site library path
is used by default. If you want to install the KiCad Python extension in a
different path, set this variable to the desired path.
USE_FP_LIB_TABLE (ON/OFF)
-------------------------
This option enable or disables building KiCad with the new footprint library
table support. The default setting (OFF) builds KiCad with the legacy library
path support. This option is experimental until the library table support is
ready for release.
BUILD_GITHUB_PLUGIN (ON/OFF)
----------------------------
Default: OFF
This option enables or disables building KiCad with a pcbnew plugin for loading
footprints from a GitHub repository.
KICAD_REPO_NAME (STRING)
------------------------
Default: "product"
The name of the repository this copy of KiCad was compiled from. This is
reported in the "About" dialog and is useful for people who are working with
multiple copies of the code from different sources. The default value is
"product", the name of the main development branch on Launchpad.
Compiling KiCad on Apple Mac OS X
=================================
First written: 2010-01-31
Last edited by: Jerry Jacobs <xor.gate.engineering[at]gmail[dot]com>
by: Jerry Jacobs <xor.gate.engineering[at]gmail[dot]com>
Modified at: 2014-02-07
by: Marco Serantoni <marco.serantoni[at]gmail[dot]com>
Snow Leopard
------------
......@@ -11,158 +13,51 @@ Requirements
* XCode Tools (http://developer.apple.com/tools/xcode)
* bzr (bazaar)
* CMake (http://www.cmake.org)
* wxWidgets 2.9 (http://www.wxwidgets.org/downloads)
* Doxygen (http://www.doxygen.nl)
* ccache (http://www.macports.org)
The build of Kicad for OSX is now easier than before.
The building system will download and compile the needed libraries for you
patching them accordly to the needs.
Building wxWidgets 2.9 Universal
Building Kicad with no support for Scripting
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To check if your tools and libraries are installed check with file for architectures.
user@macosx$ file /Developer/SDKs/MacOSX10.5.sdk/usr/lib/libSystem.dylib
The building needs to know if you want a static binary or a dynamic one
Just set ONE of those two options KICAD_BUILD_STATIC or KICAD_BUILD_DYNAMIC
If you set KICAD_BUILD_DYNAMIC the building system will build all and include
the needed libraries for each executable in its bundle
/Developer/SDKs/MacOSX10.5.sdk/usr/lib/libSystem.dylib: Mach-O universal binary with 4 architectures
/Developer/SDKs/MacOSX10.5.sdk/usr/lib/libSystem.dylib (for architecture ppc7400): Mach-O dynamically linked shared library stub ppc
/Developer/SDKs/MacOSX10.5.sdk/usr/lib/libSystem.dylib (for architecture ppc64)Mach-O 64-bit dynamically linked shared library stub ppc64
/Developer/SDKs/MacOSX10.5.sdk/usr/lib/libSystem.dylib (for architecture i386):Mach-O dynamically linked shared library stub i386
/Developer/SDKs/MacOSX10.5.sdk/usr/lib/libSystem.dylib (for architecture x86_64): Mach-O 64-bit dynamically linked shared library stub x86_64
cmake -DKICAD_BUILD_DYNAMIC=ON .
make
You need the architectures what you are compiling for !
If you have problems that the 64bits library is not build you should add in
the configure file:
At time of writing (2009-01-16) this is on line 18381
changing this: OSX_UNIV_OPTS="-arch ppc -arch i386"
into this: OSX_UNIV_OPTS="-arch ppc -arch i386 -arch x86_64"
Building a universal monolib wxWidgets 2.9 with the following parameters:
./configure --enable-unicode=yes --enable-shared=no --enable-monolithic --with-opengl --with-expat=builtin --enable-universal_binary --enable-aui --enable-debug --with-osx_cocoa --with-macosx-sdk=/Developer/SDKs/MacOSX10.5.sdk/ --prefix=/opt/wxwidgets/<rev>
<rev> Should be subsituded with the revision from SVN
Then you should a message like this:
Configured wxWidgets 2.9.2 for `i686-apple-darwin10.4.0'
Which GUI toolkit should wxWidgets use? osx_cocoa
Should wxWidgets be compiled into single library? yes
Should wxWidgets be linked as a shared library? no
Should wxWidgets support Unicode? yes (using UTF-8)
What level of wxWidgets compatibility should be enabled?
wxWidgets 2.6 no
wxWidgets 2.8 yes
Which libraries should wxWidgets use?
STL no
jpeg builtin
png builtin
regex builtin
tiff builtin
zlib sys
expat builtin
libmspack no
sdl no
If you don't need the debugging symbols then you can remove the --enable-debug parameter.
Compiling and installing:
make
sudo make install
Move the old Mac OS X wxconfig and symlink it to the new compiled 2.9
sudo mv /usr/bin/wx-config /usr/bin/wx-config.osx
sudo ln -s /opt/wxwidgets-svn/bin/wx-config /usr
Building KiCad
~~~~~~~~~~~~~~
Extract the sources or get them from subversion.
user@mac-osx$ cmake .
Regarding Kicad the only things i've changed are the Variables
in the generated CMakeCache.txt
It depends on which CMake version you use:
//Flags used by the compiler during all build types.
//This fixes also BOOST macro errors
CMAKE_CXX_FLAGS:STRING=-D__ASSERTMACROS__
//Build architectures for OSX
CMAKE_OSX_ARCHITECTURES:STRING=x86_64 -arch i386 -arch ppc -isysroot /Developer/SDKs/MacOSX10.5.sdk/ -mmacosx-version-min=10.5
//The product will be built against the headers and libraries located
// inside the indicated SDK.
CMAKE_OSX_SYSROOT:PATH=/Developer/SDKs/MacOSX10.5.sdk
//Minimum OS X version to target for deployment (at runtime); newer
// APIs weak linked. Set to empty string for default value.
CMAKE_OSX_DEPLOYMENT_TARGET:STRING=10.5
Or:
CMAKE_OSX_ARCHITECTURE = x86_64 -arch i386 -arch ppc -isysroot /Developer/SDKs/MacOSX10.5.sdk/ -mmacosx-version-min=10.5
CMAKE_OSX_SYSROOT = /Developer/SDKs/MacOSX10.5.sdk
CMAKE_CXX_FLAGS = -D__ASSERTMACROS__
Then we invoke make:
user@mac-osx$ make
It is also possible to give all the options on the commandline and not to edit the CMakeCache.txt. This is a oneliner for Leopard and up:
cmake ~/Repositories/testing -DCMAKE_OSX_ARCHITECTURES="i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.6.sdk -mmacosx-version-min=10.6" -DCMAKE_CXX_FLAGS="-D__ASSERTMACROS__" -DCMAKE_OSX_SYSROOT="/Developer/SDKs/MacOSX10.6.sdk"
Optional compiler cache
~~~~~~~~~~~~~~~~~~~~~~~
If you (re)compile often, you would love to use cache. The best is to install it using macports and set the libexec symlink
directory of ccache in your PATH variable.
Then start with a clean directory and invoke cmake, make sure that the C++ compiler points to /opt/local/libexec/ccache/g++
Further reading at http://trac.macports.org/wiki/howto/ccache
Known Problems
~~~~~~~~~~~~~~
In file included from
/temp/kicad-sources/boost_1_38_0/boost/ptr_container/detail/reversible_ptr_container.hpp:22In
file included from
/temp/kicad-sources/boost_1_38_0/boost/ptr_container/detail/reversible_ptr_container.hpp:22,
from
/temp/kicad-sources/boost_1_38_0/boost/ptr_container/ptr_sequence_adapter.hpp:20,
from
/temp/kicad-sources/boost_1_38_0/boost/ptr_container/ptr_vector.hpp:20,
from
/temp/kicad-sources/kicad/include/board_item_struct.h:9,
from /temp/kicad-sources/kicad/include/pcbstruct.h:10,
from /temp/kicad-sources/kicad/3d-viewer/3d_viewer.h:29,
from /temp/kicad-sources/kicad/3d-viewer/3d_aux.cpp:23:
/temp/kicad-sources/boost_1_38_0/boost/ptr_container/detail/static_move_ptr.hpp:154:50:
error: macro "check" passed 2 arguments, but takes just 1
Building Kicad with support for Scripting
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Due some problems with some dependencies the build of this kind of binary is a bit
more complex, you should initially set KICAD_BUILD_DYNAMIC
then issue for example
CMAKE_CXX_FLAGS = -D__ASSERTMACROS__ fixes this :-)
cmake -DKICAD_BUILD_DYNAMIC=ON .
make swig
After successfully building you can set your KICAD_SCRIPTING* options (for example):
configure:18585: gcc -isysroot /Developer/SDKs/MacOSX10.5.sdk/ -mmacosx-version-min=10.5 -o conftest -arch i386 -arch x86_64 -arch ppc -arch i386 -arch x86_64 -arch ppc conftest.c >&5
ld: warning: in /Developer/SDKs/MacOSX10.5.sdk//usr/lib/libSystem.dylib, missing required architecture ppc in file
cmake -DKICAD_SCRIPTING=ON -DKICAD_SCRIPTING_WXPYTHON=ON -DKICAD_SCRIPTING_MODULES=ON .
make
Installing rosetta and xcode with all architectures fixes this "problem"
The system will build all accordling your choices and package all in the bundle
I know bundles will be huge, but those will be autosufficient.
Building Kicad for other processors or Universal binaries
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ld: warning: in /Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks//QuickTime.framework/QuickTime, missing required architecture x86_64 in file
I wish remember you should set the processor like
You get this error because the QuickTime 10.6 framework is not build with 64bit support. This not a real issue for KiCad because we don't use it anyway.
cmake -DCMAKE_OSX_ARCHITECTURES="x86_64"
Undefined symbols:
"TestForIntersectionOfStraightLineSegments(int, int, int, int, int, int, int, int, int*, int*, double*)", referenced from:
clipLine(EDA_Rect*, int&, int&, int&, int&)in libcommon.a(gr_basic.cpp.o)
for other platforms
Make sure you marked the build type Release:
cmake -DCMAKE_OSX_ARCHITECTURES="x86_64 -arch i386"
cmake -DCMAKE_OSX_ARCHITECTURES="x86_64 -arch i386 -arch ppc"
//Choose the type of build, options are: None(CMAKE_CXX_FLAGS or
// CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel.
CMAKE_BUILD_TYPE:STRING=Release
I know some you should prefer use ; as separator, this will be accomplished soon
keeping support for both the syntaxes
......@@ -5,8 +5,7 @@ Last Revised: 28-Feb-2010
Kicad needs wxWidgets, the multi platform G.U.I.
Known problems:
wxMSW:
*DO NOT* use wxMSW.2.8.1
in fact: use wxWidgets >= 2.9.3
use *only* wxWidgets >= 3.0
wxGTK
Use wxWidgets 2.8.10 or later
......@@ -21,15 +20,6 @@ So use a very recent version (>= 2.8.10 (that also solve other bugs)
wxWidgets patch:
wxMSW, version 2.8.x
Some zoom values smaller than 3 to 5 create artifacts on screen, mainly values < 1.
(corresponding to draw scale factor > 1 )
See http://trac.wxwidgets.org/ticket/9554 (and 11669).
This is fixed in version 2.9.3
wxWidgets 2.9.1 (all platforms)
Has a problem when using the built in string to double conversion:
In countries using a comm instead of a point as floating number separator
......@@ -41,7 +31,7 @@ Use a version >= 2.9.3
*************************************************************************************
wxGTK version: All
wxGTK version: All before wxWidgets 3.0
*************************************************************************************
Patch for printing wide traces that were shown with missing rounded end caps.
Without this patch, printing boards and schematics under Linux, and perhaps OSX
......@@ -57,3 +47,10 @@ Add after this line:
PsPrint( "1 setlinecap\n" );
PsPrint("%%EndSetup\n");
Known bug on Windows:
Postscript printers print tracks like tin line.
It happens only for PS drivers, and PDF printer.
Other drivers (PCL for instance) work fine,
so it is unlikely a bug inside Kicad/wxWidgets
......@@ -170,6 +170,9 @@ build directory.
Important parameters to cmake
-----------------------------
See Documentation/compiling/build-config.txt for a list of all CMake options
available when compiling KiCad.
-DCMAKE_BUILD_TYPE=<buildtype>
<buildtype> may current one of "Debug" and "Release".
......
......@@ -2,7 +2,6 @@
include_directories( BEFORE ${INC_BEFORE} )
include_directories(
../potrace
../polygon/kbool/include
../common
${INC_AFTER}
)
......
This diff is collapsed.
......@@ -41,33 +41,43 @@ BM2CMP_FRAME_BASE::BM2CMP_FRAME_BASE( wxWindow* parent, wxWindowID id, const wxS
sbSizerInfo = new wxStaticBoxSizer( new wxStaticBox( m_panelRight, wxID_ANY, _("Bitmap Info:") ), wxVERTICAL );
wxFlexGridSizer* fgSizerInfo;
fgSizerInfo = new wxFlexGridSizer( 3, 3, 0, 0 );
fgSizerInfo = new wxFlexGridSizer( 0, 4, 0, 0 );
fgSizerInfo->AddGrowableCol( 1 );
fgSizerInfo->AddGrowableCol( 2 );
fgSizerInfo->SetFlexibleDirection( wxBOTH );
fgSizerInfo->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
m_staticTextSizeX = new wxStaticText( m_panelRight, wxID_ANY, _("Size X:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextSizeX->Wrap( -1 );
fgSizerInfo->Add( m_staticTextSizeX, 0, wxALIGN_RIGHT|wxALL|wxALIGN_CENTER_VERTICAL, 5 );
m_staticTextSize = new wxStaticText( m_panelRight, wxID_ANY, _("Size:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextSize->Wrap( -1 );
fgSizerInfo->Add( m_staticTextSize, 0, wxALIGN_RIGHT|wxALL|wxALIGN_CENTER_VERTICAL, 5 );
m_SizeXValue = new wxStaticText( m_panelRight, wxID_ANY, _("0000"), wxDefaultPosition, wxDefaultSize, 0 );
m_SizeXValue->Wrap( -1 );
fgSizerInfo->Add( m_SizeXValue, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
m_SizeXunits = new wxStaticText( m_panelRight, wxID_ANY, _("pixels"), wxDefaultPosition, wxDefaultSize, 0 );
m_SizeXunits->Wrap( -1 );
fgSizerInfo->Add( m_SizeXunits, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
m_staticTextSizeY = new wxStaticText( m_panelRight, wxID_ANY, _("Size Y:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextSizeY->Wrap( -1 );
fgSizerInfo->Add( m_staticTextSizeY, 0, wxALIGN_RIGHT|wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
fgSizerInfo->Add( m_SizeXValue, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
m_SizeYValue = new wxStaticText( m_panelRight, wxID_ANY, _("0000"), wxDefaultPosition, wxDefaultSize, 0 );
m_SizeYValue->Wrap( -1 );
fgSizerInfo->Add( m_SizeYValue, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
fgSizerInfo->Add( m_SizeYValue, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
m_SizePixUnits = new wxStaticText( m_panelRight, wxID_ANY, _("pixels"), wxDefaultPosition, wxDefaultSize, 0 );
m_SizePixUnits->Wrap( -1 );
fgSizerInfo->Add( m_SizePixUnits, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
m_staticTextSize1 = new wxStaticText( m_panelRight, wxID_ANY, _("Size:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextSize1->Wrap( -1 );
fgSizerInfo->Add( m_staticTextSize1, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_RIGHT, 5 );
m_SizeYunits = new wxStaticText( m_panelRight, wxID_ANY, _("pixels"), wxDefaultPosition, wxDefaultSize, 0 );
m_SizeYunits->Wrap( -1 );
fgSizerInfo->Add( m_SizeYunits, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
m_SizeXValue_mm = new wxStaticText( m_panelRight, wxID_ANY, _("0000"), wxDefaultPosition, wxDefaultSize, 0 );
m_SizeXValue_mm->Wrap( -1 );
fgSizerInfo->Add( m_SizeXValue_mm, 0, wxBOTTOM|wxRIGHT, 5 );
m_SizeYValue_mm = new wxStaticText( m_panelRight, wxID_ANY, _("0000"), wxDefaultPosition, wxDefaultSize, 0 );
m_SizeYValue_mm->Wrap( -1 );
fgSizerInfo->Add( m_SizeYValue_mm, 0, wxBOTTOM|wxRIGHT, 5 );
m_Size_mmxUnits = new wxStaticText( m_panelRight, wxID_ANY, _("mm"), wxDefaultPosition, wxDefaultSize, 0 );
m_Size_mmxUnits->Wrap( -1 );
fgSizerInfo->Add( m_Size_mmxUnits, 0, wxBOTTOM|wxRIGHT, 5 );
m_staticTextBPP = new wxStaticText( m_panelRight, wxID_ANY, _("BPP:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextBPP->Wrap( -1 );
......@@ -75,17 +85,38 @@ BM2CMP_FRAME_BASE::BM2CMP_FRAME_BASE( wxWindow* parent, wxWindowID id, const wxS
m_BPPValue = new wxStaticText( m_panelRight, wxID_ANY, _("0000"), wxDefaultPosition, wxDefaultSize, 0 );
m_BPPValue->Wrap( -1 );
fgSizerInfo->Add( m_BPPValue, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
fgSizerInfo->Add( m_BPPValue, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 );
m_BPPunits = new wxStaticText( m_panelRight, wxID_ANY, _("bits"), wxDefaultPosition, wxDefaultSize, 0 );
m_BPPunits->Wrap( -1 );
fgSizerInfo->Add( m_BPPunits, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
fgSizerInfo->Add( 0, 0, 1, wxEXPAND, 5 );
m_staticTextBPI = new wxStaticText( m_panelRight, wxID_ANY, _("Resolution:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextBPI->Wrap( -1 );
fgSizerInfo->Add( m_staticTextBPI, 0, wxALIGN_RIGHT|wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
m_DPIValueX = new wxTextCtrl( m_panelRight, wxID_ANY, _("300"), wxDefaultPosition, wxDefaultSize, 0 );
m_DPIValueX->SetMinSize( wxSize( 40,-1 ) );
fgSizerInfo->Add( m_DPIValueX, 0, wxBOTTOM|wxRIGHT, 5 );
m_DPIValueY = new wxTextCtrl( m_panelRight, wxID_ANY, _("300"), wxDefaultPosition, wxDefaultSize, 0 );
m_DPIValueY->SetMinSize( wxSize( 40,-1 ) );
fgSizerInfo->Add( m_DPIValueY, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 );
m_DPI_Units = new wxStaticText( m_panelRight, wxID_ANY, _("DPI"), wxDefaultPosition, wxDefaultSize, 0 );
m_DPI_Units->Wrap( -1 );
fgSizerInfo->Add( m_DPI_Units, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 );
sbSizerInfo->Add( fgSizerInfo, 0, wxEXPAND|wxBOTTOM, 5 );
brightSizer->Add( sbSizerInfo, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
brightSizer->Add( sbSizerInfo, 0, wxEXPAND|wxALL, 5 );
m_buttonLoad = new wxButton( m_panelRight, wxID_ANY, _("Load Bitmap"), wxDefaultPosition, wxDefaultSize, 0 );
brightSizer->Add( m_buttonLoad, 0, wxEXPAND|wxALIGN_CENTER_HORIZONTAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
......@@ -98,18 +129,18 @@ BM2CMP_FRAME_BASE::BM2CMP_FRAME_BASE( wxWindow* parent, wxWindowID id, const wxS
wxString m_radioBoxFormatChoices[] = { _("Eeschema"), _("Pcbnew old fmt (.emp)"), _("Pcbnew kicad_mod"), _("Postscript"), _("Logo for title block") };
int m_radioBoxFormatNChoices = sizeof( m_radioBoxFormatChoices ) / sizeof( wxString );
m_radioBoxFormat = new wxRadioBox( m_panelRight, wxID_ANY, _("Format"), wxDefaultPosition, wxDefaultSize, m_radioBoxFormatNChoices, m_radioBoxFormatChoices, 1, wxRA_SPECIFY_COLS );
m_radioBoxFormat->SetSelection( 4 );
brightSizer->Add( m_radioBoxFormat, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
m_radioBoxFormat->SetSelection( 2 );
brightSizer->Add( m_radioBoxFormat, 0, wxEXPAND|wxALL, 5 );
wxString m_rbOptionsChoices[] = { _("Normal"), _("Negative") };
int m_rbOptionsNChoices = sizeof( m_rbOptionsChoices ) / sizeof( wxString );
m_rbOptions = new wxRadioBox( m_panelRight, wxID_ANY, _("Options"), wxDefaultPosition, wxDefaultSize, m_rbOptionsNChoices, m_rbOptionsChoices, 1, wxRA_SPECIFY_COLS );
m_rbOptions->SetSelection( 0 );
brightSizer->Add( m_rbOptions, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
brightSizer->Add( m_rbOptions, 0, wxEXPAND|wxALL, 5 );
m_ThresholdText = new wxStaticText( m_panelRight, wxID_ANY, _("Threshold Value:"), wxDefaultPosition, wxDefaultSize, 0 );
m_ThresholdText->Wrap( -1 );
brightSizer->Add( m_ThresholdText, 0, wxRIGHT|wxLEFT, 5 );
brightSizer->Add( m_ThresholdText, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
m_sliderThreshold = new wxSlider( m_panelRight, wxID_ANY, 50, 0, 100, wxDefaultPosition, wxDefaultSize, wxSL_HORIZONTAL|wxSL_LABELS );
m_sliderThreshold->SetToolTip( _("Adjust the level to convert the greyscale picture to a black and white picture.") );
......@@ -131,6 +162,10 @@ BM2CMP_FRAME_BASE::BM2CMP_FRAME_BASE( wxWindow* parent, wxWindowID id, const wxS
m_InitialPicturePanel->Connect( wxEVT_PAINT, wxPaintEventHandler( BM2CMP_FRAME_BASE::OnPaint ), NULL, this );
m_GreyscalePicturePanel->Connect( wxEVT_PAINT, wxPaintEventHandler( BM2CMP_FRAME_BASE::OnPaint ), NULL, this );
m_BNPicturePanel->Connect( wxEVT_PAINT, wxPaintEventHandler( BM2CMP_FRAME_BASE::OnPaint ), NULL, this );
m_DPIValueX->Connect( wxEVT_LEAVE_WINDOW, wxMouseEventHandler( BM2CMP_FRAME_BASE::UpdatePPITextValueX ), NULL, this );
m_DPIValueX->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( BM2CMP_FRAME_BASE::OnResolutionChange ), NULL, this );
m_DPIValueY->Connect( wxEVT_LEAVE_WINDOW, wxMouseEventHandler( BM2CMP_FRAME_BASE::UpdatePPITextValueY ), NULL, this );
m_DPIValueY->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( BM2CMP_FRAME_BASE::OnResolutionChange ), NULL, this );
m_buttonLoad->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( BM2CMP_FRAME_BASE::OnLoadFile ), NULL, this );
m_buttonExport->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( BM2CMP_FRAME_BASE::OnExport ), NULL, this );
m_rbOptions->Connect( wxEVT_COMMAND_RADIOBOX_SELECTED, wxCommandEventHandler( BM2CMP_FRAME_BASE::OnOptionsSelection ), NULL, this );
......@@ -143,6 +178,10 @@ BM2CMP_FRAME_BASE::~BM2CMP_FRAME_BASE()
m_InitialPicturePanel->Disconnect( wxEVT_PAINT, wxPaintEventHandler( BM2CMP_FRAME_BASE::OnPaint ), NULL, this );
m_GreyscalePicturePanel->Disconnect( wxEVT_PAINT, wxPaintEventHandler( BM2CMP_FRAME_BASE::OnPaint ), NULL, this );
m_BNPicturePanel->Disconnect( wxEVT_PAINT, wxPaintEventHandler( BM2CMP_FRAME_BASE::OnPaint ), NULL, this );
m_DPIValueX->Disconnect( wxEVT_LEAVE_WINDOW, wxMouseEventHandler( BM2CMP_FRAME_BASE::UpdatePPITextValueX ), NULL, this );
m_DPIValueX->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( BM2CMP_FRAME_BASE::OnResolutionChange ), NULL, this );
m_DPIValueY->Disconnect( wxEVT_LEAVE_WINDOW, wxMouseEventHandler( BM2CMP_FRAME_BASE::UpdatePPITextValueY ), NULL, this );
m_DPIValueY->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( BM2CMP_FRAME_BASE::OnResolutionChange ), NULL, this );
m_buttonLoad->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( BM2CMP_FRAME_BASE::OnLoadFile ), NULL, this );
m_buttonExport->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( BM2CMP_FRAME_BASE::OnExport ), NULL, this );
m_rbOptions->Disconnect( wxEVT_COMMAND_RADIOBOX_SELECTED, wxCommandEventHandler( BM2CMP_FRAME_BASE::OnOptionsSelection ), NULL, this );
......
This diff is collapsed.
......@@ -25,6 +25,7 @@ class KIWAY_PLAYER;
#include <wx/icon.h>
#include <wx/notebook.h>
#include <wx/stattext.h>
#include <wx/textctrl.h>
#include <wx/sizer.h>
#include <wx/statbox.h>
#include <wx/button.h>
......@@ -50,15 +51,21 @@ class BM2CMP_FRAME_BASE : public KIWAY_PLAYER
wxScrolledWindow* m_GreyscalePicturePanel;
wxScrolledWindow* m_BNPicturePanel;
wxPanel* m_panelRight;
wxStaticText* m_staticTextSizeX;
wxStaticText* m_staticTextSize;
wxStaticText* m_SizeXValue;
wxStaticText* m_SizeXunits;
wxStaticText* m_staticTextSizeY;
wxStaticText* m_SizeYValue;
wxStaticText* m_SizeYunits;
wxStaticText* m_SizePixUnits;
wxStaticText* m_staticTextSize1;
wxStaticText* m_SizeXValue_mm;
wxStaticText* m_SizeYValue_mm;
wxStaticText* m_Size_mmxUnits;
wxStaticText* m_staticTextBPP;
wxStaticText* m_BPPValue;
wxStaticText* m_BPPunits;
wxStaticText* m_staticTextBPI;
wxTextCtrl* m_DPIValueX;
wxTextCtrl* m_DPIValueY;
wxStaticText* m_DPI_Units;
wxButton* m_buttonLoad;
wxButton* m_buttonExport;
wxRadioBox* m_radioBoxFormat;
......@@ -69,6 +76,9 @@ class BM2CMP_FRAME_BASE : public KIWAY_PLAYER
// Virtual event handlers, overide them in your derived class
virtual void OnPaint( wxPaintEvent& event ) { event.Skip(); }
virtual void UpdatePPITextValueX( wxMouseEvent& event ) { event.Skip(); }
virtual void OnResolutionChange( wxCommandEvent& event ) { event.Skip(); }
virtual void UpdatePPITextValueY( wxMouseEvent& event ) { event.Skip(); }
virtual void OnLoadFile( wxCommandEvent& event ) { event.Skip(); }
virtual void OnExport( wxCommandEvent& event ) { event.Skip(); }
virtual void OnOptionsSelection( wxCommandEvent& event ) { event.Skip(); }
......
......@@ -138,12 +138,12 @@ BITMAPCONV_INFO::BITMAPCONV_INFO()
}
int bitmap2component( potrace_bitmap_t* aPotrace_bitmap, FILE* aOutfile, int aFormat )
int bitmap2component( potrace_bitmap_t* aPotrace_bitmap, FILE* aOutfile,
int aFormat, int aDpi_X, int aDpi_Y )
{
potrace_param_t* param;
potrace_state_t* st;
// set tracing parameters, starting from defaults
param = potrace_param_default();
if( !param )
......@@ -171,8 +171,8 @@ int bitmap2component( potrace_bitmap_t* aPotrace_bitmap, FILE* aOutfile, int aFo
{
case 4:
info.m_Format = KICAD_LOGO;
info.m_ScaleX = 1e3 * 25.4 / 300; // the conversion scale from PPI to micro
info.m_ScaleY = info.m_ScaleX; // Y axis is top to bottom
info.m_ScaleX = 1e3 * 25.4 / aDpi_X; // the conversion scale from PPI to micro
info.m_ScaleY = 1e3 * 25.4 / aDpi_Y; // Y axis is top to bottom
info.CreateOutputFile();
break;
......@@ -186,22 +186,22 @@ int bitmap2component( potrace_bitmap_t* aPotrace_bitmap, FILE* aOutfile, int aFo
case 2:
info.m_Format = EESCHEMA_FMT;
info.m_ScaleX = 1000.0 / 300; // the conversion scale from PPI to UI
info.m_ScaleY = -info.m_ScaleX; // Y axis is bottom to Top for components in libs
info.m_ScaleX = 1000.0 / aDpi_X; // the conversion scale from PPI to UI
info.m_ScaleY = -1000.0 / aDpi_Y; // Y axis is bottom to Top for components in libs
info.CreateOutputFile();
break;
case 1:
info.m_Format = PCBNEW_KICAD_MOD;
info.m_ScaleX = 1e6 * 25.4 / 300; // the conversion scale from PPI to UI
info.m_ScaleY = info.m_ScaleX; // Y axis is top to bottom in modedit
info.m_ScaleX = 1e6 * 25.4 / aDpi_X; // the conversion scale from PPI to UI
info.m_ScaleY = 1e6 * 25.4 / aDpi_Y; // Y axis is top to bottom in modedit
info.CreateOutputFile();
break;
case 0:
info.m_Format = PCBNEW_LEGACY_EMP;
info.m_ScaleX = 10000.0 / 300; // the conversion scale
info.m_ScaleY = info.m_ScaleX; // Y axis is top to bottom in modedit
info.m_ScaleX = 10000.0 / aDpi_X; // the conversion scale
info.m_ScaleY = 10000.0 / aDpi_Y; // Y axis is top to bottom in modedit
info.CreateOutputFile();
break;
......
......@@ -151,7 +151,6 @@ set( BMAPS_MID
annotate_down_right
annotate_right_down
annotate
apply
auto_associe
auto_delete_track
auto_track_width
......@@ -446,6 +445,8 @@ set( BMAPS_MID
post_module
preference
print_button
ps_router
py_script
ratsnest
read_setup
redo
......
......@@ -8,51 +8,50 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x08, 0x06, 0x00, 0x00, 0x00, 0x1f, 0xf3, 0xff,
0x61, 0x00, 0x00, 0x02, 0xb0, 0x49, 0x44, 0x41, 0x54, 0x38, 0xcb, 0x8d, 0x93, 0x5f, 0x48, 0x53,
0x51, 0x1c, 0xc7, 0x45, 0xa7, 0x25, 0x61, 0x26, 0xb6, 0xfc, 0x93, 0x88, 0x92, 0xa9, 0x60, 0x11,
0xf4, 0x22, 0xfd, 0x7b, 0xe8, 0x21, 0xea, 0x2d, 0xf2, 0x25, 0xa8, 0x27, 0x03, 0x85, 0x88, 0xd0,
0xd5, 0x9a, 0x48, 0x77, 0x76, 0x23, 0x14, 0xb7, 0x74, 0x9b, 0xcb, 0x35, 0x77, 0xe7, 0xbd, 0x57,
0xaf, 0x05, 0x35, 0x88, 0x56, 0xd6, 0x96, 0x63, 0x81, 0xf3, 0xc6, 0xc0, 0x6a, 0x43, 0x27, 0xcb,
0x6d, 0xa0, 0xb8, 0xd9, 0x9d, 0x9b, 0xdb, 0xfc, 0x13, 0xb8, 0xb5, 0x72, 0x3b, 0x9d, 0x2b, 0x53,
0xdc, 0x34, 0xea, 0xe1, 0xc3, 0xb9, 0x70, 0xee, 0xf7, 0x7b, 0x7e, 0xbf, 0x73, 0xbe, 0xbf, 0x34,
0x00, 0x40, 0xda, 0x76, 0x50, 0x14, 0x4d, 0x57, 0xa9, 0x5a, 0x72, 0xe5, 0xf2, 0xdb, 0x7b, 0x52,
0xf7, 0x76, 0x63, 0xeb, 0x83, 0x24, 0xd1, 0x42, 0x92, 0x14, 0x4a, 0x29, 0x02, 0xf1, 0x93, 0x84,
0x70, 0x99, 0xc4, 0x85, 0x5e, 0x92, 0x44, 0x9e, 0xa9, 0xd5, 0x48, 0xf9, 0x3f, 0x0d, 0x28, 0x0a,
0x3d, 0x04, 0x45, 0x06, 0x63, 0x67, 0xc3, 0x77, 0xa6, 0xfe, 0x6c, 0xd4, 0x7b, 0xad, 0x36, 0xea,
0xa9, 0x3f, 0x17, 0x99, 0xe4, 0x5f, 0x59, 0x26, 0x08, 0xa1, 0x19, 0x9a, 0x57, 0x4b, 0x64, 0x5d,
0xbc, 0x7e, 0x1c, 0xa3, 0xbb, 0xa5, 0xe2, 0x1b, 0x3b, 0x0c, 0x48, 0x1c, 0x11, 0x8e, 0x35, 0x5d,
0x76, 0xcf, 0x9e, 0x3f, 0xf2, 0x2b, 0x50, 0x96, 0x09, 0x36, 0x99, 0x3b, 0x7d, 0x78, 0x7d, 0xf4,
0x6e, 0xdd, 0x8c, 0xba, 0xbf, 0xc7, 0x69, 0xff, 0x66, 0x8f, 0x98, 0xc6, 0x46, 0x43, 0xa2, 0xae,
0x8e, 0xba, 0x24, 0x03, 0x8d, 0x46, 0x93, 0x31, 0x80, 0x23, 0x83, 0xe6, 0x4b, 0x35, 0xab, 0x73,
0xa5, 0x1c, 0x90, 0x0a, 0x7d, 0xe1, 0x58, 0xd8, 0x60, 0xd0, 0x45, 0x7c, 0x3e, 0x1f, 0x90, 0xf7,
0x4a, 0xdf, 0x6e, 0x0a, 0x3b, 0x44, 0x8f, 0xea, 0x05, 0x02, 0x41, 0xce, 0xc6, 0xa5, 0xb1, 0xbd,
0xeb, 0x4f, 0x95, 0xaf, 0xda, 0x4b, 0x38, 0x20, 0x15, 0x43, 0x6d, 0x59, 0xf8, 0xa3, 0x51, 0x1f,
0xf6, 0xfb, 0xfd, 0x40, 0xd9, 0xa7, 0xb0, 0xb2, 0xa2, 0xc7, 0xdd, 0xa2, 0x66, 0xfd, 0x88, 0x2e,
0x2c, 0x16, 0xb7, 0x37, 0x6d, 0xb8, 0x11, 0x04, 0x72, 0x13, 0x3f, 0x53, 0xe9, 0xa4, 0x4b, 0xb2,
0xe2, 0x9f, 0x8b, 0x33, 0xc0, 0x26, 0xe3, 0xc5, 0x1c, 0x40, 0x9c, 0x2c, 0x0d, 0xbc, 0x78, 0xf9,
0x7c, 0x29, 0x18, 0x0c, 0x02, 0xdb, 0x94, 0x2d, 0xa6, 0x1d, 0xd6, 0x7a, 0x69, 0xda, 0xf4, 0xc3,
0x62, 0xb1, 0xac, 0x77, 0x76, 0x76, 0x34, 0x6c, 0x18, 0x0c, 0x0d, 0xa1, 0x15, 0xb8, 0xec, 0x4e,
0x83, 0xa4, 0xe2, 0xe0, 0xbc, 0xb6, 0x28, 0x0b, 0x18, 0x0a, 0x39, 0x40, 0x5f, 0x98, 0x19, 0x97,
0x55, 0x72, 0x19, 0xec, 0xa9, 0xd4, 0xbd, 0x18, 0x58, 0x8c, 0xb1, 0x06, 0x0e, 0x87, 0x03, 0x30,
0x0c, 0x03, 0x2c, 0x56, 0xcb, 0x6f, 0x95, 0xba, 0x6f, 0x0a, 0x56, 0xcf, 0xd9, 0xba, 0x0c, 0x8a,
0x42, 0xca, 0x65, 0xf7, 0xae, 0x5f, 0x7d, 0x50, 0x5b, 0xd5, 0x83, 0x54, 0x14, 0xbc, 0x41, 0x2a,
0x8b, 0xde, 0x63, 0x58, 0xef, 0xd7, 0xf9, 0x79, 0xcf, 0x7a, 0x34, 0x1a, 0x05, 0xb3, 0xb3, 0x33,
0x31, 0xf8, 0x0a, 0x93, 0x0a, 0xa5, 0x1c, 0x53, 0x28, 0x9f, 0xdc, 0x6f, 0x6c, 0x6c, 0xcc, 0x4c,
0xca, 0x01, 0x0b, 0x1b, 0x1e, 0x82, 0x68, 0xe5, 0x8e, 0x8f, 0x7f, 0x38, 0x81, 0xa9, 0x95, 0xc3,
0x2e, 0x97, 0xf3, 0xe7, 0xda, 0xda, 0x1a, 0x58, 0xf0, 0x2d, 0xc4, 0x70, 0x02, 0xa3, 0x57, 0x56,
0x56, 0xd8, 0x4c, 0xec, 0x87, 0xec, 0x85, 0x14, 0x40, 0xf2, 0x76, 0x0d, 0x87, 0x1a, 0x57, 0x11,
0x56, 0xab, 0x25, 0x1c, 0x0a, 0x85, 0x00, 0xe3, 0x65, 0x62, 0x03, 0x83, 0xb8, 0x19, 0x96, 0x9b,
0x95, 0x10, 0x97, 0x42, 0x32, 0x12, 0x06, 0xf9, 0x3b, 0xc4, 0x32, 0xb9, 0xa4, 0x8d, 0xfe, 0x44,
0xaf, 0x7a, 0x3c, 0x1e, 0xe0, 0x76, 0xbb, 0xe3, 0x83, 0xd4, 0xc0, 0x17, 0xf8, 0x84, 0xc7, 0xe1,
0x5e, 0x0d, 0xa4, 0x2a, 0xf1, 0x1f, 0x77, 0x47, 0x94, 0x59, 0x60, 0xca, 0x6e, 0x19, 0x8c, 0x23,
0x4b, 0xd3, 0xd3, 0xd3, 0xc0, 0xe5, 0x72, 0x41, 0x31, 0x61, 0xa5, 0x28, 0x6a, 0x5f, 0xca, 0x21,
0x6c, 0xf9, 0x79, 0x90, 0xec, 0x24, 0x03, 0x14, 0x6d, 0xad, 0x7e, 0xad, 0x7d, 0x15, 0x34, 0x9b,
0xcd, 0x60, 0x62, 0x72, 0x02, 0x50, 0x43, 0xa4, 0xcd, 0x31, 0xe7, 0x60, 0x7b, 0xce, 0x87, 0x14,
0x43, 0x38, 0x89, 0x35, 0x37, 0xb1, 0x1e, 0x48, 0x32, 0x78, 0xd8, 0xde, 0x76, 0x51, 0xa7, 0x7b,
0x17, 0x35, 0x99, 0x46, 0xe3, 0xb0, 0x67, 0x2b, 0x9f, 0xcf, 0xdf, 0x7e, 0x72, 0x0e, 0xe4, 0x28,
0x24, 0xfd, 0xaf, 0xd3, 0xc8, 0x22, 0x12, 0xb5, 0xb7, 0xc0, 0xa1, 0x91, 0xf0, 0x78, 0xbc, 0xec,
0xff, 0x19, 0x65, 0x96, 0x3f, 0xa1, 0x97, 0xae, 0x1c, 0xfc, 0x3f, 0x7e, 0xea, 0x00, 0x00, 0x00,
0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
0x61, 0x00, 0x00, 0x02, 0x9d, 0x49, 0x44, 0x41, 0x54, 0x38, 0xcb, 0x7d, 0x93, 0x5d, 0x48, 0x54,
0x41, 0x14, 0xc7, 0x47, 0x53, 0x12, 0x3f, 0x2a, 0xd3, 0x72, 0x0b, 0x41, 0x7a, 0x08, 0x8b, 0x28,
0x0a, 0x29, 0x4b, 0x0b, 0x2a, 0xb7, 0x74, 0xdd, 0x2c, 0x5b, 0x3f, 0xb0, 0x0c, 0xc3, 0xcd, 0x0d,
0x8d, 0x90, 0x14, 0x4b, 0xd3, 0x7b, 0xaf, 0xb3, 0xa9, 0x2f, 0x85, 0x58, 0xcb, 0xaa, 0xec, 0xde,
0x9d, 0x99, 0xfd, 0x50, 0xcb, 0xac, 0x5e, 0x32, 0x32, 0xec, 0xa1, 0x44, 0xfb, 0xa0, 0xd0, 0x17,
0x05, 0x83, 0x4a, 0x4a, 0x29, 0xa3, 0x1e, 0x8c, 0x92, 0x5c, 0x6d, 0x9d, 0xce, 0x6a, 0x6a, 0xea,
0xe6, 0xc3, 0xef, 0x65, 0xee, 0x39, 0xff, 0x7b, 0xce, 0x7f, 0xfe, 0x83, 0x38, 0xe7, 0x68, 0x21,
0x8c, 0xe1, 0x55, 0x8c, 0x09, 0x09, 0xcc, 0x22, 0x66, 0x30, 0x22, 0xe6, 0x32, 0x26, 0x1d, 0xc2,
0x18, 0xfb, 0x78, 0xaa, 0x5d, 0xd4, 0x68, 0xa5, 0x42, 0x19, 0xa5, 0xe2, 0x20, 0xa3, 0xe2, 0xc8,
0x3c, 0x98, 0xf8, 0x9e, 0x11, 0xc9, 0x60, 0xb1, 0xe0, 0xd5, 0x1e, 0x05, 0x2c, 0x96, 0xb2, 0x08,
0x46, 0x85, 0x1e, 0x2b, 0x34, 0x1b, 0xad, 0xc6, 0xcf, 0x85, 0x8e, 0xd7, 0xa3, 0xb9, 0x8e, 0xb7,
0x63, 0x3a, 0xc7, 0x87, 0xf1, 0x62, 0x47, 0xd7, 0x8f, 0x1b, 0x56, 0xf3, 0x30, 0x08, 0x7d, 0x04,
0x3a, 0x64, 0x59, 0xd8, 0x30, 0x4f, 0xc0, 0x66, 0xbb, 0x1c, 0x02, 0x1f, 0xda, 0x28, 0x95, 0xfa,
0xf2, 0xcc, 0xcf, 0xbe, 0xa7, 0x99, 0x06, 0x5c, 0x9b, 0xc4, 0xfe, 0x49, 0x45, 0x51, 0x1f, 0x0f,
0x29, 0xe8, 0xe5, 0x5b, 0xf0, 0x9b, 0x49, 0x4d, 0xfd, 0x3b, 0xd7, 0x79, 0xb9, 0x73, 0x04, 0x6a,
0x7a, 0x61, 0x9a, 0xce, 0x06, 0x19, 0x87, 0xcf, 0x0a, 0xc0, 0x41, 0x35, 0xa3, 0xd2, 0x73, 0x9d,
0xb1, 0xfd, 0x6b, 0x6c, 0x65, 0x8f, 0xcb, 0xeb, 0xcc, 0x4b, 0x8e, 0xb4, 0x7f, 0xc9, 0x9e, 0xc6,
0x5b, 0xfb, 0x82, 0xc7, 0x56, 0x74, 0xbb, 0xb2, 0x0c, 0x4f, 0x60, 0x25, 0xa9, 0x0b, 0x7a, 0x4a,
0xa7, 0x04, 0xea, 0xea, 0x4a, 0x82, 0xc1, 0xa8, 0x87, 0xb8, 0xae, 0xbe, 0x7b, 0x3f, 0xee, 0x98,
0xf0, 0x3e, 0xdd, 0xc1, 0x51, 0x96, 0x67, 0xbc, 0x80, 0x38, 0xfd, 0xd3, 0xdf, 0x7a, 0x63, 0xed,
0x2b, 0x10, 0x68, 0x05, 0xcf, 0x14, 0xc8, 0x46, 0x24, 0x15, 0xec, 0xdd, 0xa2, 0xc1, 0xb7, 0x3f,
0x85, 0xe9, 0x1e, 0x71, 0x94, 0xf9, 0xf8, 0x1f, 0xda, 0x17, 0xb1, 0x56, 0xd7, 0xc6, 0xd5, 0x42,
0xcb, 0x37, 0x30, 0xba, 0x19, 0x6e, 0x2a, 0x11, 0x11, 0x22, 0x66, 0xc1, 0xfe, 0x24, 0x26, 0xdf,
0xe1, 0xf4, 0x39, 0xd1, 0xca, 0x51, 0xc6, 0x83, 0x25, 0xf1, 0x3d, 0x79, 0x9f, 0xc7, 0xe6, 0xdb,
0x47, 0xe1, 0xa7, 0x32, 0xf8, 0x71, 0x0c, 0xd9, 0xa8, 0x70, 0x04, 0xc6, 0xa9, 0x89, 0xca, 0x31,
0x8e, 0xfa, 0xa6, 0xdf, 0xe1, 0x28, 0xed, 0xde, 0x92, 0x78, 0xa7, 0xdd, 0xe5, 0xdb, 0xb3, 0x0d,
0x4e, 0x58, 0xbb, 0x1a, 0x26, 0xd0, 0xb8, 0x0d, 0xdc, 0x07, 0xe3, 0xe8, 0x77, 0x64, 0x56, 0x0d,
0xfb, 0xa7, 0x30, 0x8e, 0x34, 0xb7, 0xa6, 0x39, 0xbe, 0x90, 0x9b, 0x53, 0x04, 0x68, 0x08, 0x8f,
0x3a, 0x55, 0x31, 0x08, 0xcd, 0xe5, 0x76, 0x82, 0xf7, 0xba, 0xc3, 0xa3, 0x00, 0x91, 0xc2, 0xcc,
0x0b, 0x25, 0xf6, 0x70, 0xb5, 0x30, 0x86, 0x8e, 0xda, 0xf8, 0x52, 0xac, 0x53, 0x97, 0x3b, 0x53,
0xce, 0x5d, 0x6a, 0xa6, 0x54, 0x28, 0x30, 0x99, 0x8a, 0x57, 0x4e, 0x5d, 0xa3, 0x9d, 0x4a, 0xf1,
0x84, 0x08, 0xba, 0x88, 0xb8, 0xb3, 0x5f, 0x82, 0x94, 0xe5, 0x13, 0x48, 0x2d, 0xf3, 0x39, 0xcc,
0xb3, 0x04, 0x2a, 0xa5, 0x09, 0xa8, 0x19, 0x32, 0x1a, 0x85, 0x3c, 0x88, 0x77, 0xd2, 0x6c, 0x0e,
0xdc, 0xf1, 0x04, 0xc5, 0xd4, 0xaa, 0xab, 0x17, 0xb5, 0x8a, 0xdd, 0x19, 0x03, 0x01, 0xd1, 0x39,
0x4e, 0x9f, 0x03, 0x7a, 0x8e, 0xe2, 0x0d, 0xdc, 0xeb, 0x70, 0x0d, 0x5f, 0x76, 0xb0, 0x92, 0x07,
0x45, 0x6b, 0x7f, 0xad, 0xd9, 0x95, 0x3e, 0x7c, 0x05, 0x6a, 0x98, 0x45, 0x48, 0x6e, 0x68, 0xc0,
0x2b, 0xe6, 0x45, 0xd9, 0x9d, 0x46, 0x10, 0x51, 0x1a, 0x6a, 0x8b, 0x93, 0x76, 0xaa, 0x52, 0xae,
0x07, 0x6f, 0x4b, 0xec, 0x5f, 0xbe, 0x31, 0x6e, 0xdc, 0x2f, 0x52, 0xf9, 0x33, 0x70, 0x73, 0xc2,
0x50, 0xb4, 0x2a, 0xf5, 0x9a, 0xd9, 0x5c, 0xaa, 0x72, 0x3f, 0xac, 0xc6, 0xc6, 0x92, 0x60, 0x8f,
0x8f, 0xc9, 0x64, 0xc2, 0xfe, 0xe0, 0xc7, 0x56, 0x4a, 0xcb, 0x62, 0x66, 0xb0, 0x11, 0x71, 0xcf,
0x0c, 0x0e, 0x22, 0x44, 0xda, 0xed, 0x45, 0x01, 0xff, 0x7d, 0x8d, 0x73, 0x42, 0x26, 0x5f, 0x10,
0x0b, 0x25, 0x04, 0xaf, 0x97, 0xe5, 0xd2, 0xb0, 0xa6, 0x26, 0x1c, 0x0a, 0x66, 0xfb, 0x79, 0xaa,
0xfd, 0x03, 0x46, 0x3c, 0x41, 0xae, 0xe6, 0xa0, 0x09, 0xfa, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45,
0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE tree_nosel_xpm[1] = {{ png, sizeof( png ), "tree_nosel_xpm" }};
......
......@@ -8,45 +8,49 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x08, 0x06, 0x00, 0x00, 0x00, 0x1f, 0xf3, 0xff,
0x61, 0x00, 0x00, 0x02, 0x4a, 0x49, 0x44, 0x41, 0x54, 0x38, 0xcb, 0x63, 0xf8, 0xff, 0xff, 0x3f,
0x03, 0x32, 0x9e, 0x37, 0xaf, 0x52, 0x74, 0xee, 0xdc, 0x1a, 0xf5, 0x99, 0x33, 0x1b, 0x44, 0xd0,
0xe5, 0xb0, 0x61, 0x38, 0x03, 0xa4, 0x69, 0xc1, 0xbc, 0xba, 0x65, 0x33, 0x56, 0x14, 0xbe, 0x9f,
0xb9, 0xac, 0xe8, 0xfd, 0xfc, 0x79, 0xb5, 0xaf, 0x80, 0x78, 0xc3, 0xbc, 0x79, 0x0d, 0x4a, 0x04,
0x0d, 0x98, 0x3f, 0xbf, 0x41, 0x01, 0xa8, 0xf9, 0x70, 0xc1, 0x61, 0xfb, 0x57, 0xee, 0x57, 0x84,
0x7f, 0xb9, 0x5c, 0x12, 0xfc, 0xed, 0x7d, 0x45, 0xec, 0x67, 0xd2, 0x19, 0xfd, 0x0f, 0xf3, 0xe6,
0xd5, 0x1e, 0xeb, 0xe9, 0x6b, 0x2e, 0x5d, 0xb0, 0x68, 0xde, 0xb1, 0xce, 0xce, 0xb6, 0x10, 0xac,
0x06, 0x2c, 0x98, 0x57, 0xdb, 0x1c, 0xb1, 0x4f, 0xf7, 0x85, 0xc9, 0x01, 0x8e, 0x3f, 0x1a, 0xbb,
0x19, 0xfe, 0xc3, 0xb0, 0xe9, 0x7e, 0xae, 0x3f, 0xb5, 0x4b, 0xd3, 0xdf, 0x9c, 0x3a, 0x7d, 0xe2,
0xe7, 0xee, 0x3d, 0xbb, 0x5e, 0x34, 0x37, 0xd7, 0x68, 0x82, 0xd4, 0x37, 0x34, 0x34, 0xf0, 0xc0,
0x0d, 0x98, 0x34, 0x29, 0x97, 0x7d, 0xf6, 0xfc, 0xca, 0x25, 0x56, 0x9b, 0x44, 0x3f, 0xa9, 0x6d,
0x62, 0xf8, 0x8f, 0x8e, 0x67, 0x6d, 0x9c, 0xf8, 0xe7, 0xed, 0xdb, 0xb7, 0xff, 0x17, 0x2f, 0x59,
0x78, 0x0c, 0xac, 0x81, 0x81, 0x81, 0x71, 0xf6, 0xdc, 0x59, 0xa7, 0xa6, 0x4c, 0x9b, 0x38, 0x0d,
0xcc, 0x07, 0x9a, 0xc6, 0x32, 0x67, 0x5e, 0x55, 0x9f, 0xfe, 0x02, 0xe1, 0x8f, 0x2a, 0x2b, 0x19,
0xfe, 0xa3, 0xe3, 0xfe, 0xa5, 0xed, 0xbf, 0x3f, 0x7c, 0xf8, 0xf0, 0x7f, 0xff, 0xfe, 0x7d, 0xaf,
0xa6, 0x4e, 0x9f, 0x3c, 0x7f, 0xf2, 0x94, 0x09, 0xbb, 0x2e, 0x5d, 0xba, 0xf8, 0x73, 0xc1, 0xc2,
0x79, 0xc7, 0xe1, 0x5e, 0x00, 0xfa, 0x33, 0xc5, 0xa4, 0x5b, 0xf9, 0xb2, 0xe2, 0x1c, 0x96, 0xbf,
0x4a, 0x0b, 0x19, 0xfe, 0xc3, 0xf1, 0x7c, 0xc6, 0xff, 0xe1, 0x5d, 0x7e, 0x2f, 0x6f, 0xdf, 0xbe,
0xfd, 0xf7, 0xd1, 0xa3, 0x47, 0xff, 0x5f, 0xbe, 0x7c, 0xf9, 0x1f, 0x44, 0x03, 0x0d, 0xf8, 0xdd,
0xdb, 0xdf, 0xdd, 0x8a, 0x12, 0x88, 0x93, 0x67, 0x94, 0x24, 0xca, 0x97, 0x4a, 0xde, 0x93, 0xe9,
0xe0, 0xf8, 0x25, 0xdb, 0xc7, 0xf2, 0x5f, 0xb6, 0x8b, 0xfd, 0xa7, 0x56, 0x99, 0xea, 0x8d, 0x35,
0xeb, 0x57, 0xbe, 0x7e, 0xf6, 0xec, 0xd9, 0xff, 0x3b, 0x77, 0xee, 0xfc, 0xdf, 0xba, 0x6d, 0xf3,
0xd3, 0xb5, 0xeb, 0x56, 0x5f, 0x9f, 0x30, 0xa9, 0xa7, 0x2b, 0x34, 0x34, 0x94, 0x19, 0x25, 0x1a,
0xe7, 0xcd, 0xab, 0x96, 0x6d, 0x99, 0x94, 0xe5, 0xeb, 0x55, 0xe8, 0x56, 0xa8, 0x9f, 0xa5, 0x3f,
0xd1, 0x28, 0xcb, 0xa8, 0x6f, 0xee, 0x82, 0x99, 0xe7, 0x1f, 0x3f, 0x7e, 0xfc, 0xff, 0xd5, 0xab,
0x57, 0xff, 0xb7, 0x6d, 0xdf, 0xfa, 0xb4, 0xa6, 0xb9, 0x46, 0x1d, 0x67, 0x3a, 0x00, 0xe1, 0x99,
0x33, 0xd3, 0x58, 0xe7, 0xcc, 0x69, 0x10, 0x5a, 0xb4, 0xa8, 0x41, 0x6c, 0xd2, 0xa4, 0x9e, 0xe6,
0xcb, 0x97, 0x2f, 0x7d, 0x03, 0x39, 0xfb, 0xc2, 0xc5, 0xf3, 0x1f, 0xfa, 0x26, 0xf6, 0xa6, 0xe2,
0x4d, 0x48, 0xc8, 0xb8, 0xa1, 0xb5, 0x41, 0x67, 0xd7, 0xae, 0x1d, 0xcf, 0x9f, 0x3c, 0x79, 0xf2,
0xff, 0xc1, 0x83, 0xfb, 0x7f, 0x66, 0xcf, 0x99, 0xbe, 0x92, 0x60, 0x4a, 0x84, 0xe1, 0xdc, 0xdc,
0x5c, 0xf6, 0xc5, 0x8b, 0x17, 0x5c, 0x06, 0xf9, 0x19, 0x64, 0xc0, 0x92, 0x65, 0x8b, 0x2e, 0x02,
0x63, 0x8a, 0x8d, 0x68, 0x03, 0xa6, 0x4c, 0x9b, 0xb4, 0xec, 0xc2, 0x85, 0xf3, 0x7f, 0xee, 0xdd,
0xbb, 0xf7, 0x7f, 0xcb, 0xd6, 0x4d, 0x8f, 0x1b, 0x1a, 0x2a, 0x14, 0x88, 0xca, 0x0b, 0x20, 0xdc,
0xdc, 0xdc, 0xe0, 0xb2, 0x7d, 0xfb, 0xd6, 0x4f, 0x67, 0xcf, 0x9e, 0xfd, 0x7f, 0xe8, 0xf0, 0xa1,
0x77, 0x3d, 0xfd, 0x9d, 0x31, 0x44, 0x67, 0x26, 0x10, 0x6e, 0xef, 0x6c, 0x2d, 0xda, 0xb3, 0x77,
0xcf, 0x9f, 0xfd, 0x07, 0xf6, 0xfd, 0x9a, 0x3e, 0x73, 0xca, 0x3c, 0x92, 0x72, 0x23, 0x34, 0x8d,
0x33, 0xf5, 0xf4, 0x75, 0xd5, 0xf7, 0x4d, 0xe8, 0x2e, 0x22, 0x46, 0x33, 0x08, 0x03, 0x00, 0xa3,
0x36, 0xa6, 0x81, 0xc6, 0x70, 0x96, 0x32, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae,
0x42, 0x60, 0x82,
0x61, 0x00, 0x00, 0x02, 0x97, 0x49, 0x44, 0x41, 0x54, 0x38, 0xcb, 0x75, 0x93, 0x4b, 0x4c, 0x13,
0x51, 0x14, 0x86, 0xaf, 0x3c, 0x62, 0xa3, 0xf2, 0x7e, 0x23, 0x2d, 0xb4, 0xf2, 0x10, 0x82, 0x41,
0xa2, 0x06, 0x25, 0x24, 0x2e, 0x80, 0x28, 0xd4, 0x00, 0x8a, 0xf1, 0x85, 0xb0, 0xd1, 0x44, 0xa3,
0x9b, 0x2a, 0x6f, 0x98, 0x19, 0xc7, 0x17, 0x2b, 0xf0, 0x99, 0xa0, 0xed, 0xf4, 0xde, 0x3b, 0x6d,
0x91, 0x50, 0x8d, 0x62, 0xb4, 0x44, 0x5d, 0xb8, 0x01, 0xa2, 0x21, 0x24, 0x74, 0xa1, 0x46, 0x70,
0x41, 0x82, 0x31, 0x26, 0x9a, 0x14, 0x8d, 0x89, 0xad, 0xf2, 0xe8, 0xf5, 0x0c, 0x2a, 0x84, 0x32,
0x2c, 0xbe, 0xc5, 0x64, 0xce, 0xfd, 0xef, 0x7f, 0xfe, 0x7b, 0x0e, 0x62, 0x8c, 0xa1, 0x40, 0x1c,
0x98, 0xcf, 0xa3, 0x56, 0xae, 0x59, 0x26, 0x42, 0x07, 0xd0, 0x8d, 0x31, 0x57, 0x6f, 0x36, 0x8b,
0x3a, 0xb5, 0xda, 0x65, 0x1f, 0x76, 0x3b, 0x97, 0x2d, 0x13, 0xde, 0x46, 0x09, 0xef, 0x01, 0xa6,
0x03, 0xf0, 0x50, 0xcc, 0x3f, 0x73, 0x58, 0xc5, 0x74, 0x55, 0x01, 0x59, 0xe6, 0xb7, 0x41, 0xc1,
0x04, 0x91, 0xdb, 0xa6, 0xb8, 0x61, 0xa3, 0xe7, 0xf0, 0x97, 0x84, 0xd9, 0xea, 0xef, 0x91, 0xfe,
0x03, 0x3f, 0x22, 0xfc, 0x35, 0x9f, 0xb4, 0x33, 0xdc, 0xab, 0x32, 0x8f, 0xd5, 0xd6, 0x3a, 0x45,
0x89, 0xe0, 0xb6, 0xdb, 0xc5, 0xed, 0xcb, 0x04, 0x08, 0x11, 0x0d, 0x94, 0xf2, 0xc3, 0x77, 0x7a,
0xcf, 0xbd, 0xdf, 0x3f, 0x19, 0x3f, 0x53, 0xfa, 0x21, 0x7c, 0x7e, 0xeb, 0x48, 0x30, 0xcb, 0x19,
0x42, 0x2c, 0x7b, 0x10, 0xb1, 0xfc, 0xd1, 0x60, 0x56, 0x32, 0x11, 0x36, 0x7f, 0x68, 0x5c, 0xe7,
0xbb, 0xdb, 0xd3, 0xf0, 0x0e, 0xda, 0x1a, 0x85, 0xb6, 0xb2, 0x16, 0x05, 0x28, 0xe6, 0x2c, 0x92,
0xdc, 0xf2, 0xba, 0x72, 0x2c, 0xc5, 0x5b, 0x30, 0xa2, 0xf1, 0x6f, 0x7e, 0x89, 0x98, 0x1a, 0xca,
0xbf, 0x7d, 0x63, 0x49, 0x3e, 0x4c, 0xb9, 0x61, 0x70, 0x7b, 0x75, 0x41, 0x40, 0x92, 0xda, 0x12,
0x94, 0xde, 0x4c, 0x4f, 0xf6, 0xbe, 0x2d, 0x1c, 0x0c, 0x9f, 0xcb, 0x7a, 0x81, 0xd8, 0x02, 0xcf,
0xd5, 0x29, 0x1a, 0x8c, 0x9c, 0x6d, 0x7c, 0x5c, 0xe1, 0x06, 0xc7, 0x2e, 0x49, 0xe2, 0xf4, 0x60,
0x5f, 0xa8, 0x24, 0x84, 0x77, 0x96, 0x0c, 0xa4, 0x4e, 0xe7, 0x0c, 0x84, 0xb0, 0x4c, 0x17, 0x5a,
0xe2, 0xe9, 0x4a, 0x72, 0x5c, 0x21, 0xac, 0xd8, 0xa5, 0xfd, 0x46, 0x09, 0xd7, 0x47, 0x29, 0x57,
0x8e, 0x6c, 0x84, 0x3f, 0x0e, 0xc9, 0x4b, 0xf9, 0x0f, 0xa2, 0xe7, 0x32, 0xfa, 0xd7, 0xb0, 0x8c,
0x7e, 0xb4, 0x92, 0x47, 0x4b, 0x64, 0x3e, 0x0c, 0x62, 0x3b, 0x9c, 0x09, 0x3f, 0x95, 0xb6, 0xe1,
0xa9, 0xab, 0x20, 0x7d, 0xc1, 0x08, 0x2d, 0x74, 0xe5, 0xe2, 0x78, 0x5f, 0xba, 0x33, 0x88, 0xa5,
0xdf, 0x47, 0xea, 0x38, 0xff, 0xd1, 0x17, 0xc4, 0x72, 0xa5, 0x78, 0x1f, 0x38, 0xef, 0x94, 0xb1,
0x50, 0x8d, 0x30, 0x6e, 0x2f, 0xa2, 0x58, 0x10, 0xf3, 0x6e, 0x68, 0x3f, 0x1b, 0x68, 0x28, 0xdb,
0x74, 0x0f, 0xad, 0x4e, 0x0f, 0x62, 0x06, 0x69, 0x2d, 0x2b, 0xb8, 0x99, 0x31, 0x0e, 0xae, 0x05,
0x4a, 0xc5, 0x9d, 0x90, 0x41, 0x6b, 0x1c, 0x38, 0x38, 0x5f, 0x77, 0xcd, 0x68, 0x49, 0xed, 0x88,
0xf1, 0x1a, 0x64, 0x28, 0x0a, 0x40, 0xff, 0x1f, 0x8a, 0x98, 0xee, 0x4a, 0xcc, 0xaf, 0xba, 0xae,
0x72, 0x09, 0xce, 0x98, 0x30, 0x6e, 0x0a, 0xfb, 0xfb, 0x8c, 0x54, 0x28, 0x85, 0x20, 0x4f, 0xea,
0x1b, 0x75, 0x93, 0x1b, 0x2f, 0x86, 0xcf, 0xa4, 0x59, 0x10, 0x4b, 0x93, 0x56, 0x92, 0x7c, 0x21,
0xe2, 0x77, 0x56, 0xb3, 0xc1, 0x0d, 0x33, 0x70, 0x42, 0xb6, 0x0a, 0xc6, 0xc5, 0x39, 0xe8, 0xee,
0x6e, 0x89, 0x22, 0x84, 0x3b, 0x78, 0xcb, 0x52, 0x5f, 0xa3, 0x3b, 0x93, 0xe6, 0x8e, 0x3e, 0x1b,
0xe3, 0x4d, 0xbc, 0xa4, 0xf1, 0xa7, 0x5c, 0x0f, 0x66, 0x29, 0x9d, 0x21, 0x2c, 0xf1, 0xb2, 0x86,
0x45, 0x9d, 0x8a, 0xf3, 0x6a, 0x4f, 0xa7, 0xbe, 0xb9, 0x6d, 0x6e, 0x38, 0x26, 0x63, 0xae, 0x42,
0xb9, 0x7d, 0xd9, 0x28, 0x5b, 0xad, 0x62, 0x34, 0x04, 0x5a, 0x8c, 0x71, 0x5b, 0x59, 0xb1, 0x69,
0x37, 0x9f, 0x54, 0xab, 0x1f, 0xda, 0x70, 0x24, 0xf1, 0x6b, 0xc4, 0xd1, 0xa4, 0x8f, 0x71, 0xb5,
0xba, 0xd1, 0xaa, 0xa6, 0x32, 0x13, 0x04, 0xb7, 0x47, 0x71, 0xab, 0x5c, 0xa8, 0xba, 0x4c, 0xb0,
0x71, 0xeb, 0x60, 0x40, 0xb6, 0x10, 0xd2, 0x5e, 0x68, 0xc3, 0xfc, 0xae, 0x40, 0x1c, 0x30, 0xbe,
0x76, 0x7b, 0xc3, 0xfa, 0x55, 0xb7, 0x71, 0x49, 0xc8, 0x1c, 0x0a, 0x62, 0xb1, 0x18, 0x8b, 0xc9,
0xca, 0xa4, 0xf6, 0xf6, 0x8a, 0xb1, 0x90, 0xb8, 0x46, 0xad, 0xf6, 0x0f, 0xc1, 0xb7, 0x26, 0x9c,
0x1b, 0xea, 0xf7, 0x51, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE tree_sel_xpm[1] = {{ png, sizeof( png ), "tree_sel_xpm" }};
......
......@@ -8,61 +8,30 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x03, 0x51, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0x63, 0xf8, 0xff, 0xff, 0x3f,
0x03, 0x3d, 0x30, 0x98, 0x08, 0x0d, 0x0d, 0x65, 0x36, 0xb3, 0xb1, 0x38, 0x60, 0x6e, 0x6e, 0x7e,
0x11, 0x19, 0x83, 0xc4, 0x1c, 0x1c, 0x1c, 0x58, 0xa8, 0x66, 0x91, 0xa7, 0xa7, 0x27, 0xbb, 0x99,
0xa5, 0xd9, 0x79, 0x8d, 0x9d, 0x96, 0xb7, 0xd5, 0xb7, 0x59, 0xdc, 0x57, 0xdf, 0x6c, 0xff, 0x44,
0x63, 0x83, 0xc7, 0x6b, 0x13, 0x33, 0xef, 0x0f, 0x1a, 0x1a, 0xf7, 0x8f, 0xeb, 0xe8, 0xfc, 0x59,
0xa4, 0xab, 0xfb, 0xaf, 0x53, 0x47, 0xe7, 0x5f, 0x89, 0x8e, 0xce, 0xdf, 0x58, 0x5d, 0xdd, 0x3f,
0x2e, 0xc6, 0xc6, 0xff, 0x59, 0xc9, 0xb6, 0x48, 0x7d, 0x9d, 0xeb, 0x5b, 0xcd, 0x95, 0x61, 0x3f,
0xb5, 0x96, 0xc7, 0xff, 0x07, 0x61, 0x13, 0xb3, 0x98, 0xff, 0xba, 0xba, 0xbf, 0xfe, 0xeb, 0xe8,
0xfc, 0xc7, 0xc0, 0xda, 0xda, 0x3f, 0x5f, 0x68, 0x6a, 0x3e, 0xab, 0x30, 0x36, 0x7e, 0xc6, 0xc5,
0xc0, 0xc0, 0x40, 0xa2, 0x8f, 0xd6, 0x7a, 0x7d, 0x00, 0x59, 0xa0, 0xb9, 0x32, 0xe2, 0x97, 0xc6,
0x1a, 0xaf, 0x0f, 0x46, 0x26, 0xb6, 0xaf, 0xb8, 0xb8, 0xb4, 0xab, 0x79, 0x78, 0x1c, 0xeb, 0x84,
0x84, 0xb2, 0xfa, 0x24, 0x24, 0x7a, 0xe6, 0xc9, 0xca, 0x2e, 0x5f, 0xa7, 0xa2, 0x72, 0xe1, 0x8c,
0xb6, 0xf6, 0xbf, 0xbf, 0x10, 0x0b, 0xbf, 0xbf, 0x57, 0x57, 0x7f, 0xda, 0xac, 0xaa, 0xfa, 0x8e,
0x0f, 0x9f, 0x85, 0x28, 0x16, 0xa9, 0x6d, 0xb4, 0x78, 0xaa, 0xbe, 0xde, 0xe9, 0x8d, 0xda, 0x46,
0xf3, 0x27, 0x20, 0x6c, 0x68, 0x62, 0xf8, 0x98, 0x95, 0x95, 0xb5, 0x00, 0xa8, 0x3f, 0x0d, 0x8a,
0x33, 0xa1, 0x74, 0x0a, 0x1f, 0x9f, 0x6f, 0xbd, 0x8a, 0xca, 0x99, 0x93, 0x30, 0x0b, 0xb5, 0xb4,
0xbe, 0xbe, 0x91, 0x91, 0x59, 0xe4, 0x00, 0x94, 0x63, 0xc4, 0x9b, 0x18, 0xcc, 0xad, 0xcd, 0x0f,
0x1b, 0x99, 0x18, 0x3d, 0x02, 0x19, 0x8e, 0x84, 0xef, 0x30, 0x31, 0x31, 0x65, 0x00, 0x35, 0xf3,
0x83, 0x0c, 0x00, 0x62, 0x16, 0x20, 0x16, 0x00, 0x62, 0x19, 0x20, 0x36, 0x06, 0x59, 0xc8, 0xc3,
0xe3, 0x55, 0xa3, 0xa6, 0x76, 0xef, 0x06, 0xd4, 0x77, 0x5f, 0x24, 0x25, 0x7b, 0x40, 0x0e, 0x61,
0xc2, 0x6a, 0x11, 0x08, 0x83, 0x52, 0x17, 0xd0, 0xf5, 0x99, 0x40, 0x9c, 0x05, 0xc3, 0x50, 0x4b,
0x40, 0x98, 0x17, 0x45, 0x13, 0x02, 0xb0, 0x02, 0xb1, 0x11, 0x2b, 0xab, 0x6c, 0xb6, 0x86, 0xc6,
0xab, 0x27, 0x10, 0x9f, 0x7d, 0xfb, 0xc4, 0xc3, 0xe3, 0x1d, 0x01, 0x14, 0x67, 0xc6, 0x6a, 0x11,
0x14, 0x88, 0x03, 0xb1, 0x1a, 0x1a, 0x96, 0xc3, 0x1b, 0xf6, 0x10, 0xc0, 0xc6, 0xcb, 0xeb, 0x9b,
0x0c, 0x0c, 0xbe, 0x8f, 0x20, 0xcb, 0xd4, 0xd5, 0x1f, 0xdd, 0x62, 0x61, 0xe1, 0xb5, 0x46, 0x0e,
0x46, 0x06, 0x1c, 0x2e, 0x45, 0x01, 0x44, 0x25, 0x5f, 0xa0, 0x65, 0x42, 0x42, 0xf9, 0x75, 0xda,
0xda, 0x7f, 0xc1, 0x71, 0x26, 0x25, 0x35, 0x79, 0x0e, 0x34, 0x88, 0x31, 0x2d, 0xa2, 0x38, 0x53,
0x32, 0x30, 0xf0, 0x29, 0x2b, 0x9f, 0x3d, 0x0c, 0xf1, 0xd5, 0x93, 0xfb, 0x40, 0x7e, 0x1c, 0x2c,
0xbe, 0xa8, 0x6d, 0x11, 0x83, 0x94, 0xd4, 0x74, 0x6b, 0x98, 0xaf, 0x04, 0x05, 0x13, 0x5b, 0x60,
0x41, 0x4f, 0xfd, 0x32, 0x0d, 0x18, 0x2f, 0x1a, 0x1a, 0x2f, 0xc0, 0xa9, 0x50, 0x5a, 0x7a, 0xe1,
0x4a, 0x20, 0x3f, 0x00, 0x9c, 0x62, 0x69, 0x60, 0x11, 0x83, 0xa6, 0xe6, 0x9b, 0xe5, 0x20, 0x8b,
0x14, 0x15, 0x0f, 0xec, 0x07, 0x72, 0xd3, 0x69, 0x62, 0x11, 0x08, 0x6b, 0x6b, 0x7f, 0x2b, 0x07,
0x59, 0xa4, 0xaa, 0x7a, 0xed, 0x22, 0xd4, 0x22, 0x6e, 0x9a, 0x58, 0x04, 0x2c, 0x80, 0xeb, 0x40,
0x16, 0x29, 0x2b, 0x9f, 0x3b, 0x05, 0xca, 0xd4, 0xa0, 0xa8, 0xa3, 0x91, 0x8f, 0xfe, 0xcd, 0x04,
0x59, 0xa4, 0xa0, 0xb0, 0x6f, 0x2f, 0xd4, 0x22, 0x49, 0xb8, 0xa4, 0xa5, 0xa5, 0x25, 0xa7, 0xba,
0xba, 0x3a, 0x2f, 0x32, 0x06, 0x16, 0x4d, 0x6c, 0xc4, 0x1a, 0xde, 0xd0, 0xd0, 0xc0, 0x04, 0x2a,
0x33, 0x41, 0x58, 0x57, 0xf7, 0xc7, 0x19, 0x50, 0xa9, 0x2f, 0x2b, 0xbb, 0x60, 0x35, 0xb4, 0x6c,
0x14, 0x00, 0x2b, 0x32, 0x36, 0x36, 0x16, 0x31, 0xb3, 0x32, 0x3b, 0x65, 0x66, 0x63, 0x7e, 0x1a,
0x09, 0x9f, 0x31, 0xb3, 0x35, 0xdf, 0x81, 0xab, 0x90, 0x44, 0xc7, 0x66, 0xf6, 0x16, 0xab, 0x40,
0x05, 0xb3, 0x99, 0x85, 0xc3, 0x2d, 0x50, 0xf5, 0x02, 0xc2, 0x86, 0x26, 0x16, 0x4f, 0xb8, 0xb9,
0xb9, 0x2b, 0x40, 0x99, 0x19, 0xa2, 0xc8, 0xcc, 0x4c, 0xd1, 0xcc, 0xd5, 0xfc, 0x98, 0xfa, 0x56,
0x8b, 0xfb, 0x6a, 0x9b, 0xcd, 0x1f, 0x81, 0xb0, 0xfa, 0x1a, 0xf3, 0x47, 0x86, 0x66, 0x86, 0xf7,
0xa0, 0xc9, 0x93, 0x89, 0xa0, 0x45, 0x76, 0xe6, 0x07, 0xb5, 0x56, 0x58, 0xdc, 0xd1, 0x58, 0xef,
0xfe, 0x46, 0x73, 0x45, 0xd4, 0x6f, 0xcd, 0x95, 0xe1, 0x3f, 0xf5, 0x9d, 0x0c, 0xef, 0x09, 0x08,
0x08, 0xd4, 0x83, 0xca, 0x4a, 0x64, 0x8b, 0x8e, 0xab, 0x6d, 0x82, 0x54, 0x0f, 0x20, 0xac, 0xbe,
0x0a, 0x58, 0x4d, 0x98, 0x1a, 0x3e, 0x80, 0x56, 0x0d, 0xac, 0xc4, 0x58, 0xa4, 0xb9, 0xc4, 0xec,
0x11, 0x4c, 0xbf, 0xda, 0x46, 0xcb, 0x67, 0x48, 0x16, 0xc9, 0xd0, 0xd0, 0x22, 0xf3, 0x27, 0x50,
0x8b, 0x6a, 0x31, 0x2d, 0x5a, 0x0f, 0x54, 0xb0, 0x0e, 0x82, 0xd5, 0x97, 0x52, 0xcd, 0xa2, 0x1a,
0xb8, 0x45, 0x36, 0x36, 0x36, 0x82, 0x66, 0x56, 0x16, 0x47, 0xd1, 0x2b, 0x3e, 0x5d, 0x53, 0xfd,
0x0b, 0xc4, 0x5a, 0x64, 0xea, 0x60, 0xbe, 0x1c, 0x98, 0xa8, 0x1e, 0x19, 0x19, 0x19, 0x3d, 0x81,
0x61, 0xa0, 0x19, 0x0f, 0x80, 0x89, 0xa1, 0x08, 0x6e, 0x11, 0xb4, 0xe8, 0x60, 0x86, 0xe6, 0xe2,
0x54, 0x34, 0x9c, 0x8e, 0x5e, 0x89, 0xe1, 0x2a, 0xe3, 0x80, 0x38, 0x1c, 0x9a, 0x9c, 0x91, 0xf5,
0x67, 0x80, 0xeb, 0x39, 0xf4, 0x62, 0x1e, 0x88, 0x45, 0xd1, 0x30, 0x1f, 0x09, 0xe5, 0x1c, 0x27,
0x16, 0xfd, 0x42, 0x20, 0x09, 0x00, 0x33, 0xa7, 0x77, 0x70, 0xcd, 0x40, 0x9d, 0x52, 0x00, 0x00,
0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
0xce, 0x00, 0x00, 0x01, 0x67, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xbd, 0xd6, 0xbf, 0x4a, 0x03,
0x41, 0x10, 0x06, 0xf0, 0x31, 0x0a, 0x9a, 0x46, 0x1f, 0x40, 0x04, 0x6b, 0x9f, 0xc0, 0x22, 0xa4,
0x14, 0x2c, 0x6c, 0x2c, 0x94, 0x28, 0x5c, 0x44, 0x2f, 0x85, 0xf1, 0x6f, 0xa9, 0xdd, 0x3d, 0x80,
0x85, 0xf8, 0x0e, 0x5a, 0x08, 0x5a, 0xc6, 0x52, 0xb0, 0x30, 0xb7, 0x47, 0xf0, 0x0d, 0x52, 0x04,
0x6d, 0xb4, 0x0f, 0x8a, 0x45, 0xce, 0xef, 0xbb, 0x5b, 0xb9, 0x20, 0x9e, 0x18, 0x98, 0xbd, 0x62,
0x8e, 0x65, 0x73, 0x3b, 0x3f, 0x66, 0xd9, 0xdb, 0x89, 0xc4, 0x71, 0x2c, 0x45, 0x44, 0xf2, 0x08,
0x82, 0x60, 0xc2, 0xdf, 0xf5, 0xf7, 0x76, 0xf6, 0xfd, 0x1e, 0x83, 0x63, 0xce, 0xa9, 0x43, 0x4c,
0xbc, 0x71, 0xea, 0xf5, 0x17, 0x6f, 0x96, 0x62, 0x06, 0xc7, 0x9c, 0x53, 0x87, 0x58, 0x05, 0x81,
0x85, 0x87, 0x4a, 0x12, 0x1c, 0xd7, 0xb6, 0x0f, 0x3e, 0x44, 0xda, 0x97, 0x22, 0x61, 0x53, 0xe4,
0x71, 0xd6, 0x19, 0xb4, 0x5e, 0x3f, 0xc2, 0xaf, 0xe1, 0x77, 0x0c, 0x10, 0x06, 0xf0, 0xa1, 0x48,
0x6b, 0x52, 0x6d, 0xeb, 0x6a, 0x27, 0xde, 0xfb, 0xf2, 0x4a, 0x70, 0x81, 0xc4, 0x0d, 0xc4, 0x2d,
0x90, 0x7e, 0x86, 0xb6, 0x7b, 0x22, 0xc6, 0xc3, 0xca, 0x92, 0xfa, 0x61, 0xc0, 0xd6, 0x95, 0x01,
0xac, 0x22, 0xa2, 0x21, 0x10, 0xe3, 0x68, 0x6e, 0x24, 0xe8, 0xdf, 0x2f, 0x4b, 0x3c, 0x06, 0x60,
0x0d, 0x50, 0xd7, 0x82, 0xaf, 0x88, 0x8a, 0x3a, 0x94, 0x81, 0x9d, 0x19, 0x00, 0x2d, 0x8b, 0x7d,
0x02, 0xdf, 0x74, 0x02, 0xd9, 0xea, 0x4a, 0x40, 0xce, 0x32, 0x2c, 0xaa, 0x3a, 0x81, 0x32, 0x30,
0x3c, 0x4f, 0x31, 0xf3, 0x86, 0xca, 0xe6, 0x1d, 0x42, 0xd7, 0xe3, 0x40, 0xee, 0x6c, 0x65, 0x9d,
0xbc, 0xd3, 0xa8, 0xf3, 0xd5, 0x4b, 0x38, 0x8d, 0x78, 0xb1, 0xa7, 0x71, 0xcb, 0x19, 0x94, 0x62,
0xa6, 0x6e, 0xab, 0x7a, 0x16, 0xb9, 0x9f, 0x72, 0x08, 0xf1, 0xe8, 0x9b, 0x27, 0x8b, 0x1d, 0x3b,
0x83, 0x52, 0x8c, 0x1f, 0x75, 0x02, 0x19, 0xc7, 0x10, 0x6f, 0x90, 0xe4, 0xba, 0x1a, 0xfc, 0xbc,
0x88, 0xf5, 0x1b, 0x5c, 0x7a, 0x37, 0xb2, 0xaa, 0xa6, 0x6b, 0xa8, 0x61, 0xa1, 0x2b, 0x67, 0x1d,
0x96, 0x6b, 0x78, 0xeb, 0xb3, 0xc5, 0xb0, 0x9f, 0x0d, 0xe7, 0x51, 0xed, 0xb0, 0x5c, 0xc3, 0x16,
0xf3, 0x5b, 0x9e, 0xdc, 0xc6, 0xc7, 0xb9, 0x51, 0xa1, 0xbf, 0xf2, 0x14, 0x0b, 0x69, 0x6e, 0x5d,
0x5e, 0x1e, 0xf5, 0xc3, 0x90, 0x97, 0x47, 0x8a, 0xfa, 0x03, 0xf9, 0x05, 0xe4, 0xc8, 0xfd, 0xf2,
0x75, 0x7b, 0xa3, 0xda, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE add_arc_xpm[1] = {{ png, sizeof( png ), "add_arc_xpm" }};
......
......@@ -8,34 +8,19 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x01, 0x99, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xdd, 0xd4, 0x3b, 0x4f, 0xc2,
0x50, 0x14, 0xc0, 0xf1, 0x8b, 0x6d, 0xaf, 0xb7, 0x0f, 0xa8, 0x0d, 0xa9, 0x14, 0x84, 0xa6, 0x0a,
0x58, 0x92, 0x16, 0x34, 0x42, 0x48, 0xf0, 0x45, 0x51, 0x13, 0x1d, 0xdc, 0x0c, 0x1a, 0xdf, 0x88,
0x9f, 0xc2, 0xd1, 0xd5, 0xc5, 0xdd, 0xd9, 0x38, 0x39, 0xb9, 0xe8, 0x47, 0xd2, 0xc1, 0x0f, 0xe0,
0xe2, 0xf5, 0x54, 0x19, 0x0c, 0x4d, 0x2c, 0xd2, 0x8b, 0x83, 0xc3, 0x3f, 0x69, 0x93, 0xf6, 0xfc,
0xd2, 0xe4, 0xf6, 0x20, 0x4a, 0x29, 0xfa, 0x8b, 0xd0, 0xff, 0x86, 0xe0, 0x2e, 0x06, 0x8d, 0x79,
0x1e, 0xe5, 0x1d, 0x87, 0x62, 0xcb, 0xa2, 0xa4, 0xd1, 0xa0, 0x62, 0xa5, 0x42, 0x65, 0xdb, 0xa6,
0xf1, 0x6a, 0x95, 0xaa, 0x91, 0x21, 0x18, 0x6c, 0xb8, 0x2e, 0xa5, 0x61, 0x0d, 0x8b, 0xfd, 0x1a,
0x32, 0x8c, 0xbb, 0x49, 0xf8, 0xf4, 0xb1, 0x91, 0x43, 0x92, 0xe4, 0xd5, 0x00, 0x12, 0x47, 0x0e,
0x11, 0xe2, 0xb4, 0x00, 0x52, 0x22, 0x1d, 0x06, 0x45, 0xd9, 0xd3, 0x79, 0x3e, 0xb9, 0xce, 0x71,
0x62, 0x1b, 0x21, 0xbc, 0x0b, 0x43, 0x3b, 0x41, 0xc8, 0x5e, 0x8b, 0x0c, 0xf9, 0x03, 0xa0, 0x3a,
0xb4, 0x09, 0x6d, 0x61, 0xec, 0xec, 0x04, 0xa1, 0x7c, 0x8b, 0x05, 0xc4, 0x41, 0x09, 0x28, 0xe9,
0xa7, 0xaa, 0xdd, 0x99, 0x7e, 0x88, 0xe7, 0x2d, 0x2f, 0x32, 0xd4, 0xc3, 0x62, 0xfe, 0xa9, 0xf2,
0x33, 0xcd, 0x47, 0x2d, 0x08, 0x65, 0x9b, 0x4c, 0xa0, 0xef, 0x15, 0x8b, 0x4f, 0x89, 0x20, 0x64,
0xb0, 0x87, 0x4a, 0xa5, 0x87, 0x78, 0x10, 0xd2, 0x57, 0x99, 0x43, 0xba, 0x7e, 0xaf, 0x04, 0x21,
0x6d, 0x85, 0x39, 0x94, 0x4a, 0xdd, 0xca, 0xfd, 0x10, 0xfc, 0xab, 0xcb, 0xcc, 0xa1, 0x4c, 0xe6,
0x46, 0x0a, 0x42, 0xfc, 0x12, 0x73, 0x28, 0x97, 0xbb, 0x16, 0x83, 0x10, 0x5a, 0x64, 0x0e, 0x59,
0xd6, 0x25, 0xe9, 0x87, 0x1c, 0xe7, 0xed, 0xd5, 0x75, 0xdf, 0x5f, 0xe0, 0xfa, 0x79, 0x90, 0x0a,
0x05, 0x3a, 0x1e, 0x0a, 0x21, 0xd4, 0xc6, 0x83, 0xec, 0xbf, 0x9f, 0xd2, 0xb4, 0x2b, 0x15, 0x06,
0xf1, 0x21, 0x50, 0x55, 0x88, 0x0a, 0x61, 0x5c, 0xae, 0xc0, 0x20, 0x3d, 0x04, 0x42, 0x7c, 0x54,
0x88, 0xe3, 0xa6, 0xb6, 0x61, 0x4e, 0x21, 0x14, 0xd2, 0xf5, 0x8b, 0x79, 0x59, 0x6e, 0xee, 0x4b,
0x52, 0xfd, 0x9c, 0x90, 0x5a, 0x97, 0x90, 0x05, 0x68, 0xee, 0x8c, 0x90, 0x72, 0xc7, 0xdf, 0xee,
0x84, 0x94, 0x4e, 0x05, 0x61, 0xf6, 0x44, 0x10, 0xf2, 0xd0, 0xf4, 0x31, 0xc6, 0xe6, 0x11, 0xc6,
0x59, 0x28, 0x7d, 0xc8, 0x71, 0xa9, 0x03, 0x98, 0xe1, 0x43, 0x76, 0x18, 0xe4, 0x2f, 0xd9, 0x34,
0xd4, 0xea, 0xbd, 0x30, 0x4c, 0x1b, 0x50, 0x3e, 0x0c, 0xf2, 0x17, 0xac, 0x0c, 0x99, 0x9f, 0x0f,
0x0f, 0x97, 0x05, 0x4d, 0x84, 0x9f, 0xff, 0xaf, 0x4d, 0x2e, 0x44, 0x8c, 0xfb, 0x00, 0xc6, 0xc7,
0xfe, 0xbc, 0x5c, 0x83, 0xff, 0x17, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42,
0x60, 0x82,
0xce, 0x00, 0x00, 0x00, 0xac, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xbd, 0xd6, 0xbb, 0x0d, 0x84,
0x40, 0x0c, 0x04, 0xd0, 0x69, 0x82, 0x02, 0x88, 0x68, 0x88, 0xfc, 0x02, 0x3a, 0x25, 0xb2, 0x45,
0x39, 0x44, 0x07, 0x81, 0x2f, 0xd8, 0xd5, 0x09, 0xc4, 0x6f, 0x3f, 0x1e, 0x82, 0x89, 0x9f, 0x46,
0x13, 0xd8, 0x30, 0x33, 0x30, 0x02, 0x4c, 0x1d, 0xa0, 0x1f, 0x40, 0x5b, 0x33, 0x03, 0x09, 0x91,
0x1e, 0x90, 0x05, 0x10, 0x03, 0x64, 0x06, 0xc6, 0x86, 0x85, 0xac, 0x11, 0x89, 0xd1, 0xe1, 0x05,
0x44, 0xbe, 0xae, 0x8d, 0x2e, 0x90, 0x15, 0x90, 0xde, 0x6d, 0xa3, 0x27, 0xc4, 0x05, 0x4a, 0x41,
0xaa, 0xa1, 0x54, 0xa4, 0x0a, 0xca, 0x41, 0x8a, 0xa1, 0x5c, 0xa4, 0x08, 0x2a, 0x41, 0xb2, 0xa1,
0x52, 0x24, 0x0b, 0xaa, 0x41, 0x92, 0xa1, 0x5a, 0x24, 0x09, 0xf2, 0x40, 0x1e, 0x21, 0x2f, 0xe4,
0x16, 0xf2, 0x44, 0x2e, 0x21, 0x6f, 0xe4, 0x14, 0x62, 0x20, 0x07, 0x88, 0x85, 0xec, 0x20, 0x26,
0xf2, 0x87, 0xd8, 0x48, 0x30, 0x30, 0x36, 0xe1, 0xdc, 0xf2, 0x90, 0x08, 0xe9, 0xc0, 0x46, 0xb6,
0x8d, 0xe6, 0x88, 0x2c, 0x0c, 0x64, 0xb3, 0x91, 0xb6, 0xe1, 0xd9, 0x9b, 0x3a, 0xd6, 0x43, 0xf9,
0x03, 0x84, 0x61, 0xf2, 0x8b, 0xa0, 0xb8, 0x69, 0x6d, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e,
0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE add_bus_xpm[1] = {{ png, sizeof( png ), "add_bus_xpm" }};
......
......@@ -8,55 +8,31 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x02, 0xe8, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xbd, 0x95, 0x5b, 0x48, 0x14,
0x51, 0x18, 0xc7, 0x77, 0x5b, 0x77, 0x17, 0x33, 0xc4, 0x4c, 0x37, 0x75, 0x57, 0x9b, 0xd9, 0x75,
0xd4, 0xd9, 0x73, 0xce, 0x6c, 0x64, 0xa1, 0x54, 0x66, 0x88, 0x15, 0x6a, 0x50, 0x29, 0x51, 0x6a,
0x86, 0xf5, 0x54, 0x60, 0x18, 0x44, 0xf5, 0x64, 0xa5, 0xbe, 0x44, 0x46, 0x05, 0x81, 0x0f, 0xd1,
0x85, 0x1e, 0x14, 0x4a, 0x23, 0x13, 0xb2, 0x20, 0x2f, 0x89, 0x26, 0x99, 0xa4, 0x26, 0xa9, 0x11,
0x14, 0x3e, 0x95, 0x11, 0x44, 0x64, 0x2f, 0x96, 0x38, 0x7d, 0x87, 0xbe, 0x81, 0x29, 0x76, 0xc7,
0x11, 0x2f, 0x0f, 0x3f, 0x06, 0xe6, 0x9c, 0x39, 0xbf, 0x73, 0xf9, 0xfe, 0x67, 0x2c, 0xaa, 0xaa,
0x5a, 0x96, 0x03, 0xcb, 0xb2, 0x8a, 0x28, 0x55, 0x7b, 0x80, 0x77, 0x1a, 0xe7, 0xd8, 0xcd, 0x1b,
0xa3, 0x84, 0x24, 0x2d, 0x85, 0x68, 0x12, 0x50, 0x35, 0xae, 0xd1, 0x9a, 0x8e, 0x71, 0xc6, 0x3e,
0x0d, 0x31, 0x96, 0xbe, 0xa4, 0xa2, 0x3a, 0x52, 0xd5, 0x3b, 0xae, 0x28, 0xea, 0x98, 0xa2, 0xfc,
0x1c, 0xa4, 0x74, 0xb7, 0xc5, 0x62, 0xb1, 0x2e, 0x58, 0xc4, 0x07, 0xa1, 0x74, 0xf6, 0x8b, 0x5e,
0x54, 0x9b, 0x76, 0x66, 0x98, 0x8b, 0x90, 0xdf, 0x03, 0x94, 0x1e, 0x5f, 0xa8, 0x2c, 0xa8, 0x28,
0xd3, 0xd7, 0xdc, 0xde, 0xe7, 0xf7, 0x4f, 0xe8, 0x64, 0xea, 0x20, 0x63, 0x17, 0xa1, 0xef, 0x8a,
0x45, 0x15, 0x09, 0x42, 0x67, 0x5b, 0x9c, 0xdd, 0x7e, 0xac, 0x3d, 0x2d, 0x6d, 0x44, 0x2f, 0x1b,
0x61, 0xac, 0xe1, 0xba, 0x24, 0x39, 0x17, 0x51, 0xd4, 0xd5, 0x06, 0xef, 0xcb, 0xc2, 0x6d, 0xb6,
0xe2, 0x16, 0x49, 0x7a, 0xae, 0x97, 0xbd, 0x52, 0x32, 0xda, 0x29, 0xfd, 0x75, 0x94, 0x31, 0xb5,
0x7c, 0x2e, 0x02, 0x01, 0xd5, 0x3d, 0x97, 0xe8, 0x31, 0xbc, 0x2f, 0x02, 0xb6, 0x02, 0x3b, 0xee,
0x78, 0xbd, 0x4d, 0x9a, 0xa8, 0x97, 0xe5, 0xfc, 0xd0, 0xf7, 0x35, 0xc2, 0xef, 0x9f, 0xc9, 0x33,
0x23, 0xe2, 0xd5, 0x96, 0x0c, 0xf8, 0x80, 0xec, 0xba, 0xc4, 0xc4, 0xfa, 0x31, 0xc6, 0x66, 0xba,
0x59, 0xce, 0x94, 0x59, 0x91, 0x24, 0x7d, 0xe4, 0x93, 0x5d, 0x09, 0xd8, 0x82, 0x8a, 0xca, 0xa4,
0xab, 0x2f, 0x37, 0x45, 0x44, 0x94, 0x42, 0x9b, 0x07, 0x88, 0xc0, 0xe7, 0x96, 0xd3, 0xf1, 0xf1,
0xb5, 0xcf, 0x68, 0xce, 0x57, 0xb3, 0x22, 0xb7, 0xbb, 0xa1, 0x12, 0xbe, 0x4b, 0x01, 0x56, 0x05,
0x15, 0x9d, 0x4f, 0x3d, 0x35, 0x06, 0xf9, 0x99, 0xbc, 0xe4, 0xf1, 0x64, 0x43, 0x7b, 0x18, 0xe0,
0x04, 0xe2, 0x81, 0x8c, 0x9d, 0xd1, 0xf2, 0x49, 0x51, 0xec, 0x6c, 0x16, 0xc5, 0xee, 0x7b, 0xa2,
0xd8, 0xd5, 0x24, 0x08, 0x1d, 0x0f, 0x42, 0x11, 0x19, 0xb9, 0xbf, 0x02, 0xbe, 0xd9, 0x0c, 0xac,
0x09, 0x29, 0xe2, 0xe7, 0x31, 0xaa, 0x28, 0xdf, 0x7b, 0x64, 0x39, 0x97, 0x97, 0x35, 0xe0, 0x00,
0x5c, 0xc0, 0x06, 0x20, 0x0f, 0x28, 0x04, 0x0e, 0x01, 0x47, 0x0c, 0x28, 0xe1, 0xdb, 0x0e, 0xc4,
0x18, 0x8a, 0xf0, 0x76, 0x98, 0x1e, 0x20, 0xe4, 0x30, 0xca, 0xec, 0x40, 0x34, 0x20, 0x03, 0x59,
0x40, 0x01, 0xb0, 0xd7, 0x80, 0x7c, 0x60, 0x23, 0x10, 0x15, 0x54, 0x94, 0xed, 0x6b, 0xec, 0xea,
0x27, 0xe4, 0xb3, 0xae, 0xac, 0x67, 0x21, 0xb0, 0x55, 0x28, 0x0b, 0xc3, 0x3d, 0x5f, 0x0b, 0x24,
0x01, 0xa2, 0x01, 0xeb, 0x80, 0x58, 0xdc, 0xfa, 0xe0, 0x81, 0xf5, 0x39, 0x9d, 0x15, 0xdd, 0xb2,
0xfc, 0x5e, 0x9f, 0xa1, 0x61, 0xc6, 0x6e, 0x5f, 0x20, 0xc4, 0x81, 0x42, 0x1b, 0xae, 0xd0, 0x61,
0x80, 0x1d, 0xfb, 0x59, 0x0d, 0x03, 0x1b, 0x63, 0xb3, 0x95, 0x3e, 0x4d, 0x4d, 0xed, 0xd7, 0xcb,
0x86, 0xd8, 0xfa, 0x27, 0x84, 0x4c, 0x97, 0x10, 0xa2, 0x1e, 0x34, 0x41, 0x9c, 0xd9, 0xc0, 0x66,
0xc1, 0x9a, 0x77, 0xdd, 0x4f, 0x4e, 0x6e, 0xd3, 0x44, 0x6f, 0x95, 0xc0, 0x92, 0x04, 0x56, 0xc2,
0xc0, 0x6e, 0xaf, 0x17, 0x84, 0xbb, 0xfc, 0xac, 0xde, 0xb0, 0xc0, 0x3c, 0x02, 0x3b, 0x51, 0x68,
0x18, 0x58, 0x14, 0x15, 0x60, 0x50, 0xf9, 0xc1, 0x27, 0xf2, 0xeb, 0xa8, 0xda, 0xed, 0xbe, 0xfc,
0x9a, 0x06, 0xbe, 0x99, 0x15, 0x79, 0x3c, 0x8d, 0x95, 0x38, 0xd9, 0xbf, 0x81, 0x95, 0xe5, 0xa9,
0x6a, 0x49, 0xfa, 0x70, 0xcb, 0xeb, 0xed, 0x7b, 0xc8, 0x25, 0x2e, 0x57, 0xcd, 0x15, 0x14, 0xb9,
0x75, 0x81, 0x4d, 0x00, 0x32, 0x0f, 0xc4, 0xa6, 0x9c, 0x15, 0xc5, 0xde, 0x47, 0xbc, 0xaf, 0x28,
0xbe, 0x68, 0x11, 0xc5, 0x9e, 0xd6, 0x50, 0x44, 0x45, 0x15, 0x9f, 0xf8, 0x27, 0xb0, 0x78, 0xcd,
0x50, 0x0c, 0x61, 0x39, 0x92, 0x8f, 0x83, 0x6b, 0x55, 0xe3, 0xc0, 0x92, 0x4e, 0xc7, 0xb6, 0xa2,
0x79, 0x07, 0x16, 0x08, 0xc7, 0x25, 0xe6, 0x62, 0xd0, 0xf6, 0x60, 0x20, 0x5d, 0xda, 0xcf, 0x0e,
0xfb, 0xd9, 0x71, 0x76, 0x7e, 0x60, 0x1b, 0x9e, 0xe3, 0x3e, 0x03, 0x0a, 0x30, 0xb0, 0xab, 0xb5,
0x8a, 0x08, 0xc3, 0xf4, 0xf2, 0xb3, 0xf0, 0x62, 0xd8, 0x12, 0x70, 0x02, 0x56, 0x5d, 0xe5, 0x58,
0x75, 0x81, 0x8d, 0x03, 0x04, 0x2c, 0x96, 0x50, 0x08, 0x38, 0x59, 0xa7, 0x7e, 0x80, 0xff, 0x03,
0x68, 0x0f, 0xf5, 0xeb, 0xd6, 0xdd, 0x10, 0x0e, 0x13, 0xf0, 0x7e, 0xd6, 0x3f, 0x8d, 0xcc, 0x56,
0x2c, 0x13, 0x1d, 0x81, 0xb3, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60,
0x82,
0xce, 0x00, 0x00, 0x01, 0x72, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0x63, 0xf8, 0xff, 0xff, 0x3f,
0x03, 0xb5, 0xb1, 0x9f, 0x9f, 0x5f, 0x03, 0x32, 0x06, 0x89, 0x81, 0x25, 0x7c, 0x7d, 0x7d, 0x6d,
0x40, 0xd8, 0xdb, 0xdb, 0xdb, 0x16, 0x86, 0x81, 0x0a, 0xec, 0x60, 0x18, 0x28, 0x67, 0x0f, 0xc3,
0xd2, 0xd2, 0xb3, 0x6b, 0x19, 0x18, 0x4e, 0x38, 0x32, 0x30, 0x6c, 0x63, 0x27, 0xd9, 0x22, 0x74,
0x09, 0x5c, 0x58, 0x4c, 0x6c, 0xf9, 0x09, 0xa0, 0x25, 0xff, 0xa1, 0xf8, 0x12, 0x03, 0xc3, 0x31,
0x0d, 0x9a, 0x58, 0xc4, 0xc1, 0xb1, 0xe7, 0x25, 0x92, 0x45, 0x20, 0xfc, 0x19, 0x88, 0x63, 0xa8,
0x6e, 0x91, 0x90, 0xd0, 0xea, 0xf3, 0x68, 0x16, 0x41, 0xf1, 0xc9, 0xd9, 0x40, 0xdf, 0x71, 0x12,
0xb4, 0x08, 0x18, 0x27, 0x2e, 0x20, 0xec, 0xe3, 0xe3, 0xe3, 0x0c, 0xc3, 0xc0, 0xf8, 0x70, 0x82,
0x61, 0xa0, 0x62, 0x47, 0x10, 0x76, 0x71, 0x89, 0x75, 0xe7, 0xe2, 0xda, 0xbe, 0x15, 0xbb, 0x65,
0x88, 0xa0, 0xc4, 0x69, 0x11, 0xa9, 0x18, 0x14, 0x5c, 0xd0, 0x60, 0xfb, 0x8f, 0x2d, 0x28, 0xa9,
0x66, 0x11, 0xc4, 0xb2, 0x63, 0x1a, 0x10, 0x5f, 0x60, 0xfa, 0x4e, 0x58, 0x78, 0xd5, 0x59, 0x4f,
0xcf, 0xf0, 0x16, 0xaa, 0x58, 0x04, 0xb5, 0x8c, 0x93, 0x81, 0xe1, 0xf8, 0x1c, 0x6c, 0x96, 0x81,
0x12, 0x8e, 0xa5, 0x65, 0xde, 0x14, 0xaa, 0x58, 0x44, 0x28, 0x28, 0x99, 0x98, 0x8e, 0xfe, 0xd4,
0xd3, 0x6b, 0x58, 0x48, 0x35, 0x8b, 0xf0, 0x05, 0x25, 0xd0, 0x67, 0x2f, 0x48, 0x4e, 0xde, 0x66,
0x66, 0xa5, 0xd3, 0x41, 0x1a, 0x81, 0x06, 0x1c, 0x04, 0x26, 0xe9, 0x48, 0x62, 0x82, 0x92, 0x93,
0x73, 0xe7, 0x13, 0x92, 0x2d, 0x02, 0x69, 0x42, 0x75, 0x31, 0xc8, 0x50, 0x44, 0xfe, 0x81, 0x61,
0x55, 0xd5, 0xde, 0x35, 0xc0, 0x6c, 0xf0, 0x00, 0xe4, 0x28, 0x90, 0xe3, 0xc8, 0x29, 0x19, 0x5e,
0xe0, 0xcb, 0x3f, 0x54, 0x2b, 0x19, 0x40, 0x11, 0x0b, 0x8a, 0x60, 0x5c, 0xf9, 0x87, 0xa0, 0x45,
0xd4, 0xca, 0x3f, 0xb0, 0xa2, 0x88, 0x8a, 0x25, 0x03, 0xee, 0xfc, 0x03, 0x72, 0x04, 0x2c, 0xff,
0x50, 0x31, 0xc3, 0xe2, 0xce, 0x3f, 0xaa, 0xaa, 0x7d, 0xeb, 0xa8, 0x66, 0x11, 0x71, 0x45, 0x51,
0x68, 0x0b, 0x15, 0x4b, 0x06, 0xdc, 0x41, 0x09, 0xaa, 0x5a, 0xa8, 0x5a, 0x32, 0xe0, 0x0a, 0x4a,
0x50, 0x99, 0x47, 0x75, 0x8b, 0x60, 0x41, 0x89, 0x5c, 0x13, 0x83, 0xaa, 0x7f, 0x9a, 0x58, 0x04,
0xc2, 0x5e, 0x5e, 0x21, 0xcd, 0xc0, 0x3c, 0xb7, 0x40, 0x53, 0xb3, 0x73, 0x05, 0x55, 0x4b, 0x6f,
0xa2, 0xdb, 0x0c, 0xc3, 0xca, 0x22, 0x00, 0x49, 0x09, 0x08, 0x8b, 0x18, 0xbe, 0x02, 0x9f, 0x00,
0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE add_bus2bus_xpm[1] = {{ png, sizeof( png ), "add_bus2bus_xpm" }};
......
......@@ -8,53 +8,36 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x02, 0xd2, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xbd, 0x96, 0x4d, 0x68, 0x13,
0x41, 0x14, 0xc7, 0xa3, 0x55, 0x2b, 0x22, 0x22, 0xa5, 0xb6, 0x64, 0x77, 0xa3, 0x22, 0x81, 0x26,
0x8d, 0x68, 0x76, 0x26, 0xec, 0xa6, 0xf9, 0xb0, 0x11, 0x14, 0x89, 0x8a, 0xa8, 0x10, 0x6c, 0x6d,
0x23, 0x8a, 0x08, 0x7a, 0xf3, 0xe0, 0x51, 0x44, 0xf4, 0x2a, 0x78, 0x11, 0xc4, 0xa2, 0x5e, 0xf4,
0x50, 0x85, 0x8a, 0x54, 0xaa, 0x55, 0xb0, 0x94, 0x0a, 0x82, 0x25, 0xb4, 0x4d, 0x2f, 0x42, 0x4b,
0xf1, 0xa0, 0x2d, 0x9a, 0xec, 0x6c, 0x50, 0x0f, 0x8d, 0x1f, 0xcd, 0xf8, 0x66, 0x9b, 0xc5, 0x6c,
0x6d, 0x36, 0x9b, 0x6d, 0xed, 0xe1, 0x4f, 0x92, 0x97, 0x99, 0xf9, 0xcd, 0xbe, 0xff, 0x9b, 0x9d,
0xe7, 0xa0, 0x94, 0x3a, 0x56, 0x42, 0x15, 0x07, 0x70, 0x58, 0xf1, 0x08, 0x58, 0x3d, 0xc9, 0x8b,
0xe4, 0x06, 0x8f, 0xc8, 0x6b, 0x90, 0xca, 0x63, 0xf2, 0x91, 0x47, 0x4a, 0xaf, 0x80, 0xc8, 0x55,
0x4e, 0xcc, 0x1e, 0xd9, 0x86, 0xb3, 0x4e, 0xdb, 0xa0, 0x06, 0xf9, 0x4b, 0x23, 0x2c, 0xda, 0x03,
0xa2, 0x16, 0xf4, 0x4b, 0x8c, 0x9e, 0x19, 0x97, 0xc3, 0xc1, 0x94, 0x14, 0x96, 0x86, 0x75, 0xc9,
0xad, 0xc1, 0x1e, 0x53, 0x10, 0x27, 0xaa, 0xed, 0x30, 0x59, 0x29, 0x2e, 0xf2, 0x03, 0x76, 0x3e,
0x04, 0x9f, 0x37, 0x79, 0x51, 0x49, 0x6e, 0xdd, 0x4d, 0x7c, 0x02, 0x56, 0x64, 0x1e, 0xab, 0x17,
0x04, 0x4c, 0xee, 0x42, 0x7c, 0x8c, 0x8d, 0x13, 0x43, 0xa7, 0xa9, 0xb7, 0xeb, 0xc4, 0x6c, 0xf3,
0xb3, 0x7d, 0x13, 0xbe, 0x97, 0x91, 0xb4, 0xaf, 0x2f, 0x92, 0x96, 0x5a, 0xa4, 0x91, 0x45, 0x41,
0xf0, 0x6b, 0x35, 0x4c, 0x7a, 0xac, 0xef, 0x54, 0x40, 0x6a, 0xca, 0x15, 0x50, 0x77, 0x5a, 0x48,
0xef, 0x51, 0x31, 0x94, 0xfc, 0xe9, 0xb9, 0xd7, 0x49, 0x9b, 0x1e, 0x75, 0x14, 0xbc, 0xcf, 0x0f,
0x4f, 0x7b, 0x07, 0x4c, 0x40, 0x1c, 0x26, 0x97, 0xf4, 0xa7, 0x80, 0xdd, 0x5f, 0x76, 0xc4, 0xe8,
0x1a, 0xab, 0x66, 0x4b, 0xd1, 0xf0, 0xb0, 0xf7, 0xe1, 0xf1, 0x5c, 0x53, 0xf7, 0x3c, 0xac, 0xb9,
0x7f, 0xff, 0xe4, 0xa2, 0x20, 0xb6, 0x73, 0x30, 0x38, 0xaf, 0x81, 0x44, 0xe5, 0x54, 0xb5, 0x55,
0x25, 0x47, 0xe5, 0xb7, 0x2c, 0x5d, 0x9e, 0xde, 0x63, 0x84, 0xc1, 0x3c, 0xdd, 0x6d, 0x79, 0x29,
0x18, 0x1c, 0x33, 0x80, 0x30, 0xa6, 0x6b, 0x01, 0x32, 0xa2, 0xa5, 0x0b, 0xab, 0x4f, 0xed, 0x94,
0x2f, 0x80, 0xfa, 0xa4, 0x3d, 0x50, 0x04, 0xad, 0xa1, 0x94, 0x18, 0x6d, 0xcf, 0xfb, 0x23, 0x49,
0x8a, 0x42, 0x89, 0x4f, 0x06, 0x10, 0x2f, 0xaa, 0xe7, 0x8b, 0x29, 0xcb, 0x36, 0xee, 0xfa, 0xdc,
0x60, 0x07, 0x14, 0x8b, 0xc5, 0xd6, 0x63, 0x8c, 0xeb, 0x99, 0x76, 0xe0, 0x81, 0x43, 0x2e, 0xf4,
0x61, 0x4e, 0xc0, 0x33, 0x05, 0x27, 0x52, 0xbc, 0x7f, 0x41, 0x48, 0x79, 0xc0, 0x40, 0xe0, 0xd1,
0x95, 0xe5, 0x3a, 0xa0, 0x70, 0xee, 0x5e, 0x69, 0x6b, 0x8a, 0xe4, 0x6c, 0x09, 0x88, 0xbc, 0x67,
0x41, 0x17, 0x22, 0x07, 0xca, 0x9b, 0x2d, 0xf7, 0x33, 0x73, 0x0d, 0x82, 0x98, 0x09, 0xe8, 0x9a,
0x96, 0x25, 0xac, 0xdc, 0xd6, 0x40, 0x75, 0x32, 0xd9, 0x04, 0x81, 0x82, 0xe6, 0x4f, 0xcb, 0xd7,
0xba, 0xb2, 0x1e, 0xc8, 0x72, 0x9a, 0x95, 0x6c, 0xa9, 0x58, 0xac, 0xdc, 0x78, 0x21, 0xa0, 0x1e,
0xd4, 0x8f, 0x88, 0x06, 0xe2, 0x71, 0x76, 0xef, 0xbc, 0x3f, 0xea, 0xa4, 0xa9, 0xd9, 0x0c, 0x34,
0x14, 0x31, 0xc8, 0x0c, 0xc4, 0xe1, 0x6f, 0xf5, 0xfa, 0x51, 0x71, 0xbb, 0x69, 0xed, 0xca, 0x81,
0xaa, 0x4a, 0x5d, 0x15, 0xa0, 0x7f, 0x52, 0x67, 0xb9, 0x18, 0x22, 0xc1, 0x41, 0x28, 0x80, 0x51,
0x83, 0x20, 0x66, 0xb9, 0x18, 0xac, 0x96, 0x77, 0x22, 0x91, 0xa8, 0x89, 0xc7, 0xe3, 0xb5, 0xa5,
0x62, 0xb1, 0xea, 0xca, 0x7b, 0x19, 0x0e, 0xac, 0xc1, 0x9f, 0x80, 0x1a, 0x86, 0xb5, 0xe6, 0x98,
0x25, 0x86, 0x03, 0x5b, 0xfa, 0x0a, 0xe2, 0x10, 0x79, 0xb2, 0x14, 0xc8, 0x16, 0x5f, 0x66, 0x23,
0xac, 0x33, 0x55, 0xf4, 0xe7, 0x96, 0xe9, 0x4b, 0x15, 0x06, 0x74, 0xd8, 0x7e, 0x1a, 0x44, 0xba,
0x8a, 0xd9, 0x99, 0xe0, 0xf0, 0xcc, 0x86, 0x4a, 0xd7, 0xc4, 0x2c, 0xfb, 0xee, 0x48, 0xd0, 0x1a,
0xab, 0x80, 0xed, 0xfe, 0xdc, 0x66, 0x98, 0x77, 0xbf, 0x38, 0xff, 0x37, 0x28, 0x58, 0xf6, 0x2a,
0x5f, 0x78, 0xf1, 0x81, 0xa1, 0xef, 0xd8, 0x8d, 0x5a, 0xf1, 0x29, 0xa0, 0x6f, 0x80, 0xf1, 0xd3,
0xfa, 0xb5, 0x0e, 0xba, 0x68, 0xa9, 0x67, 0x58, 0x78, 0x95, 0x43, 0x4a, 0x07, 0x59, 0x73, 0x02,
0xf1, 0x36, 0x01, 0x65, 0xdc, 0xbc, 0x3f, 0xe7, 0x87, 0xeb, 0xfd, 0x1c, 0xfc, 0x77, 0x07, 0x1a,
0x95, 0xd1, 0x92, 0xde, 0x61, 0xdc, 0x89, 0xb2, 0xf8, 0xbf, 0x36, 0x27, 0x00, 0xbc, 0xee, 0xf3,
0xd1, 0x75, 0xb6, 0xdb, 0x2d, 0x56, 0x9e, 0x50, 0x1c, 0x9d, 0x5a, 0x73, 0x82, 0xc8, 0x1b, 0xd0,
0x77, 0x78, 0xc2, 0x0c, 0x98, 0xfe, 0x82, 0x2d, 0xce, 0xfa, 0x85, 0x25, 0xb5, 0x5b, 0x65, 0x27,
0x38, 0xe8, 0x2a, 0x3b, 0xd5, 0xf8, 0x07, 0x4e, 0x6c, 0x94, 0x21, 0x43, 0x7b, 0xc5, 0x80, 0x00,
0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
0xce, 0x00, 0x00, 0x01, 0xc7, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xcd, 0x96, 0x31, 0x4f, 0xc2,
0x40, 0x14, 0xc7, 0xdf, 0x60, 0x1c, 0xf8, 0x06, 0x30, 0xba, 0x98, 0x10, 0x07, 0x47, 0x07, 0xd8,
0x8c, 0x33, 0x2e, 0x6a, 0x24, 0xd1, 0x04, 0x1a, 0x6a, 0x83, 0xcc, 0xc6, 0xad, 0x09, 0xa1, 0x89,
0x13, 0x7c, 0x03, 0x13, 0x77, 0xc7, 0x6e, 0x26, 0x26, 0x86, 0x44, 0x34, 0x2c, 0x0c, 0x4e, 0x4e,
0x4e, 0x7c, 0x02, 0x88, 0x21, 0x94, 0xf3, 0xfe, 0x77, 0x57, 0x3d, 0xa0, 0x85, 0xaa, 0xa5, 0x3a,
0xfc, 0xd3, 0xe6, 0xda, 0x7b, 0xbf, 0xfe, 0xdf, 0x7b, 0x77, 0x57, 0x62, 0x8c, 0x51, 0x12, 0x5a,
0xfe, 0x02, 0x75, 0xd3, 0x44, 0x4f, 0x05, 0xa2, 0x4e, 0x9d, 0xcb, 0xe5, 0xea, 0x2b, 0xb9, 0x72,
0x0c, 0xcf, 0xba, 0xe9, 0x1f, 0x83, 0x88, 0x5e, 0xd6, 0x89, 0x1e, 0x1b, 0x3c, 0xd8, 0x98, 0x8b,
0x2d, 0x11, 0xde, 0x71, 0x8a, 0xc5, 0x8b, 0x4d, 0xd3, 0x34, 0x6b, 0x96, 0x65, 0x6d, 0x44, 0x02,
0x11, 0x3d, 0x6f, 0xf3, 0x89, 0x3d, 0x15, 0xc4, 0xe3, 0xc0, 0x3b, 0x04, 0x92, 0x5f, 0xdf, 0xce,
0x48, 0x09, 0x97, 0x8e, 0x7a, 0xe6, 0xe5, 0x77, 0xaf, 0xd8, 0xe9, 0x99, 0xe9, 0x15, 0x1a, 0x47,
0xef, 0xa5, 0xaa, 0x31, 0x28, 0xd5, 0xca, 0xd7, 0x0b, 0x41, 0x7c, 0x52, 0x85, 0x6b, 0xa4, 0x20,
0xaf, 0x5c, 0xb9, 0x65, 0x69, 0xc9, 0x66, 0x6f, 0x0e, 0x38, 0x64, 0xb2, 0x75, 0x9f, 0x67, 0xd9,
0x87, 0x1c, 0xc3, 0x15, 0x30, 0xdd, 0x59, 0x90, 0x13, 0x40, 0x26, 0x5c, 0x4d, 0x9e, 0xfb, 0x54,
0x94, 0x42, 0x23, 0x5d, 0xfb, 0xce, 0xe1, 0x10, 0x10, 0x5f, 0x70, 0x86, 0xf1, 0x39, 0x90, 0xac,
0xc9, 0x67, 0xba, 0x9a, 0xdf, 0xe9, 0x28, 0x7c, 0x39, 0x1c, 0xe8, 0x8e, 0x90, 0x46, 0xd4, 0x2c,
0x00, 0x24, 0x0a, 0xaf, 0xd2, 0x15, 0xcd, 0x89, 0x2e, 0xd4, 0x04, 0x30, 0x38, 0x43, 0x1a, 0x51,
0x33, 0xd4, 0x70, 0x0a, 0x24, 0x5b, 0x58, 0x74, 0x8e, 0x17, 0xa5, 0x26, 0x8b, 0x9c, 0x21, 0x5d,
0xa8, 0x99, 0x8a, 0x35, 0xf6, 0x5b, 0x5f, 0x81, 0x44, 0x07, 0x31, 0x74, 0x50, 0x6c, 0x0b, 0x54,
0x76, 0x23, 0x43, 0x6c, 0x0d, 0x24, 0x16, 0xe3, 0x94, 0xd5, 0x59, 0xd9, 0xb6, 0xbd, 0x66, 0x58,
0x46, 0xb5, 0x7c, 0x6e, 0xbc, 0x41, 0xb8, 0xc7, 0x58, 0x38, 0x08, 0xad, 0x2f, 0x62, 0xd6, 0x75,
0x90, 0xab, 0xd3, 0x83, 0x84, 0xc0, 0xc7, 0x97, 0x27, 0x83, 0x9d, 0xdb, 0x3d, 0x06, 0xe1, 0x1e,
0x63, 0xe1, 0x20, 0x3f, 0x4b, 0x1d, 0x57, 0x07, 0xf5, 0xe5, 0x60, 0x3b, 0x13, 0x36, 0x11, 0x2e,
0x00, 0xf0, 0xdb, 0x17, 0xf7, 0x18, 0x0b, 0x07, 0x61, 0x51, 0x0b, 0x50, 0xff, 0x4f, 0x40, 0x89,
0xa5, 0x2e, 0xa9, 0x66, 0x48, 0xac, 0xbd, 0xe3, 0x59, 0xb0, 0x9a, 0x9b, 0x5c, 0xe0, 0x82, 0x8d,
0x63, 0x0b, 0xd2, 0x0e, 0xca, 0x94, 0xda, 0xf5, 0xe7, 0xb7, 0xa0, 0xdf, 0x6e, 0xaa, 0x33, 0x6e,
0x5a, 0x2a, 0x46, 0x0f, 0x31, 0x63, 0x3d, 0x26, 0x34, 0x27, 0x2d, 0x35, 0x77, 0x84, 0x58, 0xb1,
0x1f, 0x7c, 0xaa, 0x26, 0x7e, 0xba, 0x30, 0xb7, 0xb2, 0xb2, 0xa3, 0xfc, 0x2b, 0x5d, 0xd3, 0x4e,
0x56, 0xf2, 0x73, 0xa2, 0xd7, 0xe4, 0xff, 0xfd, 0x6e, 0xc5, 0xad, 0x0f, 0xa2, 0x2a, 0x66, 0x8d,
0xf7, 0xe6, 0x8a, 0x2e, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE add_circle_xpm[1] = {{ png, sizeof( png ), "add_circle_xpm" }};
......
......@@ -8,47 +8,29 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x02, 0x68, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xed, 0x96, 0xcf, 0x6a, 0x13,
0x51, 0x14, 0xc6, 0x83, 0x56, 0xd1, 0x9d, 0x2f, 0x50, 0x95, 0x5a, 0x15, 0x7c, 0x8a, 0x2c, 0x9a,
0x76, 0xfe, 0x27, 0x33, 0xed, 0xb4, 0xc6, 0x46, 0xab, 0xc4, 0x4e, 0xba, 0x70, 0x25, 0xa9, 0x48,
0x77, 0x7d, 0x00, 0x51, 0x0b, 0x4a, 0x41, 0xc4, 0xb8, 0xd0, 0x85, 0x25, 0x26, 0xad, 0x92, 0x50,
0x8a, 0x22, 0x2a, 0x22, 0xd9, 0x76, 0x27, 0xb8, 0x90, 0x2c, 0x74, 0x15, 0x5c, 0x0c, 0x34, 0xa3,
0xc2, 0x71, 0xbe, 0xcb, 0xdc, 0xe1, 0x66, 0x3a, 0x13, 0x04, 0x49, 0x70, 0x61, 0xe0, 0x63, 0xce,
0xdc, 0xdf, 0x39, 0xf7, 0x63, 0xee, 0xcc, 0x3d, 0x37, 0x29, 0x22, 0x4a, 0x0d, 0x43, 0x3d, 0x37,
0xa6, 0x9a, 0xf9, 0xa4, 0xc8, 0x53, 0x3f, 0xb9, 0xb2, 0x4a, 0xe6, 0x0b, 0x67, 0x96, 0x3a, 0xb1,
0xab, 0xc9, 0x93, 0x7b, 0x5c, 0xc8, 0xe5, 0x0c, 0x79, 0x49, 0x75, 0xb1, 0x46, 0x48, 0x72, 0x97,
0x47, 0xc8, 0xbb, 0x71, 0x80, 0x49, 0x92, 0x24, 0x12, 0x59, 0xa7, 0x7c, 0x98, 0xdc, 0xe5, 0x43,
0x4c, 0x22, 0x43, 0xcc, 0x6b, 0xa2, 0x75, 0x89, 0x46, 0xf5, 0xc5, 0x71, 0xba, 0x3c, 0x23, 0x51,
0xd5, 0x39, 0xb3, 0xcf, 0xa8, 0xe6, 0x9c, 0x66, 0xac, 0xe6, 0x8c, 0xef, 0x33, 0x42, 0xfe, 0xbc,
0x29, 0xd3, 0xc6, 0xe2, 0xd9, 0x64, 0x23, 0xcb, 0xb2, 0x76, 0x15, 0x45, 0xc1, 0x63, 0xd3, 0xc2,
0xb4, 0x4c, 0x8f, 0xd7, 0xd7, 0xc8, 0xce, 0xca, 0xac, 0x80, 0x8d, 0x07, 0xec, 0x82, 0x3f, 0xd1,
0xa3, 0xfb, 0x77, 0xd8, 0x55, 0x64, 0x88, 0xe7, 0x2d, 0x99, 0x1e, 0xde, 0xbb, 0xdd, 0xc3, 0x0c,
0xc3, 0xf8, 0x9a, 0x4e, 0xa7, 0x8f, 0x84, 0x46, 0x9a, 0xa6, 0xed, 0x75, 0x3a, 0x1d, 0xd2, 0x55,
0x85, 0x1a, 0xa5, 0x93, 0xe4, 0xcc, 0x4e, 0xd1, 0xcb, 0xd2, 0x29, 0x56, 0xe0, 0x79, 0x1e, 0x13,
0xd8, 0x0b, 0x67, 0x2c, 0x60, 0x63, 0x3d, 0x0c, 0xf1, 0xce, 0xd2, 0x71, 0xba, 0x76, 0x7e, 0x92,
0xb6, 0x4b, 0x27, 0x42, 0xe6, 0x1b, 0x75, 0x73, 0xb9, 0xdc, 0xb1, 0x1e, 0x23, 0xd7, 0x75, 0x49,
0x53, 0x65, 0xb6, 0xc6, 0x74, 0x33, 0xc5, 0x84, 0x82, 0x8f, 0xcd, 0x26, 0x93, 0xa6, 0x24, 0x33,
0xb6, 0x54, 0xc1, 0x38, 0x67, 0xf8, 0x25, 0x1a, 0x15, 0x6c, 0xd3, 0x9f, 0x50, 0x0a, 0x35, 0x67,
0x19, 0xf4, 0x7e, 0x6b, 0x8b, 0xa9, 0x1f, 0x43, 0x1c, 0x65, 0x49, 0x46, 0xdd, 0x56, 0xab, 0x45,
0x1f, 0x1a, 0x0d, 0x7a, 0x53, 0xab, 0x85, 0x7a, 0x5b, 0xaf, 0x87, 0x93, 0xbd, 0xdb, 0xdc, 0x4c,
0x64, 0x88, 0xa3, 0x2c, 0xd6, 0x48, 0x55, 0x55, 0xaf, 0x58, 0x2c, 0xd2, 0xea, 0xca, 0x4a, 0x58,
0xfc, 0xb7, 0x4a, 0x5c, 0xba, 0x76, 0xbb, 0x4d, 0xba, 0xa6, 0xd1, 0xeb, 0x6a, 0x75, 0xb0, 0x46,
0x55, 0xdf, 0x60, 0xa1, 0x50, 0x18, 0xec, 0x13, 0xf9, 0xdf, 0xfc, 0x8f, 0x72, 0xb9, 0x4c, 0xcf,
0x2b, 0x95, 0xc1, 0x2f, 0x1d, 0xbe, 0x3a, 0x7c, 0xaa, 0x43, 0x31, 0xba, 0x34, 0x67, 0xb1, 0x3d,
0xc0, 0x95, 0x9f, 0xce, 0x86, 0x85, 0x17, 0x67, 0x2d, 0xb6, 0x97, 0xb8, 0xae, 0xe4, 0x67, 0x42,
0x86, 0x3c, 0xb1, 0x0e, 0xb9, 0x7d, 0x8d, 0xe2, 0x36, 0x25, 0x9f, 0x4c, 0x6c, 0x9c, 0x68, 0xbc,
0xc8, 0x15, 0x19, 0xaf, 0x01, 0x07, 0xeb, 0x6b, 0x84, 0x36, 0xf3, 0xcc, 0x6f, 0x8a, 0x62, 0x73,
0xf4, 0xba, 0x5d, 0x26, 0xc4, 0x1b, 0x01, 0x43, 0x0e, 0x72, 0x45, 0xf6, 0xf4, 0xea, 0x39, 0xd6,
0x1f, 0x9f, 0xf8, 0x57, 0xb0, 0x58, 0x23, 0xd3, 0x34, 0x3f, 0xfb, 0x7b, 0xe9, 0x17, 0x1a, 0x27,
0x26, 0xaa, 0xac, 0xdf, 0x0d, 0x9b, 0x23, 0xc6, 0x21, 0xc4, 0xbc, 0xa9, 0x22, 0x07, 0xb9, 0x51,
0xf6, 0x60, 0xed, 0x16, 0xbb, 0x72, 0xa6, 0xeb, 0xfa, 0x77, 0xdb, 0xb6, 0x8f, 0x86, 0x46, 0xfe,
0xcd, 0x41, 0x74, 0x59, 0x1c, 0x05, 0x4d, 0xbf, 0x29, 0x8a, 0xcd, 0x11, 0xe3, 0x10, 0xe2, 0xed,
0x80, 0x21, 0x07, 0xb9, 0x22, 0x7b, 0xb5, 0x34, 0x4a, 0xd7, 0xf3, 0x13, 0xb4, 0x53, 0x1a, 0x15,
0xd9, 0x48, 0xe2, 0x79, 0x14, 0x7d, 0x47, 0xe2, 0x99, 0x23, 0xbe, 0x07, 0xe4, 0xfe, 0x09, 0x8b,
0x35, 0xc2, 0x11, 0x2c, 0x7e, 0x3d, 0x86, 0x92, 0xf9, 0xc6, 0x19, 0x62, 0x91, 0x89, 0xc7, 0x75,
0x3f, 0x16, 0x6b, 0x34, 0xb4, 0x3f, 0x27, 0xff, 0x8d, 0xfe, 0x49, 0xa3, 0xdf, 0xf4, 0x5e, 0xec,
0x57, 0x87, 0xb9, 0x43, 0x28, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60,
0x82,
0xce, 0x00, 0x00, 0x01, 0x56, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0x63, 0xf8, 0xff, 0xff, 0x3f,
0x03, 0x3d, 0x30, 0x86, 0x40, 0x03, 0x03, 0x43, 0x12, 0x10, 0x37, 0x03, 0x31, 0x17, 0xad, 0x2d,
0x3a, 0x00, 0xc4, 0xff, 0x9b, 0x98, 0x99, 0xef, 0x01, 0x69, 0x1b, 0x9a, 0x5a, 0xd4, 0x2f, 0x2f,
0xff, 0x7f, 0x82, 0xbc, 0xfc, 0x9f, 0x46, 0x46, 0xc6, 0x7f, 0x40, 0x7e, 0x3f, 0x35, 0x7c, 0x87,
0xd5, 0xa2, 0x79, 0x76, 0x76, 0xff, 0xbf, 0x7e, 0xf8, 0xf0, 0x7f, 0x4b, 0x76, 0xf6, 0xff, 0x06,
0x46, 0x46, 0xaa, 0xf8, 0x0e, 0xa7, 0x45, 0xbf, 0x7e, 0xfd, 0x02, 0xe3, 0x3b, 0x7b, 0xf7, 0x52,
0xc5, 0x77, 0x04, 0x2d, 0x02, 0x61, 0x90, 0xef, 0xb6, 0xe6, 0xe4, 0x50, 0xe4, 0x3b, 0xa2, 0x2c,
0xa2, 0x86, 0xef, 0x60, 0xc9, 0xf9, 0x00, 0x12, 0x7e, 0x3f, 0x49, 0x55, 0x15, 0xab, 0x45, 0x94,
0xf8, 0x0e, 0x64, 0x51, 0x1a, 0x86, 0x45, 0x6a, 0x6a, 0x60, 0x43, 0xdf, 0x3d, 0x7c, 0xf8, 0xff,
0xf9, 0xe5, 0xcb, 0x28, 0xf8, 0xdb, 0xc7, 0x8f, 0x60, 0xb9, 0xbb, 0xfb, 0xf6, 0xfd, 0x9f, 0xa0,
0xa0, 0x40, 0xb4, 0xef, 0x70, 0x06, 0xdd, 0x8f, 0x6f, 0xdf, 0xfe, 0xb7, 0xf1, 0xf2, 0xfe, 0x07,
0xe5, 0x29, 0x64, 0x7c, 0xa8, 0xbd, 0x1d, 0xd5, 0x77, 0xb9, 0xb9, 0x44, 0xf9, 0x0e, 0x6f, 0x1c,
0xfd, 0xf8, 0xfa, 0xf5, 0xff, 0xb7, 0x4f, 0x9f, 0x50, 0x30, 0xb6, 0xe0, 0x24, 0xc6, 0x77, 0x44,
0x25, 0x86, 0xc7, 0xa7, 0x4e, 0x81, 0x7d, 0x88, 0x2b, 0xde, 0x90, 0x7d, 0x07, 0xb6, 0x8c, 0x91,
0xf1, 0x2b, 0xd0, 0x9c, 0x23, 0x48, 0xd1, 0x91, 0x46, 0x94, 0x45, 0x9d, 0x42, 0x42, 0xff, 0xef,
0xee, 0xdf, 0x4f, 0x89, 0x45, 0x49, 0x78, 0x2d, 0xfa, 0xfc, 0xe6, 0xcd, 0xff, 0xf7, 0x8f, 0x1e,
0xfd, 0x6f, 0x07, 0xc6, 0xd5, 0xe5, 0x95, 0x2b, 0xc1, 0x6c, 0x6c, 0x3e, 0xa3, 0x28, 0xe8, 0x70,
0x25, 0x86, 0x83, 0xad, 0xad, 0xe4, 0x25, 0x06, 0x7c, 0xf9, 0xe8, 0xd3, 0xab, 0x57, 0x18, 0x3e,
0xfa, 0xf9, 0xe3, 0x07, 0x79, 0xc9, 0x1b, 0x5f, 0x3e, 0x82, 0xc7, 0x91, 0xb0, 0x30, 0xb8, 0x54,
0xa0, 0x28, 0xc3, 0x12, 0x93, 0x18, 0x1e, 0x1e, 0x3f, 0xfe, 0xff, 0xe7, 0xf7, 0xef, 0x94, 0x15,
0x41, 0x83, 0xa6, 0x50, 0xa5, 0x79, 0x35, 0x41, 0x97, 0x8a, 0x8f, 0x6e, 0x55, 0x39, 0xbd, 0x1a,
0x27, 0xa0, 0x7c, 0xd5, 0x41, 0xf3, 0xe6, 0x16, 0xad, 0x30, 0x00, 0xee, 0x60, 0x35, 0xe4, 0x92,
0x65, 0x02, 0x5f, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE add_component_xpm[1] = {{ png, sizeof( png ), "add_component_xpm" }};
......
......@@ -8,48 +8,33 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x02, 0x7e, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xed, 0xd6, 0x41, 0x88, 0x55,
0x55, 0x1c, 0xc7, 0xf1, 0xcf, 0x7b, 0xf3, 0x9a, 0x19, 0xa7, 0x99, 0x67, 0x38, 0x8a, 0x4d, 0x23,
0x8d, 0x23, 0x9a, 0xf8, 0xe6, 0xbd, 0x73, 0x89, 0x49, 0x43, 0x89, 0x4c, 0x2d, 0xd2, 0x45, 0xd1,
0x42, 0x49, 0xb3, 0xb1, 0x48, 0x28, 0xca, 0x48, 0x4a, 0x0d, 0x87, 0x79, 0x77, 0x32, 0xca, 0x30,
0x30, 0x5b, 0x24, 0x39, 0x44, 0x41, 0x2d, 0xda, 0xa4, 0xa5, 0xe0, 0x26, 0x71, 0x23, 0x4d, 0x09,
0x15, 0xb4, 0x08, 0xf1, 0x09, 0x41, 0x8b, 0x16, 0xad, 0x5a, 0x04, 0x31, 0x53, 0x12, 0x7a, 0x5a,
0x78, 0xe7, 0x31, 0x33, 0x22, 0x91, 0x3e, 0x23, 0xc2, 0xc5, 0x17, 0xce, 0xbd, 0x8b, 0xfb, 0xbd,
0xbf, 0xff, 0xff, 0x7f, 0xee, 0xb9, 0x62, 0x8c, 0xfe, 0x0d, 0xdc, 0x10, 0xfd, 0xa7, 0x44, 0x86,
0xad, 0x31, 0xe4, 0x1e, 0xe4, 0xae, 0x9b, 0xc8, 0x1e, 0x45, 0xa9, 0xdf, 0xa5, 0xa2, 0x21, 0x7b,
0x27, 0x64, 0xd7, 0x23, 0xcd, 0x13, 0x52, 0x51, 0x2a, 0x7a, 0xc1, 0x21, 0xcc, 0x46, 0xa1, 0xf1,
0xa2, 0xaa, 0x13, 0x75, 0xd1, 0x0a, 0xef, 0x61, 0x2d, 0x66, 0x36, 0x56, 0x32, 0x68, 0x8e, 0xd4,
0x9f, 0x52, 0xd1, 0xa0, 0x71, 0x05, 0x07, 0xb0, 0x09, 0x9d, 0x8d, 0x4e, 0xb3, 0xad, 0x9e, 0x66,
0xc0, 0xf7, 0xd8, 0x87, 0x75, 0x28, 0x36, 0x56, 0x94, 0x1a, 0xad, 0x8b, 0xfa, 0x1d, 0x43, 0x8a,
0x04, 0xcd, 0xd7, 0xfc, 0xf0, 0xb3, 0x95, 0xca, 0xbd, 0xe7, 0x92, 0x64, 0xdf, 0xd7, 0xfd, 0x7d,
0x9f, 0x0c, 0x6c, 0x9e, 0x7d, 0xb1, 0xb8, 0xbb, 0x29, 0xda, 0x6d, 0x5c, 0x93, 0x77, 0xf0, 0x1c,
0xba, 0x91, 0xbf, 0x26, 0x49, 0x2d, 0x49, 0x0e, 0xd6, 0x42, 0x88, 0x93, 0x39, 0xb5, 0x6c, 0x49,
0x5c, 0xf6, 0x48, 0xfb, 0x0f, 0x78, 0x13, 0x0f, 0x61, 0x26, 0x72, 0x57, 0x2d, 0x39, 0x97, 0x24,
0x4f, 0x4d, 0x16, 0x9c, 0x4e, 0x4a, 0x17, 0x26, 0xd6, 0xa3, 0xa1, 0x34, 0xd6, 0x59, 0x28, 0xec,
0xcd, 0xca, 0xd6, 0x32, 0x65, 0x1f, 0xa9, 0x7a, 0x58, 0xd5, 0x7a, 0xc3, 0x1e, 0x95, 0x7a, 0xcc,
0xb0, 0x01, 0xa9, 0x27, 0x0d, 0xdb, 0x2a, 0xf5, 0xb4, 0xaa, 0x67, 0xa5, 0x9e, 0x57, 0xb5, 0x5d,
0xea, 0xa5, 0xd1, 0xa5, 0xa5, 0x9f, 0x6b, 0x21, 0xc4, 0xe3, 0xe5, 0xc5, 0x63, 0x2d, 0x1d, 0xf9,
0xdf, 0xdc, 0x24, 0xae, 0x28, 0x77, 0xd4, 0xc5, 0x3b, 0xbb, 0xba, 0x3e, 0x46, 0x0f, 0xf2, 0x53,
0x45, 0xa9, 0x3f, 0xea, 0x8d, 0xfc, 0x1b, 0x0a, 0x43, 0xb9, 0x78, 0x26, 0xa9, 0xc4, 0x5a, 0x08,
0x71, 0x79, 0xa9, 0x3d, 0xe2, 0x12, 0x4d, 0xe2, 0x57, 0x95, 0x4b, 0xc9, 0x46, 0x7a, 0x7b, 0x4f,
0xe1, 0x0e, 0x14, 0xae, 0x5a, 0x24, 0x15, 0xbf, 0x5c, 0x5a, 0x8a, 0xb5, 0x10, 0xe2, 0xf6, 0x3b,
0x6f, 0xad, 0x8b, 0x5a, 0xe7, 0xe4, 0xeb, 0x89, 0xf6, 0x74, 0x77, 0x9f, 0xc4, 0x1a, 0xb4, 0xd7,
0x7b, 0x84, 0x9c, 0x17, 0xbd, 0x6c, 0x83, 0x0f, 0xac, 0x73, 0xd4, 0x83, 0x8e, 0x79, 0xc0, 0x51,
0xab, 0x7d, 0x6a, 0x95, 0x23, 0xee, 0x73, 0x38, 0xe3, 0xc8, 0x04, 0xef, 0xf7, 0x2f, 0xf8, 0xa9,
0x16, 0x42, 0x3c, 0x1b, 0x42, 0x1c, 0x5c, 0x78, 0xdb, 0xaf, 0xf7, 0xcf, 0x2b, 0xfe, 0xf2, 0x79,
0x79, 0xf1, 0xf9, 0xec, 0xde, 0xc5, 0x95, 0x1d, 0x1d, 0x1f, 0x61, 0x03, 0x66, 0x4d, 0x15, 0x31,
0x17, 0x5b, 0xb3, 0x69, 0x39, 0x30, 0x8d, 0xb7, 0xa6, 0x33, 0xbf, 0xa5, 0x65, 0xe4, 0xdb, 0x72,
0x79, 0x7c, 0xfa, 0xd4, 0xd5, 0x42, 0x88, 0x6f, 0xf7, 0xf4, 0x7c, 0x87, 0xfd, 0x57, 0x12, 0xdd,
0x92, 0x45, 0xdd, 0x8c, 0x2d, 0x18, 0xc0, 0xe3, 0xd9, 0xf5, 0x26, 0x6c, 0x9c, 0xc6, 0x96, 0xa4,
0xad, 0xed, 0xb5, 0xcf, 0x16, 0x2d, 0xfa, 0xf1, 0x4c, 0xa5, 0x72, 0xa1, 0x16, 0x42, 0xfc, 0xa6,
0xaf, 0x6f, 0x6c, 0x57, 0x57, 0xd7, 0x17, 0x78, 0x17, 0xaf, 0x63, 0xf5, 0x94, 0xd2, 0x65, 0xb2,
0x02, 0x8a, 0xd9, 0xd7, 0x76, 0x32, 0x9d, 0x57, 0x60, 0x2e, 0xee, 0xc2, 0x8e, 0x19, 0xf9, 0xfc,
0xc1, 0xdb, 0x9b, 0x9b, 0x3f, 0xc4, 0x08, 0x0e, 0x65, 0x55, 0x78, 0x06, 0xbd, 0x97, 0x0d, 0xc3,
0xa4, 0x64, 0xff, 0x84, 0x22, 0x96, 0x63, 0x1b, 0x5e, 0xc5, 0x1b, 0x78, 0x25, 0x6b, 0x41, 0x82,
0xb6, 0x86, 0x9c, 0x47, 0xc8, 0xe3, 0x66, 0xcc, 0xc7, 0xdd, 0x58, 0x95, 0xa5, 0x9c, 0x87, 0xd6,
0x86, 0x9e, 0xb0, 0x59, 0xb2, 0x26, 0xcc, 0xc8, 0xa4, 0xad, 0xd9, 0x0b, 0xe4, 0xfe, 0xdf, 0x7f,
0x41, 0x7f, 0x01, 0x07, 0x61, 0x97, 0xa4, 0xee, 0x5d, 0x02, 0xaa, 0x00, 0x00, 0x00, 0x00, 0x49,
0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
0xce, 0x00, 0x00, 0x01, 0x88, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xdd, 0xd6, 0xb1, 0x2b, 0xc4,
0x61, 0x1c, 0xc7, 0xf1, 0xf7, 0xf9, 0x1d, 0xb9, 0xa8, 0xc3, 0x5d, 0x57, 0x9e, 0x94, 0x0c, 0x32,
0x51, 0x94, 0x49, 0x92, 0x59, 0x16, 0x75, 0x83, 0x41, 0x99, 0x0c, 0x12, 0x19, 0x18, 0x44, 0x49,
0x59, 0xee, 0xf7, 0x60, 0x10, 0x25, 0xc4, 0x72, 0x9c, 0xe7, 0xce, 0x1f, 0x60, 0x30, 0x1a, 0x0c,
0x4a, 0x99, 0x2f, 0x25, 0x9b, 0xe5, 0x46, 0x4a, 0xbe, 0x06, 0x77, 0xbf, 0x7b, 0x58, 0xa4, 0x7e,
0xcf, 0x0d, 0x86, 0xef, 0xf2, 0x0c, 0xcf, 0xab, 0xcf, 0xf7, 0xf9, 0x3e, 0x4f, 0x0f, 0x22, 0x42,
0x2d, 0xca, 0xdd, 0xc6, 0x9a, 0x65, 0x34, 0x4f, 0xf8, 0xcc, 0x39, 0x83, 0xd8, 0xa1, 0x05, 0xcd,
0x3b, 0x1a, 0x41, 0x53, 0x74, 0x07, 0x6d, 0x91, 0x2e, 0x23, 0x82, 0xe6, 0xc6, 0x1d, 0xa4, 0x39,
0x0e, 0xa0, 0x2d, 0xd6, 0x5c, 0x42, 0xcf, 0x56, 0xa2, 0x41, 0x27, 0x10, 0xdb, 0xf4, 0x5a, 0xc8,
0x0b, 0xeb, 0xd4, 0xb9, 0x81, 0x7c, 0x96, 0xac, 0xb6, 0x65, 0x9d, 0x8d, 0x37, 0x9a, 0x6b, 0x2b,
0xd1, 0x94, 0x13, 0x08, 0x9f, 0x26, 0x34, 0x6f, 0x65, 0xe4, 0x03, 0x9f, 0x94, 0x2b, 0x68, 0xdc,
0x6a, 0xdb, 0x9d, 0xb3, 0x97, 0x01, 0xcd, 0x9e, 0xd5, 0xb6, 0x4d, 0x97, 0x50, 0x31, 0x80, 0x32,
0x0c, 0x3b, 0x81, 0xc8, 0xd0, 0x6d, 0xa5, 0x29, 0xb1, 0x4e, 0x34, 0x54, 0xe8, 0x12, 0x3a, 0xf2,
0x70, 0x7a, 0x1a, 0xe3, 0x65, 0xaf, 0x0d, 0x59, 0xe8, 0x47, 0xba, 0x16, 0xb9, 0x0a, 0xf5, 0xf5,
0x2e, 0x40, 0x9f, 0x81, 0x92, 0x01, 0xb1, 0xeb, 0xbc, 0x8e, 0x37, 0x03, 0x23, 0xa1, 0x41, 0x06,
0xee, 0x0d, 0xc8, 0xbe, 0xe7, 0xc9, 0x64, 0x3c, 0x2e, 0xe9, 0x78, 0x5c, 0x76, 0xa3, 0xd1, 0x0a,
0x58, 0x3c, 0x80, 0xfa, 0x6f, 0x10, 0x9a, 0x59, 0x34, 0x25, 0xab, 0xc7, 0xbf, 0x56, 0x72, 0xb5,
0x9a, 0x60, 0x28, 0x99, 0x14, 0xa5, 0x94, 0x28, 0xa5, 0xa4, 0x3f, 0x95, 0x92, 0x8b, 0xf2, 0x7a,
0x0e, 0x06, 0x7e, 0x42, 0x8f, 0x7f, 0x41, 0xd0, 0x48, 0xcf, 0xdc, 0xd7, 0x66, 0xd9, 0x48, 0x44,
0x3a, 0xda, 0xdb, 0x03, 0x48, 0x29, 0x25, 0x87, 0x9e, 0x27, 0x06, 0x24, 0x0f, 0x13, 0xdf, 0x21,
0x9f, 0x79, 0x34, 0xaf, 0x7f, 0x81, 0x9a, 0x37, 0xaa, 0x89, 0xc6, 0x5a, 0x5b, 0x03, 0x64, 0x34,
0x91, 0x08, 0xd6, 0x0b, 0xd0, 0x1d, 0xd6, 0x19, 0xe5, 0xcb, 0x2d, 0x92, 0xb5, 0xc6, 0x46, 0x59,
0x89, 0xc5, 0x24, 0x17, 0x89, 0x54, 0xa0, 0xeb, 0xd0, 0x86, 0xe1, 0x0c, 0x92, 0x06, 0x6e, 0x7f,
0x4e, 0x9d, 0x81, 0x87, 0x4b, 0xe8, 0x0c, 0xf5, 0x1e, 0x19, 0xf0, 0x0c, 0x4c, 0x1b, 0x38, 0x32,
0x70, 0x62, 0x60, 0xc6, 0x40, 0x43, 0xcd, 0x7e, 0x41, 0xff, 0x1f, 0xfa, 0x04, 0xa0, 0xb0, 0xd7,
0x03, 0x0b, 0xe0, 0xec, 0xc3, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60,
0x82,
};
const BITMAP_OPAQUE add_corner_xpm[1] = {{ png, sizeof( png ), "add_corner_xpm" }};
......
......@@ -8,40 +8,28 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x01, 0xf9, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xbd, 0xd6, 0x3f, 0x48, 0xd4,
0x61, 0x1c, 0xc7, 0xf1, 0xd7, 0x73, 0x5d, 0xa6, 0x99, 0x7f, 0x50, 0xa4, 0xb3, 0x41, 0x2a, 0xb2,
0x24, 0xa7, 0x08, 0x24, 0x88, 0x9a, 0x1a, 0xca, 0x31, 0x08, 0x6a, 0x6a, 0x08, 0x5a, 0x1d, 0x6b,
0x11, 0x2a, 0x24, 0x08, 0x89, 0xa0, 0xa1, 0x96, 0x86, 0x86, 0xa2, 0xad, 0xb1, 0xa1, 0x29, 0x22,
0x02, 0xa3, 0x38, 0xb0, 0xa1, 0xa9, 0x2c, 0x24, 0x33, 0x1c, 0x2a, 0xcb, 0x4a, 0xbb, 0xee, 0x69,
0xb8, 0xdf, 0xe5, 0x5d, 0x1d, 0x7a, 0x7a, 0xa7, 0x0f, 0x7c, 0xe1, 0xc7, 0xc3, 0xef, 0xf7, 0xbc,
0xf9, 0x7d, 0x3f, 0x9f, 0xcf, 0xf3, 0x3c, 0x21, 0xc6, 0x68, 0x3d, 0x46, 0xca, 0x3a, 0x8d, 0x35,
0x01, 0x85, 0xe0, 0x64, 0x08, 0x1a, 0xca, 0x26, 0x63, 0x8c, 0x75, 0x2d, 0xe2, 0x39, 0x62, 0x24,
0xde, 0x23, 0x86, 0xbf, 0xf3, 0x75, 0x86, 0x9c, 0x4f, 0x20, 0xc5, 0x1a, 0xaa, 0x3b, 0x88, 0x78,
0xf6, 0x1f, 0xc8, 0x18, 0xb1, 0x6d, 0x2d, 0x40, 0x3d, 0xe4, 0x3f, 0x14, 0x20, 0xb3, 0x2f, 0x39,
0xdd, 0x87, 0xfa, 0xb6, 0x0e, 0x01, 0x8d, 0xdc, 0x1d, 0x64, 0x3a, 0x4b, 0xdf, 0x29, 0xec, 0x43,
0x73, 0xf1, 0x9d, 0x50, 0x4b, 0x8e, 0x42, 0x70, 0x01, 0x0b, 0x84, 0x2b, 0xe8, 0x46, 0x1f, 0xcd,
0x6d, 0xcc, 0xcd, 0x61, 0x06, 0xaf, 0x62, 0x8c, 0xdf, 0x21, 0x5d, 0x03, 0xe4, 0x12, 0x86, 0x13,
0xef, 0x4e, 0x12, 0x1e, 0xe0, 0x37, 0x73, 0xb3, 0x09, 0xe4, 0x35, 0x7e, 0xd6, 0x64, 0x6f, 0xe2,
0x48, 0xb9, 0xf0, 0xf9, 0x47, 0x3c, 0x49, 0x23, 0x83, 0xdd, 0xd8, 0xfc, 0xdf, 0x37, 0xab, 0x80,
0xec, 0x24, 0xce, 0x2f, 0x42, 0xbe, 0xbc, 0x60, 0x38, 0x93, 0xe8, 0x54, 0xec, 0x52, 0xaa, 0x0e,
0x20, 0x69, 0xa6, 0xce, 0x10, 0xf3, 0x7c, 0x1c, 0x67, 0xc7, 0x09, 0xf4, 0x56, 0xfa, 0x8b, 0xd2,
0x4a, 0xad, 0x40, 0x93, 0x3d, 0xc5, 0x47, 0xb6, 0x3d, 0xe7, 0xce, 0x28, 0x07, 0x46, 0x98, 0x98,
0x41, 0xae, 0x60, 0x8a, 0x25, 0x46, 0x95, 0xed, 0x1a, 0x25, 0x7e, 0x25, 0xee, 0xc7, 0x06, 0xf4,
0xe0, 0x18, 0x0e, 0x61, 0x17, 0x36, 0x96, 0x66, 0xa6, 0xe2, 0x1a, 0x55, 0x40, 0xae, 0x96, 0x08,
0x3f, 0x4d, 0xcc, 0xa0, 0x21, 0xb1, 0x73, 0xa6, 0xe8, 0xdc, 0x65, 0xd7, 0x59, 0x06, 0x72, 0xad,
0xdc, 0x5d, 0x9f, 0x9f, 0x72, 0xab, 0x25, 0x11, 0x3e, 0x9d, 0xec, 0xfe, 0xa1, 0x9a, 0xae, 0x2c,
0x93, 0xa3, 0xdc, 0xfc, 0x62, 0xd4, 0xa6, 0xb2, 0x0c, 0x5c, 0xe6, 0x7d, 0x2b, 0x7e, 0xc4, 0x18,
0x73, 0x2b, 0x0a, 0xde, 0x12, 0xee, 0x82, 0x66, 0xde, 0x3c, 0x64, 0x32, 0x4b, 0xf7, 0x71, 0x1c,
0x44, 0xc7, 0x6a, 0xf2, 0x57, 0xa9, 0x5d, 0x17, 0x89, 0x5b, 0x13, 0x58, 0x13, 0x5d, 0xfd, 0x74,
0x0c, 0x62, 0x00, 0x5d, 0x95, 0x32, 0xb2, 0x22, 0x10, 0x31, 0x90, 0xbf, 0x51, 0xd0, 0xe2, 0x57,
0x96, 0x99, 0x2d, 0x09, 0xac, 0x15, 0xdb, 0xd1, 0x5e, 0xd3, 0xc6, 0x5b, 0x02, 0xb9, 0x59, 0x2e,
0xfc, 0xc4, 0x75, 0x9a, 0x52, 0x8b, 0x21, 0xad, 0x4e, 0xf4, 0x25, 0xa4, 0x88, 0xc8, 0x0d, 0x95,
0x43, 0xde, 0x3d, 0xa3, 0xfb, 0x30, 0x3a, 0xeb, 0x76, 0x5e, 0x15, 0x68, 0x8f, 0xdb, 0x99, 0x1f,
0x2f, 0x40, 0xde, 0x8e, 0xd1, 0x75, 0x14, 0xfd, 0x68, 0xac, 0x2b, 0xa8, 0x00, 0xbb, 0xdd, 0xcb,
0xc4, 0x7d, 0x3a, 0x8f, 0x60, 0x6f, 0xe1, 0x20, 0xab, 0xad, 0x5d, 0xa5, 0x55, 0x76, 0xf0, 0x85,
0xd0, 0xd2, 0xce, 0xb7, 0x4d, 0xf8, 0x14, 0x63, 0x5c, 0xa8, 0xe7, 0x15, 0xec, 0x0f, 0x67, 0x83,
0x90, 0xe8, 0x8e, 0xba, 0xc6, 0x9b, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42,
0x60, 0x82,
0xce, 0x00, 0x00, 0x01, 0x3f, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xb5, 0x95, 0xbd, 0x4a, 0x03,
0x41, 0x14, 0x46, 0x4f, 0x82, 0x88, 0x22, 0x58, 0x0b, 0x36, 0x96, 0x22, 0x16, 0x06, 0x7f, 0x48,
0xa5, 0x22, 0x88, 0xfa, 0x0e, 0x56, 0xbe, 0x4a, 0x1a, 0x0b, 0x1b, 0x1f, 0x42, 0xb0, 0xb2, 0xf1,
0x01, 0xb6, 0xb1, 0x08, 0xe8, 0xce, 0xbd, 0x2b, 0x2e, 0xd8, 0xa8, 0x68, 0x14, 0xa3, 0x8d, 0xbe,
0xc1, 0x58, 0x64, 0x75, 0x43, 0xb2, 0xab, 0x71, 0x76, 0xa6, 0x18, 0x66, 0x60, 0x67, 0x38, 0x7c,
0x73, 0x76, 0xee, 0xc5, 0x5a, 0x4b, 0xa8, 0x01, 0x57, 0xf3, 0x3f, 0xeb, 0x70, 0x90, 0xeb, 0x3d,
0x90, 0x77, 0x30, 0xad, 0x60, 0xa0, 0x1c, 0x22, 0x9f, 0x20, 0x0f, 0xa0, 0xb3, 0x81, 0x40, 0xe6,
0x00, 0xe4, 0x03, 0xe4, 0x1e, 0x92, 0x45, 0xef, 0x89, 0x20, 0x99, 0xca, 0xd7, 0xba, 0x0f, 0x66,
0xc1, 0xbb, 0x23, 0x90, 0x6d, 0xd0, 0x3b, 0x48, 0x9a, 0x85, 0xdf, 0xfd, 0x40, 0xe2, 0x1d, 0x90,
0xb7, 0xcc, 0xc9, 0x0d, 0xa4, 0xe3, 0xde, 0x41, 0x90, 0xec, 0xf6, 0x89, 0x7f, 0x04, 0x59, 0x0a,
0x92, 0x08, 0xf4, 0xb0, 0x07, 0x31, 0x4f, 0xa0, 0x8d, 0xd2, 0x7d, 0xee, 0x80, 0x68, 0xac, 0x37,
0xdb, 0x1a, 0x98, 0x16, 0xc4, 0xcb, 0xbf, 0xee, 0x77, 0x74, 0xb2, 0x05, 0x72, 0x09, 0x32, 0x37,
0xf2, 0x19, 0x87, 0xbf, 0x6b, 0x13, 0xb4, 0x9b, 0x39, 0x69, 0x83, 0xad, 0x7b, 0x07, 0x81, 0xd9,
0x00, 0xe9, 0xe6, 0x4e, 0xcc, 0x4a, 0x90, 0x44, 0xa0, 0xa7, 0x2e, 0x10, 0x07, 0x50, 0x67, 0x12,
0xe4, 0xe4, 0xbf, 0x90, 0x91, 0x40, 0x60, 0xd6, 0x41, 0xce, 0xa1, 0x3d, 0x5d, 0xe9, 0x19, 0xfc,
0x0d, 0x31, 0xaf, 0x99, 0xf8, 0xb3, 0x20, 0xa0, 0x01, 0x48, 0x07, 0x64, 0xd5, 0x3b, 0x08, 0x6c,
0x1d, 0xe4, 0x22, 0x83, 0x3c, 0x83, 0xae, 0x55, 0xae, 0x20, 0xe5, 0x89, 0xd2, 0x19, 0x90, 0x08,
0xe2, 0xa6, 0x97, 0xc2, 0x3b, 0x7c, 0x5d, 0x7a, 0xfc, 0xfd, 0x08, 0xc1, 0xd6, 0xbc, 0xb5, 0x91,
0x62, 0x27, 0x7a, 0xe4, 0xbd, 0xeb, 0x16, 0x88, 0x7f, 0x29, 0x6b, 0x5e, 0xd5, 0xaa, 0x3c, 0xd1,
0x04, 0xe8, 0x6d, 0x48, 0x48, 0x5f, 0x22, 0x6d, 0x80, 0xa4, 0xa1, 0x20, 0x03, 0x8e, 0x86, 0xdb,
0xaf, 0xcf, 0xf1, 0x05, 0x56, 0x13, 0x40, 0xc7, 0xbb, 0x6a, 0xb9, 0x16, 0x00, 0x00, 0x00, 0x00,
0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE add_dashed_line_xpm[1] = {{ png, sizeof( png ), "add_dashed_line_xpm" }};
......
......@@ -8,33 +8,31 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x01, 0x95, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xcd, 0xd6, 0xbd, 0x4b, 0xc3,
0x40, 0x18, 0x06, 0xf0, 0x03, 0x2d, 0x16, 0xe2, 0x20, 0xa2, 0x4e, 0x2a, 0xd2, 0x8a, 0x83, 0x14,
0x6c, 0x51, 0x10, 0xd4, 0xd5, 0xd5, 0x59, 0xc4, 0x41, 0x04, 0x67, 0xb5, 0x83, 0x82, 0x78, 0x83,
0x8a, 0x82, 0x83, 0xb8, 0x09, 0xfe, 0x03, 0x45, 0x5c, 0x84, 0x2e, 0x2e, 0x8e, 0xce, 0xba, 0x38,
0x38, 0xd6, 0x49, 0xc1, 0x0f, 0x1c, 0x83, 0xad, 0x9e, 0xcf, 0x5b, 0xde, 0x2b, 0x67, 0x0c, 0x77,
0xad, 0x24, 0xc1, 0xc0, 0xaf, 0x49, 0xdf, 0x24, 0xf7, 0x5c, 0x2e, 0x97, 0x10, 0xa1, 0x94, 0x12,
0x49, 0x10, 0xff, 0x2a, 0x08, 0x4b, 0x05, 0x7c, 0xd8, 0x0c, 0xd4, 0xa9, 0xf6, 0x1e, 0x65, 0xd0,
0x13, 0xd0, 0xc6, 0x17, 0xcc, 0x1b, 0x75, 0xfa, 0xf1, 0xe3, 0x08, 0xfa, 0x60, 0x33, 0x46, 0x50,
0x15, 0x36, 0xa2, 0x0e, 0x2a, 0x41, 0x8d, 0x86, 0x0b, 0x46, 0x8c, 0xa0, 0xad, 0xa8, 0x83, 0xf6,
0xe1, 0x9c, 0xb7, 0x2b, 0x71, 0x07, 0x8d, 0xc2, 0x15, 0xff, 0x8f, 0x35, 0x28, 0x0d, 0x05, 0xb8,
0x89, 0x3d, 0x88, 0x6b, 0xb3, 0x2d, 0x07, 0xe5, 0x72, 0xca, 0x27, 0x2d, 0x06, 0x09, 0x57, 0x90,
0xd9, 0xae, 0x2e, 0x28, 0x62, 0x09, 0xea, 0xa0, 0x29, 0x0c, 0x52, 0x07, 0x71, 0xdd, 0x83, 0x1d,
0x4b, 0x50, 0xa3, 0xdd, 0x1f, 0x05, 0xdb, 0x10, 0x60, 0x29, 0x06, 0x83, 0xb8, 0x2e, 0x5d, 0x41,
0xb4, 0x3f, 0x58, 0x90, 0x81, 0x46, 0xc6, 0xe0, 0x18, 0x16, 0xa1, 0x0d, 0xda, 0x43, 0x3a, 0xb0,
0x02, 0x27, 0x30, 0x69, 0x09, 0x92, 0xbf, 0x0b, 0x42, 0xf4, 0xc0, 0x2a, 0xdc, 0x1a, 0x53, 0x38,
0x63, 0xb9, 0xd2, 0xac, 0x71, 0xdc, 0x7d, 0xbd, 0xf7, 0x42, 0x0c, 0xb8, 0x82, 0xcc, 0xc6, 0x35,
0xfd, 0x26, 0x78, 0x83, 0x67, 0xf6, 0xc2, 0x5e, 0xd9, 0x67, 0xc8, 0x79, 0x25, 0x5b, 0xd0, 0x2e,
0xdf, 0x8b, 0x6b, 0xe3, 0x64, 0x5a, 0x9f, 0xc2, 0x04, 0x0c, 0xb3, 0x2c, 0xcb, 0xc0, 0x38, 0x77,
0x46, 0x77, 0xea, 0x0e, 0x0e, 0xa0, 0xdb, 0x35, 0x74, 0x73, 0xbc, 0x3e, 0x84, 0x4b, 0x78, 0x84,
0x0b, 0x58, 0x63, 0xeb, 0xac, 0xc8, 0xce, 0xe0, 0x01, 0xca, 0x1c, 0x20, 0x35, 0x57, 0x50, 0x0a,
0xa6, 0x61, 0x09, 0xb6, 0xb9, 0xb6, 0x07, 0x83, 0xd0, 0x67, 0xe8, 0x65, 0x54, 0xef, 0x37, 0x8e,
0xa5, 0x7b, 0xb4, 0x40, 0x57, 0x6a, 0x0d, 0x0a, 0xdc, 0xe8, 0x4e, 0x9a, 0x4d, 0x3c, 0xb3, 0x0a,
0x96, 0x09, 0x41, 0xb3, 0x73, 0x99, 0x87, 0x31, 0xdd, 0xd4, 0xac, 0xb3, 0x3d, 0xb4, 0x96, 0x7d,
0x29, 0xc7, 0x73, 0xd4, 0x7c, 0xd0, 0x5f, 0x84, 0x05, 0xe1, 0x9d, 0x54, 0xab, 0x46, 0x1d, 0x94,
0xcf, 0xab, 0x21, 0xcf, 0x9b, 0x3a, 0x6a, 0x04, 0x19, 0xaf, 0x12, 0x19, 0xf9, 0xd7, 0x8f, 0x9e,
0x85, 0x09, 0x04, 0x75, 0xd5, 0x25, 0xf5, 0x5d, 0xf7, 0x0d, 0x2a, 0x30, 0xaf, 0x71, 0x68, 0xa7,
0x5d, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
0xce, 0x00, 0x00, 0x01, 0x70, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xed, 0x96, 0x3d, 0x4b, 0xc3,
0x40, 0x18, 0xc7, 0x2f, 0x34, 0x89, 0x22, 0xc4, 0x04, 0xdc, 0x7c, 0x59, 0x24, 0x90, 0xad, 0x79,
0x4f, 0xd6, 0xa8, 0x73, 0x15, 0x71, 0x13, 0x1c, 0xfd, 0x04, 0x82, 0x9b, 0xf8, 0x09, 0xea, 0xd4,
0xb9, 0xa3, 0xb8, 0xea, 0x66, 0x3f, 0x86, 0x38, 0x0b, 0x5a, 0xb5, 0x20, 0x0a, 0xe2, 0xd4, 0x45,
0xcf, 0xff, 0x23, 0x17, 0x08, 0x35, 0xea, 0x55, 0x4d, 0x29, 0x68, 0xe0, 0xc7, 0x71, 0xcf, 0xe5,
0x9e, 0xdf, 0xe5, 0xb9, 0x3b, 0x08, 0xe3, 0x9c, 0xb3, 0x51, 0xc0, 0xc6, 0x46, 0x64, 0xdb, 0xf6,
0x44, 0x18, 0x86, 0x7d, 0xc1, 0xce, 0xe0, 0x38, 0x62, 0xcf, 0xe0, 0xee, 0xc7, 0xa2, 0x2c, 0xcb,
0x26, 0x91, 0x88, 0x0b, 0xfa, 0x41, 0x10, 0xd4, 0x07, 0x44, 0x14, 0x7f, 0xfc, 0x55, 0x51, 0x14,
0x45, 0x47, 0x68, 0xcf, 0xe8, 0x2b, 0x2b, 0x15, 0x25, 0x49, 0x32, 0x83, 0xb6, 0x07, 0x9a, 0x95,
0x8a, 0xa8, 0x8f, 0xd2, 0x35, 0x68, 0x5f, 0xd0, 0x2e, 0x57, 0x2a, 0x22, 0x50, 0xc2, 0x36, 0xfa,
0x57, 0x9e, 0xe7, 0x59, 0x95, 0x8a, 0xd2, 0x34, 0x9d, 0x46, 0xff, 0x12, 0x1c, 0x56, 0x2a, 0x22,
0x7c, 0xdf, 0x5f, 0x41, 0xec, 0x65, 0x28, 0x11, 0xea, 0x7d, 0x8c, 0x72, 0x9c, 0x0c, 0x23, 0x12,
0x25, 0x6c, 0x7d, 0x26, 0xa2, 0x9c, 0x79, 0xde, 0xe2, 0xc9, 0xe1, 0x1f, 0xad, 0x06, 0x63, 0x1a,
0x63, 0x4c, 0x79, 0xb7, 0x4a, 0xc4, 0x68, 0x21, 0xc5, 0xe3, 0x5e, 0x72, 0xc7, 0xb8, 0xb4, 0xe8,
0xbb, 0x48, 0x89, 0xf0, 0xe8, 0x60, 0x03, 0x6c, 0x7d, 0x59, 0x7f, 0xc6, 0xb6, 0xc1, 0x26, 0x98,
0x92, 0x16, 0xe1, 0x89, 0x40, 0x0b, 0x3c, 0x00, 0x0a, 0x34, 0x24, 0x44, 0xab, 0xe2, 0xdd, 0x27,
0xd0, 0x06, 0x4b, 0x54, 0xd6, 0x52, 0x91, 0xe3, 0x38, 0x5c, 0x55, 0xd5, 0x9e, 0x98, 0xf0, 0x86,
0xa2, 0x28, 0x1c, 0x77, 0xa5, 0x4b, 0x77, 0x46, 0xd0, 0x15, 0x5c, 0x0b, 0x6e, 0x08, 0x9c, 0xc0,
0x5b, 0x7a, 0xb7, 0x38, 0xb7, 0x56, 0xab, 0xdd, 0x53, 0xce, 0xd2, 0x2f, 0xb2, 0x2c, 0xcb, 0xd5,
0x34, 0xed, 0x00, 0x93, 0x2e, 0xf2, 0x09, 0x88, 0xad, 0xc7, 0x71, 0xbc, 0x40, 0xe0, 0xfe, 0xcc,
0x13, 0xae, 0xeb, 0xce, 0x11, 0x10, 0xcc, 0x12, 0x86, 0x61, 0xac, 0x15, 0x16, 0x77, 0xae, 0xeb,
0xfa, 0xbe, 0x69, 0x9a, 0x8b, 0xb2, 0x7b, 0x94, 0x8a, 0x12, 0xee, 0x49, 0x94, 0x6e, 0x17, 0x34,
0x41, 0x7d, 0x7c, 0x4f, 0xdd, 0xbf, 0xe8, 0xef, 0x8a, 0x4e, 0x41, 0xa7, 0x02, 0x51, 0x27, 0xcf,
0x3b, 0xb2, 0xff, 0xba, 0x57, 0xa9, 0x62, 0x87, 0xa0, 0x34, 0xfb, 0xea, 0xd6, 0x00, 0x00, 0x00,
0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE add_dimension_xpm[1] = {{ png, sizeof( png ), "add_dimension_xpm" }};
......
......@@ -8,15 +8,15 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x00, 0x6b, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xed, 0xd3, 0xb1, 0x0a, 0x40,
0x50, 0x1c, 0x85, 0xf1, 0xef, 0xca, 0xe8, 0x01, 0xac, 0x1e, 0xc1, 0x64, 0xf0, 0x2c, 0x06, 0x83,
0xbc, 0x85, 0x6c, 0xbc, 0x80, 0x52, 0x94, 0x47, 0xfd, 0x1b, 0x88, 0x94, 0xd1, 0xbd, 0xa5, 0xce,
0xf0, 0xcd, 0xbf, 0xe5, 0x1c, 0xcc, 0x8c, 0x10, 0x21, 0x48, 0x90, 0xa0, 0x1f, 0x41, 0x4c, 0x24,
0xac, 0x8c, 0xbe, 0xba, 0xa1, 0x8d, 0x94, 0x05, 0xf3, 0x16, 0xb8, 0x50, 0x50, 0x76, 0x40, 0x3d,
0x31, 0x33, 0x39, 0x25, 0x1d, 0x05, 0xc3, 0xe7, 0x41, 0x73, 0x8d, 0x01, 0x70, 0x40, 0x05, 0xb4,
0x1e, 0xaa, 0x1f, 0xab, 0x3b, 0xb1, 0xc8, 0x47, 0x3a, 0xac, 0x20, 0x41, 0x82, 0xde, 0xdb, 0x01,
0xe4, 0x1f, 0xb1, 0x9e, 0xf9, 0x08, 0x63, 0x44, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44,
0xae, 0x42, 0x60, 0x82,
0xce, 0x00, 0x00, 0x00, 0x74, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xed, 0xd5, 0x31, 0x0a, 0xc2,
0x40, 0x14, 0x84, 0xe1, 0xff, 0x45, 0x21, 0x2b, 0xd8, 0x59, 0x58, 0x5b, 0x0a, 0x39, 0x59, 0x9a,
0xdc, 0x44, 0xb0, 0xf1, 0x64, 0xe9, 0x53, 0x58, 0x6d, 0x6f, 0xb1, 0x62, 0x92, 0xf1, 0x14, 0x6f,
0x43, 0xe0, 0xcd, 0x05, 0x3e, 0x66, 0x9a, 0x31, 0x49, 0xd4, 0x48, 0x43, 0xa5, 0x04, 0x14, 0x50,
0x40, 0x3b, 0x82, 0x8e, 0x00, 0xf6, 0xb2, 0x33, 0x85, 0xce, 0x45, 0x38, 0x30, 0x69, 0x50, 0x36,
0x1e, 0x9c, 0x58, 0x79, 0x03, 0x17, 0xa7, 0x32, 0x99, 0x1f, 0xf7, 0x86, 0x2f, 0x09, 0x98, 0x5d,
0x57, 0x6b, 0x29, 0x26, 0x09, 0x7b, 0xda, 0x95, 0x85, 0x9b, 0x0b, 0x93, 0x18, 0xd5, 0xeb, 0x63,
0x71, 0x13, 0x01, 0x05, 0x14, 0xd0, 0x76, 0xd0, 0x1f, 0x27, 0x57, 0x1c, 0xc2, 0x57, 0xbf, 0x3f,
0x4a, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE add_entry_xpm[1] = {{ png, sizeof( png ), "add_entry_xpm" }};
......
......@@ -8,42 +8,36 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x02, 0x1b, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xed, 0xd6, 0xcd, 0x4b, 0x54,
0x51, 0x18, 0xc7, 0xf1, 0xcf, 0x8c, 0x8d, 0xe3, 0x50, 0xd2, 0x1b, 0x59, 0xa6, 0xc5, 0x38, 0x09,
0x6d, 0xa2, 0x90, 0xc0, 0x5d, 0x8b, 0x40, 0x28, 0xa2, 0xa0, 0x20, 0x24, 0x82, 0xc0, 0xca, 0x8a,
0x96, 0x45, 0x10, 0xed, 0x42, 0xc8, 0x45, 0xd9, 0xa2, 0x36, 0xfd, 0x09, 0x81, 0xb5, 0x08, 0x82,
0x72, 0x59, 0xa0, 0x48, 0xef, 0x82, 0x9e, 0x08, 0x82, 0x16, 0x89, 0xe0, 0x26, 0xe9, 0x95, 0xd2,
0xc8, 0xd3, 0xe6, 0x06, 0x17, 0xf3, 0x65, 0xc6, 0xa8, 0x55, 0x8b, 0x2f, 0x97, 0x7b, 0x0f, 0xf7,
0xf7, 0xe5, 0x9c, 0xf3, 0x3c, 0xe7, 0x5e, 0x31, 0x46, 0xff, 0x02, 0xff, 0x45, 0x7f, 0x24, 0x0a,
0x3c, 0x0e, 0xbc, 0x5a, 0x2c, 0x23, 0x9c, 0x29, 0x57, 0xf4, 0x3e, 0x10, 0xff, 0x80, 0x1f, 0x2f,
0xd9, 0x5f, 0x96, 0x68, 0x98, 0x8f, 0xf5, 0x8a, 0x9d, 0xeb, 0x15, 0xdb, 0x2b, 0xa1, 0x5b, 0x6d,
0x4f, 0x60, 0x7a, 0x84, 0x2f, 0x81, 0x96, 0xb2, 0x44, 0x79, 0xcd, 0xbb, 0x90, 0xa9, 0x74, 0xfd,
0x07, 0x64, 0xbb, 0x02, 0x71, 0x84, 0xb1, 0x97, 0xd4, 0x2f, 0x4a, 0x84, 0x26, 0xbc, 0xc3, 0x07,
0x4c, 0x60, 0xdb, 0x6c, 0x41, 0x83, 0xb2, 0xb7, 0x13, 0xd9, 0x93, 0x51, 0x0a, 0x8b, 0x11, 0xdd,
0x40, 0x4c, 0xf1, 0x00, 0xc5, 0x99, 0x41, 0xf7, 0xc9, 0x0f, 0xca, 0x3e, 0x4f, 0xf6, 0xac, 0x37,
0xce, 0xcc, 0x99, 0x4f, 0x84, 0x7a, 0x7c, 0x4b, 0x04, 0xa3, 0xc9, 0x75, 0x0a, 0x1d, 0xb3, 0xcd,
0xaa, 0x9f, 0x35, 0x4f, 0x65, 0xc7, 0x02, 0xf1, 0x71, 0x75, 0xf6, 0x72, 0xbe, 0xa7, 0xb4, 0xe2,
0x17, 0x0b, 0x89, 0xae, 0x24, 0xe1, 0xdf, 0x71, 0x21, 0x59, 0xc2, 0x88, 0x3e, 0x34, 0xcc, 0x26,
0xeb, 0x93, 0xdb, 0x3a, 0x24, 0xf3, 0x39, 0x10, 0x0f, 0x1c, 0xae, 0x8b, 0xf9, 0x9e, 0x52, 0xcc,
0xf7, 0x94, 0xe2, 0x9c, 0x22, 0xac, 0xc2, 0xa7, 0x24, 0x78, 0x00, 0xc7, 0x71, 0x35, 0xb9, 0xff,
0x8a, 0xf6, 0xb9, 0x8a, 0xe3, 0xa1, 0xaa, 0xb3, 0x81, 0xf8, 0x2c, 0x97, 0x89, 0x75, 0x5d, 0xc5,
0x05, 0x45, 0x17, 0x53, 0xfb, 0x72, 0x0f, 0xdd, 0xe8, 0x4a, 0x3d, 0xbb, 0x83, 0xba, 0x99, 0x92,
0xc0, 0xba, 0xc0, 0xdb, 0x40, 0x3c, 0xb9, 0x77, 0xd5, 0xfc, 0x33, 0xc2, 0xb2, 0xd4, 0x32, 0xcd,
0xc5, 0x47, 0xec, 0x4b, 0x4b, 0x46, 0x29, 0x24, 0xa7, 0x4c, 0x1c, 0x50, 0xd5, 0x9b, 0xd3, 0x78,
0x82, 0x25, 0xad, 0x68, 0x99, 0x4b, 0x74, 0x2e, 0x15, 0xd8, 0x8b, 0x6b, 0x29, 0x7a, 0x53, 0x63,
0x37, 0xb1, 0x32, 0xc6, 0x28, 0x92, 0x09, 0xdc, 0x0a, 0xc4, 0x21, 0x99, 0xfe, 0xd5, 0x8a, 0x47,
0x28, 0xae, 0x98, 0xaf, 0xea, 0xf2, 0x78, 0x83, 0x49, 0x8c, 0xe3, 0x14, 0x8a, 0xa8, 0x4e, 0xa8,
0xc1, 0xeb, 0xa4, 0x40, 0xc6, 0xd1, 0x96, 0x64, 0x5c, 0x4a, 0xfa, 0xe8, 0xf5, 0x16, 0x1b, 0x8e,
0x15, 0x94, 0x36, 0x96, 0x55, 0xde, 0xd8, 0x89, 0x3d, 0xbf, 0x82, 0x7e, 0x6b, 0x40, 0x5a, 0x93,
0xf1, 0xdd, 0x2f, 0x38, 0x9a, 0xf4, 0xcf, 0x44, 0xbb, 0xba, 0xce, 0x9c, 0xe6, 0x16, 0x95, 0xf4,
0x51, 0x39, 0x04, 0x76, 0x04, 0x26, 0x03, 0x53, 0x97, 0xd4, 0x9e, 0xae, 0x51, 0x6a, 0x9b, 0x2d,
0x23, 0x7d, 0x7a, 0x4f, 0x0f, 0xc9, 0x4c, 0x04, 0xc6, 0x2b, 0xe4, 0x5b, 0x20, 0xde, 0x95, 0x3b,
0x5f, 0xad, 0xe9, 0x20, 0xdb, 0x73, 0xf3, 0x9d, 0x75, 0xe3, 0x23, 0x4c, 0x0e, 0x33, 0x95, 0xbc,
0x58, 0x11, 0x8f, 0x64, 0xaf, 0x17, 0x6c, 0x3a, 0x44, 0x69, 0xf9, 0x82, 0x5f, 0xd8, 0x82, 0xc6,
0x86, 0x1a, 0x9b, 0x3a, 0xaa, 0x35, 0x1d, 0xac, 0x94, 0x1a, 0xcd, 0x47, 0x0a, 0x9a, 0x1b, 0xcb,
0xfa, 0x94, 0xa3, 0x8a, 0xcd, 0xb5, 0x8b, 0x63, 0xed, 0xd2, 0xff, 0x7f, 0x41, 0x7f, 0x8d, 0x9f,
0x8e, 0x31, 0x67, 0x6a, 0x5f, 0x12, 0x40, 0xd2, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44,
0xae, 0x42, 0x60, 0x82,
0xce, 0x00, 0x00, 0x01, 0xc1, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xed, 0x96, 0x31, 0x48, 0x02,
0x61, 0x14, 0xc7, 0x5f, 0x77, 0xa6, 0x17, 0x72, 0xd0, 0xe2, 0x68, 0xb9, 0x38, 0x8a, 0x42, 0x81,
0x63, 0x2d, 0x42, 0x53, 0x21, 0x4e, 0x82, 0xa3, 0x2d, 0x4a, 0xd0, 0x12, 0x21, 0x2e, 0x5a, 0x4a,
0x44, 0x51, 0x38, 0x55, 0x93, 0x05, 0x0d, 0x89, 0x38, 0xeb, 0x64, 0x2d, 0x82, 0x46, 0x60, 0x20,
0x68, 0x82, 0xe0, 0x2a, 0x35, 0x09, 0x89, 0x92, 0x79, 0xff, 0x3e, 0x6f, 0x28, 0xaa, 0xb3, 0xba,
0x32, 0x69, 0xe8, 0xe0, 0x0f, 0x1f, 0xf7, 0xf1, 0xde, 0xef, 0x1e, 0xff, 0xf7, 0xbd, 0xfb, 0x08,
0x00, 0x8d, 0x42, 0xf4, 0x0f, 0xfa, 0xfb, 0xa0, 0x10, 0x91, 0xc0, 0x74, 0xcc, 0x74, 0xa1, 0x46,
0x61, 0xa2, 0x35, 0xb5, 0xa0, 0x79, 0x26, 0x1c, 0x58, 0xad, 0x88, 0xcf, 0xcd, 0x7d, 0x49, 0x87,
0x36, 0x1b, 0xfa, 0x31, 0x0c, 0xb6, 0xa2, 0x1a, 0x54, 0x3f, 0x3f, 0xc7, 0x57, 0x1f, 0xa9, 0xd7,
0xc3, 0xd9, 0xd2, 0x92, 0x14, 0x1e, 0x1b, 0x93, 0x58, 0xec, 0xe2, 0x8f, 0x41, 0x9d, 0x4e, 0x07,
0xa1, 0x50, 0x08, 0x99, 0x4c, 0xe6, 0xdd, 0xde, 0x43, 0xab, 0x85, 0xa3, 0x99, 0x99, 0x5e, 0x98,
0xe3, 0xda, 0x2c, 0x7e, 0xf6, 0x47, 0xa0, 0x54, 0x2a, 0x05, 0x8e, 0xe3, 0x60, 0xb1, 0x58, 0x14,
0x2b, 0xbb, 0x6f, 0x34, 0xb0, 0x6f, 0x34, 0x3e, 0x6e, 0xf0, 0xfc, 0x6d, 0x84, 0x68, 0xfa, 0xdb,
0x20, 0x97, 0xcb, 0x05, 0x9f, 0xcf, 0x07, 0x41, 0x10, 0x50, 0x2a, 0x95, 0x14, 0x61, 0x77, 0xe5,
0x32, 0xb6, 0x44, 0xf1, 0x71, 0x43, 0xa3, 0xb9, 0x61, 0x79, 0x26, 0x55, 0x83, 0x9a, 0xcd, 0xa6,
0x0c, 0x28, 0x16, 0x8b, 0x70, 0x3a, 0x9d, 0x08, 0x04, 0x02, 0x03, 0x3d, 0xab, 0x67, 0xb3, 0x60,
0xa0, 0xbe, 0x67, 0xd9, 0x23, 0xa2, 0x71, 0x55, 0xa0, 0x78, 0x3c, 0x0e, 0xb3, 0xd9, 0x2c, 0xaf,
0x13, 0x89, 0x04, 0x4c, 0x26, 0x13, 0x24, 0x49, 0x1a, 0x08, 0xbb, 0x3e, 0x39, 0x91, 0x3b, 0x71,
0xd9, 0x48, 0x97, 0xb4, 0xc3, 0xd2, 0xbe, 0x68, 0x9d, 0xf6, 0x68, 0x62, 0x20, 0xc8, 0xe1, 0x70,
0x20, 0x18, 0x0c, 0xca, 0xeb, 0x16, 0x33, 0x5e, 0xaf, 0xd7, 0x23, 0x97, 0xcb, 0x7d, 0xd8, 0x8d,
0xa7, 0x0b, 0x0b, 0x32, 0x4c, 0xd8, 0x24, 0xd0, 0xee, 0x2b, 0x79, 0x15, 0x41, 0x0d, 0x66, 0x32,
0xcf, 0xf3, 0x48, 0x26, 0x93, 0xa8, 0x54, 0x2a, 0xb2, 0xfa, 0x60, 0xbf, 0xdf, 0xff, 0x69, 0x45,
0xde, 0x29, 0xba, 0x7a, 0x53, 0xd1, 0x2a, 0x6d, 0x93, 0xa8, 0x08, 0x8a, 0xc5, 0x62, 0x72, 0xb7,
0xe9, 0x74, 0xba, 0x67, 0x69, 0xb5, 0x5a, 0x18, 0x0c, 0x06, 0x74, 0xbb, 0xdd, 0xe1, 0x79, 0x64,
0xb7, 0xdb, 0x11, 0x89, 0x44, 0x5e, 0x25, 0x6b, 0xb7, 0xdb, 0x10, 0x45, 0x11, 0xe9, 0x74, 0x7a,
0x38, 0x5d, 0x57, 0xab, 0xd5, 0xd8, 0x5b, 0x42, 0xb5, 0x5a, 0x7d, 0xf7, 0xe5, 0x6e, 0xb7, 0x1b,
0x1e, 0x8f, 0x67, 0x38, 0xe7, 0x28, 0x9f, 0xcf, 0x23, 0x1a, 0x8d, 0x2a, 0xfa, 0x50, 0x28, 0x14,
0x9e, 0x2b, 0x1d, 0xea, 0x64, 0xf8, 0x95, 0x59, 0x37, 0x8a, 0xe9, 0x3d, 0x9a, 0xff, 0xd1, 0xff,
0x9d, 0xe1, 0xcf, 0x83, 0x9e, 0x00, 0x5a, 0xce, 0x5e, 0x60, 0x01, 0xb3, 0x24, 0x02, 0x00, 0x00,
0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE add_glabel_xpm[1] = {{ png, sizeof( png ), "add_glabel_xpm" }};
......
This diff is collapsed.
......@@ -8,34 +8,18 @@
static const unsigned char png[] = {
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c,
0xce, 0x00, 0x00, 0x01, 0xa3, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xed, 0xd6, 0x3f, 0x6b, 0x93,
0x51, 0x14, 0xc7, 0xf1, 0x4f, 0x93, 0x68, 0xb1, 0xad, 0x0a, 0x2a, 0x82, 0x50, 0x8b, 0x08, 0x0e,
0x82, 0x83, 0x55, 0x42, 0x03, 0x15, 0xa9, 0xed, 0x93, 0x22, 0xb4, 0xda, 0x5a, 0x70, 0x11, 0x1b,
0x33, 0x39, 0xb4, 0xd1, 0xc5, 0x46, 0xa7, 0x8a, 0xa0, 0x2f, 0x40, 0x7c, 0x01, 0xba, 0xf8, 0x0a,
0x1c, 0x74, 0x76, 0x12, 0xc1, 0x97, 0xa2, 0xa3, 0xf4, 0x1f, 0x7d, 0xae, 0x83, 0x4f, 0x4a, 0x12,
0x7d, 0xe2, 0x93, 0xc6, 0x8a, 0x43, 0x87, 0xdf, 0x76, 0xee, 0xfd, 0x72, 0xce, 0xf9, 0x9d, 0x7b,
0xae, 0x10, 0x82, 0x5e, 0x84, 0xbe, 0x86, 0x3a, 0xc6, 0xf5, 0x04, 0x59, 0x15, 0x76, 0xc4, 0x31,
0x14, 0xfe, 0x05, 0xa8, 0x8a, 0xe3, 0x69, 0x99, 0xfd, 0x4d, 0x50, 0x0d, 0x27, 0xf7, 0x41, 0x9d,
0x01, 0x65, 0xe7, 0x44, 0x5e, 0x59, 0x10, 0x5c, 0x17, 0xdc, 0x12, 0x14, 0x7d, 0x74, 0xc1, 0x04,
0x0e, 0xf4, 0x0c, 0xf2, 0x4c, 0xce, 0x94, 0x27, 0xca, 0xd6, 0x2c, 0xda, 0xb6, 0x24, 0x78, 0x24,
0x58, 0x12, 0xdc, 0x15, 0x8b, 0x6c, 0x1a, 0xf7, 0xd2, 0x09, 0x87, 0xdb, 0x33, 0xeb, 0x0e, 0x34,
0xad, 0x6e, 0xd6, 0x77, 0x2b, 0x4d, 0x25, 0x6b, 0xd6, 0x8a, 0x60, 0xc6, 0xba, 0x31, 0x6f, 0x70,
0xb4, 0x19, 0x96, 0x1d, 0x12, 0x39, 0xaf, 0x6c, 0x4d, 0x3d, 0x05, 0xd2, 0xd0, 0x63, 0x41, 0x64,
0xd3, 0x19, 0x55, 0x0c, 0xfc, 0x02, 0x42, 0x01, 0xfd, 0xa9, 0x8a, 0xbc, 0xb6, 0x28, 0xee, 0x08,
0x69, 0xe8, 0x9e, 0x58, 0xc9, 0x27, 0x8c, 0x20, 0xbf, 0x03, 0xca, 0x74, 0x78, 0x5e, 0x50, 0xcb,
0x10, 0xb7, 0x2a, 0x78, 0x28, 0x98, 0xf4, 0x15, 0x25, 0xf4, 0x77, 0x07, 0x9a, 0x16, 0xfe, 0x58,
0xb6, 0xd6, 0xf2, 0x6d, 0xe3, 0x26, 0x06, 0xbb, 0x03, 0xcd, 0x75, 0x9d, 0xd1, 0x37, 0xdc, 0x68,
0x05, 0xfd, 0xec, 0xcf, 0x08, 0x2e, 0xa1, 0xf8, 0x5b, 0x5d, 0xf5, 0x4e, 0x25, 0x63, 0x8f, 0xaa,
0x62, 0x25, 0x5f, 0x30, 0xd6, 0x52, 0xba, 0x04, 0x96, 0xc7, 0xc1, 0x54, 0x5d, 0x71, 0x59, 0xd9,
0x7a, 0x46, 0xd7, 0x6d, 0x39, 0xe5, 0x39, 0x4e, 0xb7, 0x98, 0x21, 0xb3, 0xc5, 0xa7, 0x3c, 0x35,
0xd3, 0xc1, 0xe2, 0x75, 0xc1, 0xac, 0x0d, 0xa3, 0x3e, 0x24, 0x46, 0x38, 0xb4, 0xbb, 0x81, 0xbd,
0x2d, 0x6f, 0xd2, 0x0b, 0x65, 0x1b, 0x2a, 0x62, 0xb5, 0xe4, 0xf2, 0x9a, 0xa0, 0x22, 0x16, 0xd9,
0x32, 0xea, 0xbd, 0x82, 0x6b, 0x38, 0xb2, 0xab, 0x81, 0x6d, 0xd9, 0xa8, 0xe3, 0x2e, 0x9a, 0xf0,
0xd6, 0x7c, 0xe2, 0xc6, 0x39, 0x41, 0xd1, 0x67, 0xc3, 0x6a, 0x38, 0x8b, 0x81, 0x9e, 0x9e, 0xa0,
0x36, 0x60, 0xae, 0xed, 0xf5, 0x7e, 0x80, 0xe1, 0xb4, 0x2d, 0xbb, 0xbf, 0x8f, 0xfe, 0x0b, 0xd0,
0xf2, 0xde, 0x81, 0x18, 0xc2, 0x02, 0xee, 0xe3, 0x4e, 0xf2, 0xe5, 0xda, 0x13, 0x50, 0x1f, 0x06,
0x93, 0x99, 0x19, 0x42, 0x2e, 0x2d, 0xf6, 0x07, 0x38, 0xc8, 0x81, 0xcd, 0xab, 0xde, 0xd2, 0xd3,
0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82,
0xce, 0x00, 0x00, 0x00, 0x9a, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0x63, 0xf8, 0xff, 0xff, 0x3f,
0x03, 0x3d, 0x30, 0x45, 0x9a, 0xfd, 0xfc, 0xfc, 0x3c, 0x7c, 0x7d, 0x7d, 0x13, 0x40, 0x34, 0x4d,
0x2d, 0x82, 0x5a, 0xd2, 0x00, 0xa2, 0x47, 0x2d, 0x1a, 0xb5, 0x88, 0xf6, 0x16, 0x31, 0x34, 0x30,
0x08, 0x28, 0x67, 0x28, 0x4f, 0x90, 0xcd, 0x93, 0xdd, 0x09, 0xa2, 0x41, 0x7c, 0xaa, 0x5b, 0xc4,
0xd0, 0xcc, 0xe0, 0xc3, 0xd0, 0xc4, 0xf0, 0x02, 0x88, 0xff, 0x23, 0xe1, 0x17, 0x20, 0x71, 0xaa,
0x59, 0x04, 0x34, 0x50, 0x17, 0x88, 0x7f, 0xa2, 0x59, 0x02, 0xc3, 0x20, 0x71, 0x5d, 0x9c, 0x16,
0x79, 0x79, 0x79, 0x49, 0x04, 0x04, 0x04, 0x28, 0x10, 0x83, 0x59, 0x1a, 0x58, 0x76, 0xe1, 0xb0,
0x04, 0x86, 0x37, 0xe0, 0xb4, 0x08, 0x16, 0xa9, 0xc4, 0x60, 0x96, 0x7a, 0x96, 0xcf, 0x04, 0x2c,
0x7a, 0x36, 0xf0, 0x16, 0xd1, 0x2d, 0xe8, 0xe8, 0x96, 0x18, 0x06, 0x65, 0xf2, 0xa6, 0x6b, 0x86,
0x1d, 0x2d, 0x54, 0x47, 0x2d, 0x1a, 0x38, 0x8b, 0xe8, 0xd6, 0xdc, 0x22, 0x05, 0x03, 0x00, 0x5f,
0x00, 0xcf, 0xb1, 0x61, 0x8e, 0x75, 0x4a, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae,
0x42, 0x60, 0x82,
};
const BITMAP_OPAQUE add_junction_xpm[1] = {{ png, sizeof( png ), "add_junction_xpm" }};
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment