Minor search path updates, initial UI clean up, and more wxDC zoom work.
* Add default OS program install path(s) to search path list as fail safe. * Remove unnecessary wxGetApp calls in WinEDA_App class methods. * Remove non-standard message panel font and changed background to system menu color. * Remove italic fonts from menus. * Remove non-standard font in Kicad app project tree. * Remove font selection dialog menu items from apps for removed fonts. * Remove all global variables and settings associated with the removed fonts. * Fixed PCBNew export and import library file dialog response tests from wxCANCEL to wxID_CANCEL.
This commit is contained in:
parent
50d1bcb171
commit
cc661bdce8
|
@ -39,7 +39,6 @@ WinEDA_BasicFrame::WinEDA_BasicFrame( wxWindow* father,
|
|||
wxSize minsize;
|
||||
|
||||
m_Ident = idtype;
|
||||
SetFont( *g_StdFont );
|
||||
m_HToolBar = NULL;
|
||||
m_FrameIsActive = TRUE;
|
||||
m_MsgFrameHeight = MSG_PANEL_DEFAULT_HEIGHT;
|
||||
|
@ -302,19 +301,6 @@ void WinEDA_BasicFrame::ProcessFontPreferences( int id )
|
|||
case ID_PREFERENCES_FONT:
|
||||
break;
|
||||
|
||||
case ID_PREFERENCES_FONT_STATUS:
|
||||
font = wxGetFontFromUser( this, *g_StdFont );
|
||||
if( font.Ok() )
|
||||
{
|
||||
int pointsize = font.GetPointSize();
|
||||
*g_StdFont = font;
|
||||
SetFont( *g_StdFont );
|
||||
if( GetStatusBar() )
|
||||
GetStatusBar()->SetFont( *g_StdFont );
|
||||
g_StdFontPointSize = pointsize;
|
||||
}
|
||||
break;
|
||||
|
||||
case ID_PREFERENCES_FONT_DIALOG:
|
||||
font = wxGetFontFromUser( this, *g_DialogFont );
|
||||
if( font.Ok() )
|
||||
|
|
|
@ -70,16 +70,11 @@ wxString g_UserLibDirBuffer;
|
|||
int g_DebugLevel;
|
||||
int g_MouseOldButtons;
|
||||
int g_KeyPressed;
|
||||
wxFont* g_StdFont = NULL;
|
||||
wxFont* g_DialogFont = NULL; /* Normal font used in dialog box */
|
||||
wxFont* g_ItalicFont = NULL; /* Italic font used in dialog box */
|
||||
wxFont* g_MsgFont = NULL; /* Italic font used in message panel */
|
||||
wxFont* g_FixedFont = NULL; /* Affichage de Texte en fenetres de dialogue,
|
||||
* fonte a pas fixe)*/
|
||||
int g_StdFontPointSize; /* taille de la fonte */
|
||||
int g_DialogFontPointSize; /* taille de la fonte */
|
||||
int g_FixedFontPointSize; /* taille de la fonte */
|
||||
int g_MsgFontPointSize; /* taille de la fonte */
|
||||
int g_FontMinPointSize; /* taille minimum des fontes */
|
||||
|
||||
|
||||
|
|
|
@ -128,16 +128,6 @@ void WinEDA_DrawFrame::AddFontSelectionMenu( wxMenu* main_menu )
|
|||
_( "Dialog boxes" ),
|
||||
fonts_xpm );
|
||||
|
||||
ADD_MENUITEM( fontmenu,
|
||||
ID_PREFERENCES_FONT_INFOSCREEN,
|
||||
_( "Lists" ),
|
||||
fonts_xpm );
|
||||
|
||||
ADD_MENUITEM( fontmenu,
|
||||
ID_PREFERENCES_FONT_STATUS,
|
||||
_( "Status box" ),
|
||||
fonts_xpm );
|
||||
|
||||
ADD_MENUITEM_WITH_HELP_AND_SUBMENU( main_menu,
|
||||
fontmenu,
|
||||
ID_PREFERENCES_FONT,
|
||||
|
@ -151,30 +141,17 @@ void WinEDA_DrawFrame::ProcessFontPreferences( wxCommandEvent& event )
|
|||
/********************************************************************/
|
||||
{
|
||||
int id = event.GetId();
|
||||
wxFont font;
|
||||
|
||||
switch( id )
|
||||
{
|
||||
case ID_PREFERENCES_FONT:
|
||||
case ID_PREFERENCES_FONT_DIALOG:
|
||||
case ID_PREFERENCES_FONT_STATUS:
|
||||
WinEDA_BasicFrame::ProcessFontPreferences( id );
|
||||
break;
|
||||
|
||||
case ID_PREFERENCES_FONT_INFOSCREEN:
|
||||
{
|
||||
font = wxGetFontFromUser( this, *g_MsgFont );
|
||||
if( font.Ok() )
|
||||
{
|
||||
int pointsize = font.GetPointSize();
|
||||
*g_MsgFont = font;
|
||||
g_MsgFontPointSize = pointsize;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
default:
|
||||
DisplayError( this, wxT( "WinEDA_DrawFrame::ProcessFontPreferences Internal Error" ) );
|
||||
DisplayError( this, wxT( "WinEDA_DrawFrame::ProcessFontPreferences " \
|
||||
"Internal Error" ) );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -201,14 +201,13 @@ void WinEDA_DrawPanel::PrepareGraphicContext( wxDC* DC )
|
|||
wxPoint origin = GetScreen()->m_DrawOrg;
|
||||
wxLogDebug( wxT( "DC user scale factor: %0.3f, X origin: %d, Y " \
|
||||
"origin: %d" ), scale, origin.x, origin.y );
|
||||
DoPrepareDC( *DC );
|
||||
int ppuX, ppuY, startX, startY;
|
||||
GetScrollPixelsPerUnit(& ppuX, & ppuY);
|
||||
GetViewStart(& startX, & startY);
|
||||
DC->SetDeviceOrigin( origin.x - startX * ppuX, origin.y - startY * ppuY );
|
||||
DC->SetUserScale( scale, scale );
|
||||
DC->SetLogicalOrigin( origin.x, origin.y );
|
||||
|
||||
int x, y;
|
||||
wxPoint logicalPos = GetScreen()->m_Curseur - origin;;
|
||||
CalcScrolledPosition( logicalPos.x, logicalPos.y, &x, &y );
|
||||
Scroll( x, y );
|
||||
wxSize size = GetScreen()->ReturnPageSize() * 2 * scale;
|
||||
// DC->SetLogicalOrigin( origin.x, origin.y );
|
||||
#endif
|
||||
SetBoundaryBox();
|
||||
}
|
||||
|
@ -549,9 +548,24 @@ void WinEDA_DrawPanel::EraseScreen( wxDC* DC )
|
|||
{
|
||||
GRSetDrawMode( DC, GR_COPY );
|
||||
|
||||
#ifndef WX_ZOOM
|
||||
GRSFilledRect( &m_ClipBox, DC, m_ClipBox.GetX(), m_ClipBox.GetY(),
|
||||
m_ClipBox.GetRight(), m_ClipBox.GetBottom(),
|
||||
g_DrawBgColor, g_DrawBgColor );
|
||||
#else
|
||||
EDA_Rect tmp = m_ClipBox;
|
||||
|
||||
m_ClipBox.m_Pos.x = DC->DeviceToLogicalX( m_ClipBox.m_Pos.x );
|
||||
m_ClipBox.m_Pos.y = DC->DeviceToLogicalY( m_ClipBox.m_Pos.y );
|
||||
m_ClipBox.m_Size.SetWidth( DC->DeviceToLogicalXRel( m_ClipBox.m_Size.GetWidth() ) );
|
||||
m_ClipBox.m_Size.SetHeight( DC->DeviceToLogicalYRel( m_ClipBox.m_Size.GetHeight() ) );
|
||||
|
||||
GRSFilledRect( &m_ClipBox, DC, m_ClipBox.GetX(), m_ClipBox.GetY(),
|
||||
m_ClipBox.GetRight(), m_ClipBox.GetBottom(),
|
||||
g_DrawBgColor, g_DrawBgColor );
|
||||
|
||||
m_ClipBox = tmp;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
@ -604,7 +618,7 @@ void WinEDA_DrawPanel::OnPaint( wxPaintEvent& event )
|
|||
m_ClipBox.m_Pos.x = paintDC.DeviceToLogicalX( m_ClipBox.m_Pos.x );
|
||||
m_ClipBox.m_Pos.y = paintDC.DeviceToLogicalY( m_ClipBox.m_Pos.y );
|
||||
m_ClipBox.m_Size.SetWidth( paintDC.DeviceToLogicalXRel( m_ClipBox.m_Size.GetWidth() ) );
|
||||
m_ClipBox.m_Size.SetHeight( paintDC.DeviceToLogicalXRel( m_ClipBox.m_Size.GetHeight() ) );
|
||||
m_ClipBox.m_Size.SetHeight( paintDC.DeviceToLogicalYRel( m_ClipBox.m_Size.GetHeight() ) );
|
||||
#else
|
||||
PaintClipBox.Offset( org );
|
||||
m_ClipBox.SetX( PaintClipBox.GetX() );
|
||||
|
@ -665,9 +679,7 @@ void WinEDA_DrawPanel::ReDraw( wxDC* DC, bool erasebg )
|
|||
}
|
||||
|
||||
if( erasebg )
|
||||
PrepareGraphicContext( DC );
|
||||
|
||||
DC->SetFont( *g_StdFont );
|
||||
EraseScreen( DC );
|
||||
|
||||
SetBackgroundColour( wxColour( ColorRefs[g_DrawBgColor].m_Red,
|
||||
ColorRefs[g_DrawBgColor].m_Green,
|
||||
|
@ -744,10 +756,16 @@ void WinEDA_DrawPanel::DrawBackGround( wxDC* DC )
|
|||
screen->Unscale( size );
|
||||
|
||||
#ifdef WX_ZOOM
|
||||
screen_grid_size = screen->GetGrid();
|
||||
|
||||
if( DC->LogicalToDeviceXRel( (int) screen_grid_size.x ) < 5
|
||||
|| DC->LogicalToDeviceYRel( (int) screen_grid_size.y ) < 5 )
|
||||
drawgrid = false;
|
||||
|
||||
org.x = DC->DeviceToLogicalX( org.x );
|
||||
org.y = DC->DeviceToLogicalY( org.y );
|
||||
size.SetWidth( DC->DeviceToLogicalXRel( size.GetWidth() ) );
|
||||
size.SetHeight( DC->DeviceToLogicalXRel( size.GetHeight() ) );
|
||||
size.SetHeight( DC->DeviceToLogicalYRel( size.GetHeight() ) );
|
||||
#endif
|
||||
|
||||
if( drawgrid )
|
||||
|
|
|
@ -247,11 +247,8 @@ WinEDA_App::~WinEDA_App()
|
|||
if( m_EDA_CommonConfig )
|
||||
delete m_EDA_CommonConfig;
|
||||
delete m_EDA_Config;
|
||||
delete g_StdFont;
|
||||
delete g_DialogFont;
|
||||
delete g_ItalicFont;
|
||||
delete g_FixedFont;
|
||||
delete g_MsgFont;
|
||||
if( m_Checker )
|
||||
delete m_Checker;
|
||||
delete m_Locale;
|
||||
|
@ -286,8 +283,8 @@ void WinEDA_App::InitEDA_Appl( const wxString& aName, id_app_type aId )
|
|||
m_KicadEnv += UNIX_STRING_DIR_SEP;
|
||||
}
|
||||
|
||||
/* Prepare On Line Help. Use only lower case for help filenames, in order to
|
||||
* avoid problems with upper/lower case filenames under windows and unix */
|
||||
/* Prepare On Line Help. Use only lower case for help file names, in order to
|
||||
* avoid problems with upper/lower case file names under windows and unix */
|
||||
#if defined ONLINE_HELP_FILES_FORMAT_IS_HTML
|
||||
m_HelpFileName = aName.Lower() + wxT( ".html" );
|
||||
#elif defined ONLINE_HELP_FILES_FORMAT_IS_PDF
|
||||
|
@ -306,23 +303,12 @@ void WinEDA_App::InitEDA_Appl( const wxString& aName, id_app_type aId )
|
|||
wxASSERT( m_EDA_CommonConfig != NULL );
|
||||
|
||||
/* Create the fonts used in dialogs and messages */
|
||||
g_StdFontPointSize = FONT_DEFAULT_SIZE;
|
||||
g_MsgFontPointSize = FONT_DEFAULT_SIZE;
|
||||
g_DialogFontPointSize = FONT_DEFAULT_SIZE;
|
||||
g_FixedFontPointSize = FONT_DEFAULT_SIZE;
|
||||
|
||||
g_StdFont = new wxFont( g_StdFontPointSize, wxFONTFAMILY_ROMAN,
|
||||
wxNORMAL, wxNORMAL );
|
||||
|
||||
g_MsgFont = new wxFont( g_StdFontPointSize, wxFONTFAMILY_ROMAN,
|
||||
wxNORMAL, wxNORMAL );
|
||||
|
||||
g_DialogFont = new wxFont( g_DialogFontPointSize, wxFONTFAMILY_ROMAN,
|
||||
wxNORMAL, wxNORMAL );
|
||||
|
||||
g_ItalicFont = new wxFont( g_DialogFontPointSize, wxFONTFAMILY_ROMAN,
|
||||
wxFONTSTYLE_ITALIC, wxNORMAL );
|
||||
|
||||
g_FixedFont = new wxFont( g_FixedFontPointSize, wxFONTFAMILY_MODERN,
|
||||
wxNORMAL, wxNORMAL );
|
||||
|
||||
|
@ -460,7 +446,7 @@ bool WinEDA_App::SetBinDir()
|
|||
*/
|
||||
m_BinDir.Replace( WIN_STRING_DIR_SEP, UNIX_STRING_DIR_SEP );
|
||||
|
||||
// Remove filename form command line:
|
||||
// Remove file name form command line:
|
||||
while( m_BinDir.Last() != '/' && !m_BinDir.IsEmpty() )
|
||||
m_BinDir.RemoveLast();
|
||||
|
||||
|
@ -483,6 +469,7 @@ void WinEDA_App::SetDefaultSearchPaths( void )
|
|||
{
|
||||
size_t i;
|
||||
wxString path = m_BinDir;
|
||||
wxPathList tmp;
|
||||
|
||||
m_searchPaths.Clear();
|
||||
|
||||
|
@ -497,7 +484,6 @@ void WinEDA_App::SetDefaultSearchPaths( void )
|
|||
#endif
|
||||
wxFileName fn( path, wxEmptyString );
|
||||
|
||||
|
||||
/* User environment variable path is the first search path. Chances are
|
||||
* if the user is savvy enough to set an environment variable they know
|
||||
* what they are doing. */
|
||||
|
@ -522,15 +508,44 @@ void WinEDA_App::SetDefaultSearchPaths( void )
|
|||
fn.AppendDir( wxT( "kicad" ) );
|
||||
m_searchPaths.Add( fn.GetPath() );
|
||||
|
||||
/* The normal OS program file install paths allow for binary to be
|
||||
* installed in a different path from the library files. This is
|
||||
* useful for development purposes so the library and documentation
|
||||
* files do not need to be installed separately. If someone can
|
||||
* figure out a way to implement this without #ifdef, please do. */
|
||||
#ifdef __WXMSW__
|
||||
tmp.AddEnvList( wxT( "PROGRAMFILES" ) );
|
||||
#else
|
||||
tmp.AddEnvList( wxT( "PATH" ) );
|
||||
#endif
|
||||
|
||||
for( i = 0; i < tmp.GetCount(); i++ )
|
||||
{
|
||||
fn = wxFileName( tmp[i], wxEmptyString );
|
||||
|
||||
if( fn.GetPath().AfterLast( fn.GetPathSeparator() ) == wxT( "bin" ) )
|
||||
fn.RemoveLastDir();
|
||||
|
||||
m_searchPaths.Add( fn.GetPath() );
|
||||
fn.AppendDir( wxT( "kicad" ) );
|
||||
m_searchPaths.Add( fn.GetPath() );
|
||||
fn.AppendDir( wxT( "share" ) );
|
||||
m_searchPaths.Add( fn.GetPath() );
|
||||
fn.RemoveLastDir();
|
||||
fn.RemoveLastDir();
|
||||
fn.AppendDir( wxT( "share" ) );
|
||||
m_searchPaths.Add( fn.GetPath() );
|
||||
fn.AppendDir( wxT( "kicad" ) );
|
||||
m_searchPaths.Add( fn.GetPath() );
|
||||
}
|
||||
|
||||
/* Remove all non-existent paths from the list. */
|
||||
for( i = 0; i < m_searchPaths.GetCount(); i++ )
|
||||
{
|
||||
wxLogDebug( wxT( "Checking if search path <" ) +
|
||||
m_searchPaths[i] + wxT( "> exists." ) );
|
||||
if( !wxFileName::IsDirReadable( m_searchPaths[i] ) )
|
||||
{
|
||||
wxLogDebug( wxT( "Removing non-existent path <" ) +
|
||||
m_searchPaths[i] + wxT( "> from search path list." ) );
|
||||
wxLogDebug( wxT( "Removing <" ) + m_searchPaths[i] +
|
||||
wxT( "> from search path list." ) );
|
||||
m_searchPaths.RemoveAt( i );
|
||||
i -= 1;
|
||||
}
|
||||
|
@ -546,7 +561,7 @@ void WinEDA_App::SetDefaultSearchPaths( void )
|
|||
fn.AppendDir( wxT( "library") );
|
||||
if( fn.IsDirReadable() )
|
||||
{
|
||||
wxLogDebug( wxT( "Adding <%s> to library search path list" ),
|
||||
wxLogDebug( wxT( "Adding <%s> to search path list" ),
|
||||
fn.GetPath().c_str() );
|
||||
m_libSearchPaths.Add( fn.GetPath() );
|
||||
}
|
||||
|
@ -555,7 +570,7 @@ void WinEDA_App::SetDefaultSearchPaths( void )
|
|||
fn.AppendDir( wxT( "doc") );
|
||||
if( fn.IsDirReadable() )
|
||||
{
|
||||
wxLogDebug( wxT( "Adding <%s> to library search path list" ),
|
||||
wxLogDebug( wxT( "Adding <%s> to search path list" ),
|
||||
fn.GetPath().c_str() );
|
||||
m_libSearchPaths.Add( fn.GetPath() );
|
||||
}
|
||||
|
@ -568,14 +583,14 @@ void WinEDA_App::SetDefaultSearchPaths( void )
|
|||
|
||||
if( fn.IsDirReadable() )
|
||||
{
|
||||
wxLogDebug( wxT( "Adding <%s> to library search path list" ),
|
||||
wxLogDebug( wxT( "Adding <%s> to search path list" ),
|
||||
fn.GetPath().c_str() );
|
||||
m_libSearchPaths.Add( fn.GetPath() );
|
||||
}
|
||||
fn.RemoveLastDir();
|
||||
|
||||
/* Add PCB library file path to search path list. */
|
||||
if ( (m_Id == APP_TYPE_PCBNEW) || (m_Id == APP_TYPE_CVPCB) )
|
||||
if ( ( m_Id == APP_TYPE_PCBNEW ) || ( m_Id == APP_TYPE_CVPCB ) )
|
||||
{
|
||||
fn.AppendDir( wxT( "modules" ) );
|
||||
|
||||
|
@ -591,7 +606,7 @@ void WinEDA_App::SetDefaultSearchPaths( void )
|
|||
|
||||
if( fn.IsDirReadable() )
|
||||
{
|
||||
wxLogDebug( wxT( "Adding <%s> to library search path list" ),
|
||||
wxLogDebug( wxT( "Adding <%s> to search path list" ),
|
||||
fn.GetPath().c_str() );
|
||||
m_libSearchPaths.Add( fn.GetPath() );
|
||||
}
|
||||
|
@ -625,44 +640,11 @@ void WinEDA_App::GetSettings()
|
|||
m_fileHistory.Load( *m_EDA_Config );
|
||||
|
||||
/* Set default font sizes */
|
||||
g_StdFontPointSize = m_EDA_Config->Read( wxT( "SdtFontSize" ),
|
||||
FONT_DEFAULT_SIZE );
|
||||
g_MsgFontPointSize = m_EDA_Config->Read( wxT( "MsgFontSize" ),
|
||||
FONT_DEFAULT_SIZE );
|
||||
g_DialogFontPointSize = m_EDA_Config->Read( wxT( "DialogFontSize" ),
|
||||
FONT_DEFAULT_SIZE );
|
||||
g_FixedFontPointSize = m_EDA_Config->Read( wxT( "FixedFontSize" ),
|
||||
FONT_DEFAULT_SIZE );
|
||||
|
||||
/* Std font type */
|
||||
Line = m_EDA_Config->Read( wxT( "SdtFontType" ), wxEmptyString );
|
||||
if( !Line.IsEmpty() )
|
||||
g_StdFont->SetFaceName( Line );
|
||||
|
||||
/* Sdt font style */
|
||||
ii = m_EDA_Config->Read( wxT( "SdtFontStyle" ), wxFONTFAMILY_ROMAN );
|
||||
g_StdFont->SetStyle( ii );
|
||||
|
||||
/* Sdt font weight */
|
||||
ii = m_EDA_Config->Read( wxT( "SdtFontWeight" ), wxNORMAL );
|
||||
g_StdFont->SetWeight( ii );
|
||||
g_StdFont->SetPointSize( g_StdFontPointSize );
|
||||
|
||||
/* Msg font type */
|
||||
Line = m_EDA_Config->Read( wxT( "MsgFontType" ), wxEmptyString );
|
||||
if( !Line.IsEmpty() )
|
||||
g_MsgFont->SetFaceName( Line );
|
||||
|
||||
/* Msg font style */
|
||||
ii = m_EDA_Config->Read( wxT( "MsgFontStyle" ), wxFONTFAMILY_ROMAN );
|
||||
g_MsgFont->SetStyle( ii );
|
||||
|
||||
/* Msg font weight */
|
||||
ii = m_EDA_Config->Read( wxT( "MsgFontWeight" ), wxNORMAL );
|
||||
g_MsgFont->SetWeight( ii );
|
||||
g_MsgFont->SetPointSize( g_MsgFontPointSize );
|
||||
|
||||
|
||||
Line = m_EDA_Config->Read( wxT( "DialogFontType" ), wxEmptyString );
|
||||
if( !Line.IsEmpty() )
|
||||
g_DialogFont->SetFaceName( Line );
|
||||
|
@ -696,21 +678,10 @@ void WinEDA_App::SaveSettings()
|
|||
wxASSERT( m_EDA_Config != NULL );
|
||||
|
||||
/* Sdt font settings */
|
||||
m_EDA_Config->Write( wxT( "SdtFontSize" ), g_StdFontPointSize );
|
||||
m_EDA_Config->Write( wxT( "SdtFontType" ), g_StdFont->GetFaceName() );
|
||||
|
||||
#if wxCHECK_VERSION( 2, 9, 0 )
|
||||
#warning TODO: under wxWidgets 3.0, see how to replace the next lines
|
||||
#else
|
||||
m_EDA_Config->Write( wxT( "SdtFontStyle" ), g_StdFont->GetStyle() );
|
||||
m_EDA_Config->Write( wxT( "SdtFontWeight" ), g_StdFont->GetWeight() );
|
||||
|
||||
/* Msg font settings */
|
||||
m_EDA_Config->Write( wxT( "MsgFontSize" ), g_MsgFontPointSize );
|
||||
m_EDA_Config->Write( wxT( "MsgFontType" ), g_MsgFont->GetFaceName() );
|
||||
m_EDA_Config->Write( wxT( "MsgFontStyle" ), g_MsgFont->GetStyle() );
|
||||
m_EDA_Config->Write( wxT( "MsgFontWeight" ), g_MsgFont->GetWeight() );
|
||||
|
||||
/* Dialog font settings */
|
||||
m_EDA_Config->Write( wxT( "DialogFontSize" ), g_DialogFontPointSize );
|
||||
m_EDA_Config->Write( wxT( "DialogFontType" ), g_DialogFont->GetFaceName() );
|
||||
|
@ -1035,36 +1006,35 @@ wxString WinEDA_App::GetLibraryFile( const wxString& filename )
|
|||
* path in lib path list ( but not the CWD )
|
||||
* @param aSubPathToSearch = Prefered sub path to search in path list (defualt = empty string)
|
||||
*/
|
||||
wxString s_LastVisitedLibPath; // Last lib directoty used when adding libraries
|
||||
wxString WinEDA_App::ReturnLastVisitedLibraryPath( const wxString & aSubPathToSearch )
|
||||
{
|
||||
if ( ! s_LastVisitedLibPath.IsEmpty() )
|
||||
return s_LastVisitedLibPath;
|
||||
if ( m_LastVisitedLibPath )
|
||||
return m_LastVisitedLibPath;
|
||||
|
||||
wxString path;
|
||||
|
||||
/* Initialize default path to the main default lib path
|
||||
* this is the second path in list (the first is the project path)
|
||||
*/
|
||||
unsigned pcount = wxGetApp().GetLibraryPathList().GetCount();
|
||||
unsigned pcount = m_libSearchPaths.GetCount();
|
||||
if ( pcount )
|
||||
{
|
||||
unsigned ipath = 0;
|
||||
if ( wxGetApp().GetLibraryPathList()[0] == wxGetCwd() )
|
||||
if ( m_libSearchPaths[0] == wxGetCwd() )
|
||||
ipath = 1;
|
||||
|
||||
// First choice fo path:
|
||||
// First choice of path:
|
||||
if ( ipath < pcount )
|
||||
path = wxGetApp().GetLibraryPathList()[ipath];
|
||||
path = m_libSearchPaths[ipath];
|
||||
|
||||
// Search a sub path matching aSubPathToSearch
|
||||
if ( ! aSubPathToSearch.IsEmpty() )
|
||||
{
|
||||
for ( ; ipath < pcount; ipath++ )
|
||||
{
|
||||
if ( wxGetApp().GetLibraryPathList()[ipath].Contains( aSubPathToSearch ) )
|
||||
if ( m_libSearchPaths[ipath].Contains( aSubPathToSearch ) )
|
||||
{
|
||||
path = wxGetApp().GetLibraryPathList()[ipath];
|
||||
path = m_libSearchPaths[ipath];
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -1078,7 +1048,7 @@ wxString WinEDA_App::ReturnLastVisitedLibraryPath( const wxString & aSubPathToSe
|
|||
|
||||
void WinEDA_App::SaveLastVisitedLibraryPath( const wxString & aPath)
|
||||
{
|
||||
s_LastVisitedLibPath = aPath;
|
||||
m_LastVisitedLibPath = aPath;
|
||||
}
|
||||
|
||||
/** ReturnFilenameWithRelativePathInLibPath
|
||||
|
@ -1098,14 +1068,14 @@ wxString WinEDA_App::ReturnFilenameWithRelativePathInLibPath(const wxString & aF
|
|||
wxFileName fn = aFullFilename;
|
||||
wxString filename = aFullFilename;
|
||||
int pathlen = -1; // path len, used to find the better subpath within defualts paths
|
||||
if( GetLibraryPathList().Index( fn.GetPath() ) != wxNOT_FOUND ) // Ok, trivial case
|
||||
if( m_libSearchPaths.Index( fn.GetPath() ) != wxNOT_FOUND ) // Ok, trivial case
|
||||
filename = fn.GetName();
|
||||
else // not in the default, : see if this file is in a subpath:
|
||||
{
|
||||
filename = fn.GetPathWithSep() + fn.GetFullName();
|
||||
for( unsigned kk = 0; kk < wxGetApp().GetLibraryPathList().GetCount(); kk++ )
|
||||
for( unsigned kk = 0; kk < m_libSearchPaths.GetCount(); kk++ )
|
||||
{
|
||||
if( fn.MakeRelativeTo(GetLibraryPathList()[kk] ) )
|
||||
if( fn.MakeRelativeTo(m_libSearchPaths[kk] ) )
|
||||
{
|
||||
if( pathlen < 0 // a subpath is found
|
||||
|| pathlen > (int) fn.GetPath().Len() ) // a better subpath if found
|
||||
|
@ -1122,7 +1092,6 @@ wxString WinEDA_App::ReturnFilenameWithRelativePathInLibPath(const wxString & aF
|
|||
}
|
||||
|
||||
|
||||
|
||||
/** FindLibraryPath
|
||||
* Kicad saves user defined library files that are not in the standard
|
||||
* library search path list with the full file path. Calling the library
|
||||
|
@ -1140,7 +1109,7 @@ wxString WinEDA_App::FindLibraryPath( const wxString& aFileName )
|
|||
}
|
||||
|
||||
/** Function RemoveLibraryPath
|
||||
* Removes the given ptah from the libary path list
|
||||
* Removes the given path from the library path list
|
||||
* @param path = the path to remove
|
||||
*/
|
||||
void WinEDA_App::RemoveLibraryPath( const wxString& path )
|
||||
|
|
|
@ -27,7 +27,8 @@ WinEDA_MsgPanel::WinEDA_MsgPanel( WinEDA_DrawFrame* parent, int id,
|
|||
wxPanel( parent, id, pos, size )
|
||||
{
|
||||
m_Parent = parent;
|
||||
SetFont( *g_MsgFont );
|
||||
SetFont( wxSystemSettings::GetFont( wxSYS_DEFAULT_GUI_FONT ) );
|
||||
SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
|
||||
m_last_x = 0;
|
||||
}
|
||||
|
||||
|
@ -45,12 +46,10 @@ void WinEDA_MsgPanel::OnPaint( wxPaintEvent& event )
|
|||
|
||||
erase( &dc );
|
||||
|
||||
dc.SetBackground( *wxBLACK_BRUSH );
|
||||
dc.SetBackground( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
|
||||
dc.SetBackgroundMode( wxSOLID );
|
||||
|
||||
dc.SetTextBackground( GetBackgroundColour() );
|
||||
|
||||
dc.SetFont( *g_MsgFont );
|
||||
dc.SetTextBackground( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
|
||||
dc.SetFont( wxSystemSettings::GetFont( wxSYS_DEFAULT_GUI_FONT ) );
|
||||
|
||||
for( unsigned i=0; i<m_Items.size(); ++i )
|
||||
showItem( dc, m_Items[i] );
|
||||
|
@ -85,7 +84,7 @@ void WinEDA_MsgPanel::Affiche_1_Parametre( int pos_X, const wxString& texte_H,
|
|||
{
|
||||
wxClientDC dc( this );
|
||||
|
||||
dc.SetFont( *g_MsgFont );
|
||||
dc.SetFont( wxSystemSettings::GetFont( wxSYS_DEFAULT_GUI_FONT ) );
|
||||
dc.GetTextExtent( wxT( "W" ), &fontSizeInPixels.x, &fontSizeInPixels.y );
|
||||
|
||||
} // destroy wxClientDC ASAP
|
||||
|
@ -178,7 +177,7 @@ void WinEDA_MsgPanel::erase( wxDC* DC )
|
|||
wxBrush brush;
|
||||
|
||||
wxSize size = GetClientSize();
|
||||
wxColor color = GetBackgroundColour();
|
||||
wxColor color = wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE );
|
||||
|
||||
pen.SetColour( color );
|
||||
|
||||
|
|
|
@ -46,7 +46,7 @@ BEGIN_EVENT_TABLE( WinEDA_CvpcbFrame, wxFrame )
|
|||
EVT_MENU( ID_CONFIG_SAVE,
|
||||
WinEDA_CvpcbFrame::Update_Config )
|
||||
|
||||
EVT_MENU_RANGE( ID_PREFERENCES_FONT_INFOSCREEN,
|
||||
EVT_MENU_RANGE( ID_PREFERENCES_FONT_DIALOG,
|
||||
ID_PREFERENCES_FONT_END,
|
||||
WinEDA_CvpcbFrame::ProcessFontPreferences )
|
||||
EVT_MENU_RANGE( ID_LANGUAGE_CHOICE,
|
||||
|
@ -474,16 +474,6 @@ void WinEDA_CvpcbFrame::AddFontSelectionMenu( wxMenu* main_menu )
|
|||
_( "Dialog boxes" ),
|
||||
fonts_xpm );
|
||||
|
||||
ADD_MENUITEM( fontmenu,
|
||||
ID_PREFERENCES_FONT_INFOSCREEN,
|
||||
_( "Lists" ),
|
||||
fonts_xpm );
|
||||
|
||||
ADD_MENUITEM( fontmenu,
|
||||
ID_PREFERENCES_FONT_STATUS,
|
||||
_( "Status box" ),
|
||||
fonts_xpm );
|
||||
|
||||
ADD_MENUITEM_WITH_HELP_AND_SUBMENU( main_menu,
|
||||
fontmenu,
|
||||
ID_PREFERENCES_FONT,
|
||||
|
@ -536,26 +526,14 @@ void WinEDA_CvpcbFrame::ProcessFontPreferences( wxCommandEvent& event )
|
|||
{
|
||||
case ID_PREFERENCES_FONT:
|
||||
case ID_PREFERENCES_FONT_DIALOG:
|
||||
case ID_PREFERENCES_FONT_STATUS:
|
||||
WinEDA_BasicFrame::ProcessFontPreferences( id );
|
||||
break;
|
||||
|
||||
|
||||
case ID_PREFERENCES_FONT_INFOSCREEN:
|
||||
font = wxGetFontFromUser( this, *g_FixedFont );
|
||||
if( font.Ok() )
|
||||
{
|
||||
int pointsize = font.GetPointSize();
|
||||
*g_FixedFont = font;
|
||||
g_FixedFontPointSize = pointsize;
|
||||
m_FootprintList->SetFont( *g_FixedFont );
|
||||
m_ListCmp->SetFont( *g_FixedFont );
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
DisplayError( this,
|
||||
wxT( "WinEDA_DrawFrame::ProcessFontPreferences Internal Error" ) );
|
||||
wxT( "WinEDA_DrawFrame::ProcessFontPreferences " \
|
||||
"Internal Error" ) );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -51,7 +51,7 @@ BEGIN_EVENT_TABLE( WinEDA_SchematicFrame, WinEDA_DrawFrame )
|
|||
ID_SCHEMATIC_MAIN_TOOLBAR_END,
|
||||
WinEDA_SchematicFrame::Process_Special_Functions )
|
||||
|
||||
EVT_MENU_RANGE( ID_PREFERENCES_FONT_INFOSCREEN, ID_PREFERENCES_FONT_END,
|
||||
EVT_MENU_RANGE( ID_PREFERENCES_FONT_DIALOG, ID_PREFERENCES_FONT_END,
|
||||
WinEDA_DrawFrame::ProcessFontPreferences )
|
||||
|
||||
EVT_MENU( ID_SAVE_PROJECT, WinEDA_SchematicFrame::Save_File )
|
||||
|
|
|
@ -37,7 +37,7 @@ BEGIN_EVENT_TABLE( WinEDA_GerberFrame, WinEDA_BasePcbFrame )
|
|||
EVT_TOOL( ID_NEW_BOARD, WinEDA_GerberFrame::Files_io )
|
||||
EVT_TOOL( ID_SAVE_BOARD, WinEDA_GerberFrame::Files_io )
|
||||
|
||||
EVT_MENU_RANGE( ID_PREFERENCES_FONT_INFOSCREEN, ID_PREFERENCES_FONT_END,
|
||||
EVT_MENU_RANGE( ID_PREFERENCES_FONT_DIALOG, ID_PREFERENCES_FONT_END,
|
||||
WinEDA_DrawFrame::ProcessFontPreferences )
|
||||
|
||||
// Menu Files:
|
||||
|
|
|
@ -74,6 +74,7 @@ protected:
|
|||
wxString m_Title;
|
||||
wxPathList m_libSearchPaths;
|
||||
wxFileName m_projectFileName;
|
||||
wxString m_LastVisitedLibPath;
|
||||
|
||||
public:
|
||||
WinEDA_App();
|
||||
|
|
|
@ -155,16 +155,11 @@ extern int g_KeyPressed;
|
|||
|
||||
// Font used by kicad.
|
||||
// these font have a size which do not depend on default size system font
|
||||
extern wxFont* g_StdFont; /* Standard font used for status display ,in message panel */
|
||||
extern wxFont* g_DialogFont; /* Normal font used in dialog box */
|
||||
extern wxFont* g_ItalicFont; /* Italic font used in dialog box */
|
||||
extern wxFont* g_MsgFont; /* Italic font used in msg panel (lower window) */
|
||||
extern wxFont* g_FixedFont; /* Affichage de Texte en fenetres de dialogue,
|
||||
* fonte a pas fixe)*/
|
||||
extern int g_StdFontPointSize; /* taille de la fonte */
|
||||
extern int g_DialogFontPointSize; /* taille de la fonte */
|
||||
extern int g_FixedFontPointSize; /* taille de la fonte */
|
||||
extern int g_MsgFontPointSize; /* taille de la fonte */
|
||||
extern int g_FontMinPointSize; /* taille minimum des fontes */
|
||||
|
||||
extern bool g_ShowPageLimits; // TRUE to display the page limits
|
||||
|
|
|
@ -93,9 +93,7 @@ enum main_id {
|
|||
ID_OPTIONS_SETUP,
|
||||
|
||||
ID_PREFERENCES_FONT,
|
||||
ID_PREFERENCES_FONT_INFOSCREEN,
|
||||
ID_PREFERENCES_FONT_DIALOG,
|
||||
ID_PREFERENCES_FONT_STATUS,
|
||||
ID_PREFERENCES_FONT_UNUSED3,
|
||||
ID_PREFERENCES_FONT_UNUSED4,
|
||||
ID_PREFERENCES_FONT_UNUSED5,
|
||||
|
|
|
@ -118,13 +118,11 @@ static inline void ADD_MENUITEM_WITH_SUBMENU( wxMenu* menu, wxMenu* submenu,
|
|||
int id, const wxString& text,
|
||||
const wxBitmap& icon )
|
||||
{
|
||||
extern wxFont* g_ItalicFont;
|
||||
wxMenuItem* l_item;
|
||||
|
||||
l_item = new wxMenuItem( menu, id, text );
|
||||
l_item->SetSubMenu( submenu );
|
||||
l_item->SetBitmap( icon );
|
||||
l_item->SetFont( *g_ItalicFont );
|
||||
menu->Append( l_item );
|
||||
};
|
||||
|
||||
|
@ -135,13 +133,11 @@ static inline void ADD_MENUITEM_WITH_HELP_AND_SUBMENU( wxMenu* menu,
|
|||
const wxString& help,
|
||||
const wxBitmap& icon )
|
||||
{
|
||||
extern wxFont* g_ItalicFont;
|
||||
wxMenuItem* l_item;
|
||||
|
||||
l_item = new wxMenuItem( menu, id, text, help );
|
||||
l_item->SetSubMenu( submenu );
|
||||
l_item->SetBitmap( icon );
|
||||
l_item->SetFont( *g_ItalicFont );
|
||||
menu->Append( l_item );
|
||||
};
|
||||
|
||||
|
|
|
@ -49,7 +49,6 @@ BEGIN_EVENT_TABLE( WinEDA_MainFrame, WinEDA_BasicFrame )
|
|||
EVT_MENU( ID_SAVE_AND_ZIP_FILES, WinEDA_MainFrame::OnArchiveFiles )
|
||||
EVT_MENU( ID_READ_ZIP_ARCHIVE, WinEDA_MainFrame::OnUnarchiveFiles )
|
||||
EVT_MENU( ID_PROJECT_TREE_REFRESH, WinEDA_MainFrame::OnRefresh )
|
||||
EVT_MENU( ID_PREFERENCES_FONT_INFOSCREEN, WinEDA_MainFrame::OnSelectFont )
|
||||
EVT_MENU( ID_GENERAL_HELP, WinEDA_MainFrame::GetKicadHelp )
|
||||
EVT_MENU( ID_KICAD_ABOUT, WinEDA_MainFrame::GetKicadAbout )
|
||||
|
||||
|
@ -163,12 +162,6 @@ void WinEDA_MainFrame::ReCreateMenuBar()
|
|||
wxMenu* PreferencesMenu = new wxMenu;
|
||||
/**********************************************************************/
|
||||
|
||||
// Fonts
|
||||
item = new wxMenuItem( PreferencesMenu, ID_PREFERENCES_FONT_INFOSCREEN,
|
||||
_( "Fonts" ), _( "Font preferences" ) );
|
||||
item->SetBitmap( fonts_xpm );
|
||||
PreferencesMenu->Append( item );
|
||||
|
||||
// Prefered text editor
|
||||
item = new wxMenuItem( PreferencesMenu, ID_SELECT_PREFERED_EDITOR,
|
||||
_( "&Text Editor" ),
|
||||
|
|
|
@ -33,7 +33,6 @@ WinEDA_CommandFrame::WinEDA_CommandFrame( wxWindow* parent, int id,
|
|||
SetSashVisible( wxSASH_BOTTOM, TRUE );
|
||||
SetSashVisible( wxSASH_LEFT, TRUE );
|
||||
SetExtraBorderSize( 2 );
|
||||
SetFont( *g_StdFont );
|
||||
CreateCommandToolbar();
|
||||
}
|
||||
|
||||
|
|
|
@ -91,7 +91,6 @@ public:
|
|||
void OnSelectDefaultPdfBrowser( wxCommandEvent& event );
|
||||
void OnSelectPreferredPdfBrowser( wxCommandEvent& event );
|
||||
void OnSelectPreferredEditor( wxCommandEvent& event );
|
||||
void OnSelectFont( wxCommandEvent& event );
|
||||
|
||||
void OnUpdateDefaultPdfBrowser( wxUpdateUIEvent& event );
|
||||
void OnUpdatePreferredPdfBrowser( wxUpdateUIEvent& event );
|
||||
|
|
|
@ -83,7 +83,6 @@ WinEDA_MainFrame::WinEDA_MainFrame( wxWindow* parent,
|
|||
m_DialogWin = new wxTextCtrl( m_BottomWin, ID_MAIN_DIALOG, wxEmptyString,
|
||||
wxDefaultPosition, wxDefaultSize,
|
||||
wxTE_MULTILINE | wxNO_BORDER | wxTE_READONLY );
|
||||
m_DialogWin->SetFont( *g_StdFont );
|
||||
|
||||
// m_CommandWin is the box with buttons which launch eechema, pcbnew ...
|
||||
m_CommandWin = new WinEDA_CommandFrame( this, ID_MAIN_COMMAND,
|
||||
|
@ -116,7 +115,6 @@ void WinEDA_MainFrame::PrintMsg( const wxString& text )
|
|||
* Put text in the dialog frame
|
||||
*/
|
||||
{
|
||||
m_DialogWin->SetFont( *g_StdFont );
|
||||
m_DialogWin->AppendText( text );
|
||||
#ifdef DEBUG
|
||||
printf("%s\n", (const char*)text.mb_str() );
|
||||
|
|
|
@ -98,24 +98,6 @@ void WinEDA_MainFrame::OnSelectPreferredEditor( wxCommandEvent& event )
|
|||
}
|
||||
|
||||
|
||||
void WinEDA_MainFrame::OnSelectFont( wxCommandEvent& event )
|
||||
{
|
||||
wxFont font = wxGetFontFromUser( this, *g_StdFont );
|
||||
|
||||
if( font.Ok() )
|
||||
{
|
||||
int pointsize = font.GetPointSize();
|
||||
*g_StdFont = font;
|
||||
g_StdFontPointSize = pointsize;
|
||||
g_DialogFontPointSize = pointsize;
|
||||
g_FixedFontPointSize = pointsize;
|
||||
m_LeftWin->ReCreateTreePrj();
|
||||
m_DialogWin->SetFont( *g_StdFont );
|
||||
m_DialogWin->Refresh();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void WinEDA_MainFrame::SetLanguage( wxCommandEvent& event )
|
||||
{
|
||||
wxGetApp().SetLanguageIdentifier( event.GetId() );
|
||||
|
|
|
@ -816,7 +816,6 @@ bool WinEDA_PrjFrame::AddFile( const wxString& name, wxTreeItemId& root )
|
|||
cellule = m_TreeProject->AppendItem( root, file );
|
||||
TreePrjItemData* data = new TreePrjItemData( type, name, m_TreeProject );
|
||||
|
||||
m_TreeProject->SetItemFont( cellule, *g_StdFont );
|
||||
m_TreeProject->SetItemData( cellule, data );
|
||||
data->SetState( 0 );
|
||||
|
||||
|
@ -880,8 +879,6 @@ void WinEDA_PrjFrame::ReCreateTreePrj()
|
|||
else
|
||||
m_TreeProject->DeleteAllItems();
|
||||
|
||||
m_TreeProject->SetFont( *g_StdFont );
|
||||
|
||||
if( !m_Parent->m_ProjectFileName.IsOk() )
|
||||
{
|
||||
fn.Clear();
|
||||
|
@ -906,8 +903,6 @@ void WinEDA_PrjFrame::ReCreateTreePrj()
|
|||
wxEmptyString,
|
||||
m_TreeProject ) );
|
||||
|
||||
m_TreeProject->SetItemFont( rootcellule, *g_StdFont );
|
||||
|
||||
fn.SetExt( SchematicFileExtension );
|
||||
|
||||
// Add at least a .sch / .brd if not existing:
|
||||
|
|
|
@ -178,7 +178,7 @@ void WinEDA_ModuleEditFrame::Export_Module( MODULE* ptmod, bool createlib )
|
|||
wxFileDialog dlg( this, msg, fn.GetPath(), fn.GetFullName(), wildcard,
|
||||
wxFD_SAVE | wxFD_OVERWRITE_PROMPT );
|
||||
|
||||
if( dlg.ShowModal() == wxCANCEL )
|
||||
if( dlg.ShowModal() == wxID_CANCEL )
|
||||
return;
|
||||
|
||||
fn = dlg.GetPath();
|
||||
|
@ -417,7 +417,7 @@ void WinEDA_BasePcbFrame::Archive_Modules( const wxString& LibName,
|
|||
wxEmptyString, ModuleFileWildcard,
|
||||
wxFD_SAVE | wxFD_OVERWRITE_PROMPT );
|
||||
|
||||
if( dlg.ShowModal() == wxCANCEL )
|
||||
if( dlg.ShowModal() == wxID_CANCEL )
|
||||
return;
|
||||
|
||||
fileName = dlg.GetPath();
|
||||
|
|
|
@ -46,7 +46,7 @@ BEGIN_EVENT_TABLE( WinEDA_PcbFrame, WinEDA_BasePcbFrame )
|
|||
EVT_TOOL( ID_SAVE_BOARD, WinEDA_PcbFrame::Files_io )
|
||||
EVT_TOOL( ID_OPEN_MODULE_EDITOR, WinEDA_PcbFrame::Process_Special_Functions )
|
||||
|
||||
EVT_MENU_RANGE( ID_PREFERENCES_FONT_INFOSCREEN, ID_PREFERENCES_FONT_END,
|
||||
EVT_MENU_RANGE( ID_PREFERENCES_FONT_DIALOG, ID_PREFERENCES_FONT_END,
|
||||
WinEDA_DrawFrame::ProcessFontPreferences )
|
||||
|
||||
// Menu Files:
|
||||
|
|
Loading…
Reference in New Issue