Commit d68940c4 authored by jean-pierre charras's avatar jean-pierre charras

Minor fixes.

parent 87d2caa4
...@@ -302,6 +302,8 @@ static void InitKiCadAboutNew( AboutAppInfo& info ) ...@@ -302,6 +302,8 @@ static void InitKiCadAboutNew( AboutAppInfo& info )
new Contributor( wxT( "Iñigo Zuluagaz" ), wxT( "inigo_zuluaga@yahoo.es" ), wxT( "Icons by" ), KiBitmapNew( edit_module_xpm ) ) ); new Contributor( wxT( "Iñigo Zuluagaz" ), wxT( "inigo_zuluaga@yahoo.es" ), wxT( "Icons by" ), KiBitmapNew( edit_module_xpm ) ) );
info.AddArtist( info.AddArtist(
new Contributor( wxT( "Fabrizio Tappero" ), wxT( "fabrizio.tappero@gmail.com" ), wxT( "New icons by" ), KiBitmapNew( edit_module_xpm ) ) ); new Contributor( wxT( "Fabrizio Tappero" ), wxT( "fabrizio.tappero@gmail.com" ), wxT( "New icons by" ), KiBitmapNew( edit_module_xpm ) ) );
info.AddArtist(
new Contributor( wxT( "Konstantin Baranovskiy" ), wxT( "baranovskiykonstantin@gmail.com" ), wxT( "New icons by" ), KiBitmapNew( edit_module_xpm ) ) );
info.AddArtist( info.AddArtist(
new Contributor( wxT( "Renie Marquet" ), wxT( "reniemarquet@uol.com.br" ), wxT( "3D modules by" ), KiBitmapNew( three_d_xpm ) ) ); new Contributor( wxT( "Renie Marquet" ), wxT( "reniemarquet@uol.com.br" ), wxT( "3D modules by" ), KiBitmapNew( three_d_xpm ) ) );
info.AddArtist( info.AddArtist(
......
...@@ -19,6 +19,9 @@ void EDA_APP::ReadPdfBrowserInfos() ...@@ -19,6 +19,9 @@ void EDA_APP::ReadPdfBrowserInfos()
wxASSERT( m_commonSettings != NULL ); wxASSERT( m_commonSettings != NULL );
m_PdfBrowser = m_commonSettings->Read( wxT( "PdfBrowserName" ), wxEmptyString ); m_PdfBrowser = m_commonSettings->Read( wxT( "PdfBrowserName" ), wxEmptyString );
int tmp;
m_commonSettings->Read( wxT( "UseSystemBrowser" ), &tmp, 0 );
m_useSystemPdfBrowser = tmp != 0;
} }
...@@ -27,6 +30,7 @@ void EDA_APP::WritePdfBrowserInfos() ...@@ -27,6 +30,7 @@ void EDA_APP::WritePdfBrowserInfos()
wxASSERT( m_commonSettings != NULL ); wxASSERT( m_commonSettings != NULL );
m_commonSettings->Write( wxT( "PdfBrowserName" ), m_PdfBrowser ); m_commonSettings->Write( wxT( "PdfBrowserName" ), m_PdfBrowser );
m_commonSettings->Write( wxT( "UseSystemBrowser" ), m_useSystemPdfBrowser );
} }
......
...@@ -273,6 +273,7 @@ EDA_APP::EDA_APP() ...@@ -273,6 +273,7 @@ EDA_APP::EDA_APP()
m_Locale = NULL; m_Locale = NULL;
m_projectSettings = NULL; m_projectSettings = NULL;
m_commonSettings = NULL; m_commonSettings = NULL;
ForceSystemPdfBrowser( false );
} }
......
...@@ -97,6 +97,9 @@ protected: ...@@ -97,6 +97,9 @@ protected:
/// The file name of the the program selected for browsing pdf files. /// The file name of the the program selected for browsing pdf files.
wxString m_PdfBrowser; wxString m_PdfBrowser;
/// true to use the selected PDF browser, if exists, or false to use the default
bool m_useSystemPdfBrowser;
wxPathList m_searchPaths; wxPathList m_searchPaths;
wxFileHistory m_fileHistory; wxFileHistory m_fileHistory;
wxString m_HelpFileName; wxString m_HelpFileName;
...@@ -150,11 +153,29 @@ public: ...@@ -150,11 +153,29 @@ public:
wxLocale* GetLocale() { return m_Locale; } wxLocale* GetLocale() { return m_Locale; }
/**
* @return the full file name of the prefered PDF browser
* ( the file name is empty if no prefered there is no PDF browser selected
*/
wxString GetPdfBrowserFileName() const { return m_PdfBrowser; } wxString GetPdfBrowserFileName() const { return m_PdfBrowser; }
/**
* Set the name of a prefered PDF browser, which could be an alternate browser
* to the system PDF browser.
*/
void SetPdfBrowserFileName( const wxString& aFileName ) { m_PdfBrowser = aFileName; } void SetPdfBrowserFileName( const wxString& aFileName ) { m_PdfBrowser = aFileName; }
bool UseSystemPdfBrowser() const { return m_PdfBrowser.IsEmpty(); } /**
* @return true if the PDF browser is the default (system) PDF browser
* and false if the PDF browser is the prefered (selected) browser
* returns false if there is no selected browser
*/
bool UseSystemPdfBrowser() const { return m_useSystemPdfBrowser || m_PdfBrowser.IsEmpty(); }
/**
* force the use of system PDF browser, even if a preferend PDF browser is set
*/
void ForceSystemPdfBrowser( bool aFlg ) { m_useSystemPdfBrowser = aFlg; }
wxFileHistory& GetFileHistory() { return m_fileHistory; } wxFileHistory& GetFileHistory() { return m_fileHistory; }
......
...@@ -97,7 +97,6 @@ void KICAD_MANAGER_FRAME::ReCreateMenuBar() ...@@ -97,7 +97,6 @@ void KICAD_MANAGER_FRAME::ReCreateMenuBar()
// static to remember this menu // static to remember this menu
// Create and try to get the current menubar // Create and try to get the current menubar
wxMenuItem* item;
wxMenuBar* menuBar = GetMenuBar(); wxMenuBar* menuBar = GetMenuBar();
if( !menuBar ) if( !menuBar )
...@@ -219,32 +218,24 @@ void KICAD_MANAGER_FRAME::ReCreateMenuBar() ...@@ -219,32 +218,24 @@ void KICAD_MANAGER_FRAME::ReCreateMenuBar()
wxMenu* SubMenuPdfBrowserChoice = new wxMenu; wxMenu* SubMenuPdfBrowserChoice = new wxMenu;
// Default // Default
item = new wxMenuItem( SubMenuPdfBrowserChoice, AddMenuItem( SubMenuPdfBrowserChoice, ID_SELECT_DEFAULT_PDF_BROWSER,
ID_SELECT_DEFAULT_PDF_BROWSER,
_( "&Default" ), _( "&Default" ),
_( "Use system default PDF viewer used to browse datasheets" ), _( "Use system default PDF viewer used to browse datasheets" ),
KiBitmap( datasheet_xpm ),
wxITEM_CHECK ); wxITEM_CHECK );
SETBITMAPS( datasheet_xpm );
SubMenuPdfBrowserChoice->Append( item );
SubMenuPdfBrowserChoice->Check( ID_SELECT_DEFAULT_PDF_BROWSER, SubMenuPdfBrowserChoice->Check( ID_SELECT_DEFAULT_PDF_BROWSER,
wxGetApp().UseSystemPdfBrowser() ); wxGetApp().UseSystemPdfBrowser() );
// Favourite // Favourite
item = new wxMenuItem( SubMenuPdfBrowserChoice, AddMenuItem( SubMenuPdfBrowserChoice, ID_SELECT_PREFERED_PDF_BROWSER,
ID_SELECT_PREFERED_PDF_BROWSER,
_( "&Favourite" ), _( "&Favourite" ),
_( "Use your favourite PDF viewer used to browse datasheets" ), _( "Use your favourite PDF viewer used to browse datasheets" ),
KiBitmap( preference_xpm ),
wxITEM_CHECK ); wxITEM_CHECK );
SETBITMAPS( preference_xpm );
SubMenuPdfBrowserChoice->Append( item );
SubMenuPdfBrowserChoice->AppendSeparator();
SubMenuPdfBrowserChoice->Check( ID_SELECT_PREFERED_PDF_BROWSER, SubMenuPdfBrowserChoice->Check( ID_SELECT_PREFERED_PDF_BROWSER,
!wxGetApp().UseSystemPdfBrowser() ); !wxGetApp().UseSystemPdfBrowser() );
SubMenuPdfBrowserChoice->AppendSeparator();
// Append PDF Viewer submenu to preferences // Append PDF Viewer submenu to preferences
AddMenuItem( SubMenuPdfBrowserChoice, AddMenuItem( SubMenuPdfBrowserChoice,
ID_SELECT_PREFERED_PDF_BROWSER_NAME, ID_SELECT_PREFERED_PDF_BROWSER_NAME,
...@@ -253,8 +244,7 @@ void KICAD_MANAGER_FRAME::ReCreateMenuBar() ...@@ -253,8 +244,7 @@ void KICAD_MANAGER_FRAME::ReCreateMenuBar()
KiBitmap( datasheet_xpm ) ); KiBitmap( datasheet_xpm ) );
// PDF viewer submenu // PDF viewer submenu
AddMenuItem( preferencesMenu, AddMenuItem( preferencesMenu, SubMenuPdfBrowserChoice, -1,
SubMenuPdfBrowserChoice, -1,
_( "&PDF Viewer" ), _( "&PDF Viewer" ),
_( "PDF viewer preferences" ), _( "PDF viewer preferences" ),
KiBitmap( datasheet_xpm ) ); KiBitmap( datasheet_xpm ) );
...@@ -270,14 +260,12 @@ void KICAD_MANAGER_FRAME::ReCreateMenuBar() ...@@ -270,14 +260,12 @@ void KICAD_MANAGER_FRAME::ReCreateMenuBar()
AddHelpVersionInfoMenuEntry( helpMenu ); AddHelpVersionInfoMenuEntry( helpMenu );
// Contents // Contents
AddMenuItem( helpMenu, AddMenuItem( helpMenu, wxID_HELP,
wxID_HELP,
_( "&Contents" ), _( "&Contents" ),
_( "Open the KiCad handbook" ), _( "Open the KiCad handbook" ),
KiBitmap( online_help_xpm ) ); KiBitmap( online_help_xpm ) );
AddMenuItem( helpMenu, AddMenuItem( helpMenu, wxID_INDEX,
wxID_INDEX,
_( "&Getting Started in KiCad" ), _( "&Getting Started in KiCad" ),
_( "Open the \"Getting Started in KiCad\" guide for beginners" ), _( "Open the \"Getting Started in KiCad\" guide for beginners" ),
KiBitmap( help_xpm ) ); KiBitmap( help_xpm ) );
...@@ -286,8 +274,7 @@ void KICAD_MANAGER_FRAME::ReCreateMenuBar() ...@@ -286,8 +274,7 @@ void KICAD_MANAGER_FRAME::ReCreateMenuBar()
helpMenu->AppendSeparator(); helpMenu->AppendSeparator();
// About // About
AddMenuItem( helpMenu, AddMenuItem( helpMenu, wxID_ABOUT,
wxID_ABOUT,
_( "&About KiCad" ), _( "&About KiCad" ),
_( "About KiCad project manager" ), _( "About KiCad project manager" ),
KiBitmap( info_xpm ) ); KiBitmap( info_xpm ) );
......
...@@ -49,6 +49,7 @@ void KICAD_MANAGER_FRAME::OnUpdateDefaultPdfBrowser( wxUpdateUIEvent& event ) ...@@ -49,6 +49,7 @@ void KICAD_MANAGER_FRAME::OnUpdateDefaultPdfBrowser( wxUpdateUIEvent& event )
void KICAD_MANAGER_FRAME::OnSelectDefaultPdfBrowser( wxCommandEvent& event ) void KICAD_MANAGER_FRAME::OnSelectDefaultPdfBrowser( wxCommandEvent& event )
{ {
wxGetApp().ForceSystemPdfBrowser( true );
wxGetApp().WritePdfBrowserInfos(); wxGetApp().WritePdfBrowserInfos();
} }
...@@ -61,26 +62,34 @@ void KICAD_MANAGER_FRAME::OnUpdatePreferredPdfBrowser( wxUpdateUIEvent& event ) ...@@ -61,26 +62,34 @@ void KICAD_MANAGER_FRAME::OnUpdatePreferredPdfBrowser( wxUpdateUIEvent& event )
void KICAD_MANAGER_FRAME::OnSelectPreferredPdfBrowser( wxCommandEvent& event ) void KICAD_MANAGER_FRAME::OnSelectPreferredPdfBrowser( wxCommandEvent& event )
{ {
bool select = event.GetId() == ID_SELECT_PREFERED_PDF_BROWSER_NAME; wxGetApp().ForceSystemPdfBrowser( false );
if( !wxGetApp().GetPdfBrowserFileName() && !select ) bool selectName = event.GetId() == ID_SELECT_PREFERED_PDF_BROWSER_NAME;
if( wxGetApp().GetPdfBrowserFileName().IsEmpty() && !selectName )
{ {
DisplayError( this, DisplayError( this,
_( "You must choose a PDF viewer before using this option." ) ); _( "You must choose a PDF viewer before using this option." ) );
} }
wxString wildcard( wxT( "*" ) ); if( !wxGetApp().GetPdfBrowserFileName().IsEmpty() && !selectName )
{
wxGetApp().WritePdfBrowserInfos();
return;
}
wxString mask( wxT( "*" ) );
#ifdef __WINDOWS__ #ifdef __WINDOWS__
wildcard += wxT( ".exe" ); mask += wxT( ".exe" );
#endif #endif
wildcard = _( "Executable files (" ) + wildcard + wxT( ")|" ) + wildcard; wxString wildcard = _( "Executable files (" ) + mask + wxT( ")|" ) + mask;
wxGetApp().ReadPdfBrowserInfos(); wxGetApp().ReadPdfBrowserInfos();
wxFileName fn = wxGetApp().GetPdfBrowserFileName(); wxFileName fn = wxGetApp().GetPdfBrowserFileName();
wxFileDialog dlg( this, _( "Select Preferred Pdf Browser" ), fn.GetPath(), wxFileDialog dlg( this, _( "Select Preferred Pdf Browser" ), fn.GetPath(),
fn.GetFullName(), wildcard, fn.GetFullPath(), wildcard,
wxFD_OPEN | wxFD_FILE_MUST_EXIST ); wxFD_OPEN | wxFD_FILE_MUST_EXIST );
if( dlg.ShowModal() == wxID_CANCEL ) if( dlg.ShowModal() == wxID_CANCEL )
......
...@@ -28,6 +28,7 @@ ...@@ -28,6 +28,7 @@
* for more info * for more info
*/ */
#include <cmath>
#include <wx/wx.h> #include <wx/wx.h>
#include <wx/config.h> #include <wx/config.h>
...@@ -67,10 +68,10 @@ void PCB_CALCULATOR_FRAME::TW_WriteConfig() ...@@ -67,10 +68,10 @@ void PCB_CALCULATOR_FRAME::TW_WriteConfig()
void PCB_CALCULATOR_FRAME::OnTWCalculateButt( wxCommandEvent& event ) void PCB_CALCULATOR_FRAME::OnTWCalculateButt( wxCommandEvent& event )
{ {
// Prepare parameters: // Prepare parameters:
double current = ReturnDoubleFromString( m_TrackCurrentValue->GetValue() ); double current = std::abs( ReturnDoubleFromString( m_TrackCurrentValue->GetValue() ) );
double thickness = ReturnDoubleFromString( m_TrackThicknessValue->GetValue() ); double thickness = std::abs( ReturnDoubleFromString( m_TrackThicknessValue->GetValue() ) );
double deltaT_C = ReturnDoubleFromString( m_TrackDeltaTValue->GetValue() ); double deltaT_C = std::abs( ReturnDoubleFromString( m_TrackDeltaTValue->GetValue() ) );
double track_len = ReturnDoubleFromString( m_TrackLengthValue->GetValue() ); double track_len = std::abs( ReturnDoubleFromString( m_TrackLengthValue->GetValue() ) );
double extTrackWidth; double extTrackWidth;
double intTrackWidth; double intTrackWidth;
...@@ -91,13 +92,16 @@ void PCB_CALCULATOR_FRAME::OnTWCalculateButt( wxCommandEvent& event ) ...@@ -91,13 +92,16 @@ void PCB_CALCULATOR_FRAME::OnTWCalculateButt( wxCommandEvent& event )
double scale = m_TW_ExtTrackWidth_choiceUnit->GetUnitScale(); double scale = m_TW_ExtTrackWidth_choiceUnit->GetUnitScale();
double ext_area = thickness * extTrackWidth; double ext_area = thickness * extTrackWidth;
msg.Printf( wxT( "%g" ), ext_area / (scale * scale) ); msg.Printf( wxT( "%g" ), ext_area / (scale * scale) );
m_ExtTrackAreaValue->SetValue( msg ); m_ExtTrackAreaValue->SetValue( msg );
wxString strunit = m_TW_ExtTrackWidth_choiceUnit->GetUnitName(); wxString strunit = m_TW_ExtTrackWidth_choiceUnit->GetUnitName();
msg = strunit + wxT( " x " ) + strunit; msg = strunit + wxT( " x " ) + strunit;
m_ExtTrackAreaUnitLabel->SetLabel( msg ); m_ExtTrackAreaUnitLabel->SetLabel( msg );
scale = m_TW_IntTrackWidth_choiceUnit->GetUnitScale(); scale = m_TW_IntTrackWidth_choiceUnit->GetUnitScale();
double int_area = thickness * intTrackWidth; double int_area = thickness * intTrackWidth;
msg.Printf( wxT( "%g" ), int_area / (scale * scale) ); msg.Printf( wxT( "%g" ), int_area / (scale * scale) );
m_IntTrackAreaValue->SetValue( msg ); m_IntTrackAreaValue->SetValue( msg );
strunit = m_TW_IntTrackWidth_choiceUnit->GetUnitName(); strunit = m_TW_IntTrackWidth_choiceUnit->GetUnitName();
msg = strunit + wxT( " x " ) + strunit; msg = strunit + wxT( " x " ) + strunit;
...@@ -108,6 +112,7 @@ void PCB_CALCULATOR_FRAME::OnTWCalculateButt( wxCommandEvent& event ) ...@@ -108,6 +112,7 @@ void PCB_CALCULATOR_FRAME::OnTWCalculateButt( wxCommandEvent& event )
double ext_res = rho / ext_area * track_len; double ext_res = rho / ext_area * track_len;
msg.Printf( wxT( "%g" ), ext_res ); msg.Printf( wxT( "%g" ), ext_res );
m_ExtTrackResistValue->SetValue( msg ); m_ExtTrackResistValue->SetValue( msg );
double int_res = rho / int_area * track_len; double int_res = rho / int_area * track_len;
msg.Printf( wxT( "%g" ), int_res ); msg.Printf( wxT( "%g" ), int_res );
m_IntTrackResistValue->SetValue( msg ); m_IntTrackResistValue->SetValue( msg );
...@@ -116,6 +121,7 @@ void PCB_CALCULATOR_FRAME::OnTWCalculateButt( wxCommandEvent& event ) ...@@ -116,6 +121,7 @@ void PCB_CALCULATOR_FRAME::OnTWCalculateButt( wxCommandEvent& event )
double ext_drop_volt = ext_res * current; double ext_drop_volt = ext_res * current;
msg.Printf( wxT( "%g" ), ext_drop_volt ); msg.Printf( wxT( "%g" ), ext_drop_volt );
m_ExtTrackVDropValue->SetValue( msg ); m_ExtTrackVDropValue->SetValue( msg );
double int_drop_volt = int_res * current; double int_drop_volt = int_res * current;
msg.Printf( wxT( "%g" ), int_drop_volt ); msg.Printf( wxT( "%g" ), int_drop_volt );
m_IntTrackVDropValue->SetValue( msg ); m_IntTrackVDropValue->SetValue( msg );
...@@ -124,6 +130,7 @@ void PCB_CALCULATOR_FRAME::OnTWCalculateButt( wxCommandEvent& event ) ...@@ -124,6 +130,7 @@ void PCB_CALCULATOR_FRAME::OnTWCalculateButt( wxCommandEvent& event )
double loss = ext_drop_volt * current; double loss = ext_drop_volt * current;
msg.Printf( wxT( "%g" ), loss ); msg.Printf( wxT( "%g" ), loss );
m_ExtTrackLossValue->SetValue( msg ); m_ExtTrackLossValue->SetValue( msg );
loss = int_drop_volt * current; loss = int_drop_volt * current;
msg.Printf( wxT( "%g" ), loss ); msg.Printf( wxT( "%g" ), loss );
m_IntTrackLossValue->SetValue( msg ); m_IntTrackLossValue->SetValue( msg );
......
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