Commit a399f76b182951e505ab1a164354e5aafaf54668

Authored by Steve Greedy
1 parent 9d10a2ba

SW Updates

1. Auto update notification
2. Additional logging
Misc Bug fixes: Bundle builder, spice model builder
GUI/SW1/SRC/BUNDLEBLDR.cpp
... ... @@ -173,7 +173,7 @@ BUNDLEBLDR::BUNDLEBLDR(wxWindow* parent,wxWindowID id,const wxPoint& pos,const w
173 173 Panel4 = new wxPanel(Notebook1, ID_PANEL4, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL, _T("ID_PANEL4"));
174 174 FlexGridSizer4 = new wxFlexGridSizer(0, 2, 0, 0);
175 175 FlexGridSizer4->AddGrowableCol(1);
176   - CheckBox1 = new wxCheckBox(Panel4, ID_CHECKBOX1, _("Use Ground Plane"), wxDefaultPosition, wxSize(154,13), 0, wxDefaultValidator, _T("ID_CHECKBOX1"));
  176 + CheckBox1 = new wxCheckBox(Panel4, ID_CHECKBOX1, _("Use Ground Plane"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_CHECKBOX1"));
177 177 CheckBox1->SetValue(false);
178 178 FlexGridSizer4->Add(CheckBox1, 1, wxALL|wxALIGN_LEFT, 5);
179 179 StaticText2 = new wxStaticText(Panel4, ID_STATICTEXT2, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, _T("ID_STATICTEXT2"));
... ... @@ -183,7 +183,7 @@ BUNDLEBLDR::BUNDLEBLDR(wxWindow* parent,wxWindowID id,const wxPoint& pos,const w
183 183 FlexGridSizer4->SetSizeHints(Panel4);
184 184 Panel5 = new wxPanel(Notebook1, ID_PANEL5, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL, _T("ID_PANEL5"));
185 185 FlexGridSizer5 = new wxFlexGridSizer(0, 2, 0, 0);
186   - CheckBox2 = new wxCheckBox(Panel5, ID_CHECKBOX2, _("Use Laplace"), wxDefaultPosition, wxSize(95,24), 0, wxDefaultValidator, _T("ID_CHECKBOX2"));
  186 + CheckBox2 = new wxCheckBox(Panel5, ID_CHECKBOX2, _("Use Laplace"), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("ID_CHECKBOX2"));
187 187 CheckBox2->SetValue(false);
188 188 FlexGridSizer5->Add(CheckBox2, 1, wxALL, 5);
189 189 ComboBox1 = new wxComboBox(Panel5, ID_COMBOBOX1, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, 0, 0, wxDefaultValidator, _T("ID_COMBOBOX1"));
... ... @@ -287,6 +287,7 @@ BUNDLEBLDR::BUNDLEBLDR(wxWindow* parent,wxWindowID id,const wxPoint& pos,const w
287 287 TextCtrl8 = new wxTextCtrl(this, ID_TEXTCTRL8, _("0.030"), wxDefaultPosition, wxDefaultSize, wxTE_PROCESS_ENTER, wxDefaultValidator, _T("ID_TEXTCTRL8"));
288 288 BoxSizer4->Add(TextCtrl8, 4, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
289 289 SpinButton1 = new wxSpinButton(this, ID_SPINBUTTON1, wxDefaultPosition, wxDefaultSize, wxSP_VERTICAL|wxSP_ARROW_KEYS, _T("ID_SPINBUTTON1"));
  290 + SpinButton1->SetValue(50);
290 291 SpinButton1->SetRange(0, 100);
291 292 BoxSizer4->Add(SpinButton1, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5);
292 293 StaticBoxSizer1->Add(BoxSizer4, 1, wxALL|wxALIGN_RIGHT, 5);
... ... @@ -335,24 +336,16 @@ void BUNDLEBLDR::OnListboxRDown(wxMouseEvent& event)
335 336  
336 337 strMessage = "Are you sure you wish to delete: ";
337 338 strMessage = strMessage << strItem;
338   - // We have an item in the list to delete - shall we confirm?
  339 + // Confirm cable component deletion?
339 340 wxMessageDialog bb_ConfirmDelete (this, strMessage, _("Please confirm delete") ,wxYES_NO|wxCENTRE,wxDefaultPosition );
340 341  
341 342 bb_ConfirmDelete.ShowModal();
342 343  
343   - //int RetVal = bb_ConfirmDelete.GetReturnCode();
344   -
345   - //if ( RetVal == wxID_YES )
346   - //{
347   - // Delete the item 'item' from the linked list
348   - removeElement(item);
349   - PopulateListControl();
350   - // And repopulate the listbox (clear it first!)
351   -
352   - //}
353   -
  344 + removeElement(item);
  345 + PopulateListControl();
354 346 }
355 347 else
  348 +
356 349 wxMessageBox(_T("No Cable SELECTED"),_("Remove Cable Component"));
357 350  
358 351 event.Skip();
... ... @@ -380,9 +373,8 @@ void BUNDLEBLDR::removeElement(int ItemIndex)
380 373  
381 374 Bundle *Current = bundle_root;
382 375 Bundle *Previous = Current;
383   - //Bundle *Next = bundle_root->next;
384 376  
385   - // Otherwise we look through the list for the item
  377 + // Look through the list for the item
386 378 int i = 0;
387 379 while( (Current!= NULL) && (i < ItemIndex) )
388 380 {
... ... @@ -464,8 +456,6 @@ void BUNDLEBLDR::OnTreeSelectionChanged(wxTreeEvent&amp; evt)
464 456  
465 457 };
466 458  
467   - winPLACE_CABLE->Destroy();
468   -
469 459 ListBox1->Append(File_FullName);
470 460  
471 461 Button1->Enable();
... ... @@ -495,14 +485,6 @@ void BUNDLEBLDR::OnCheckListBox1Toggled(wxCommandEvent&amp; event)
495 485  
496 486 void BUNDLEBLDR::OnPanel1Paint(wxPaintEvent& event)
497 487 {
498   -// double maxDimension;
499   -//
500   -// wxString maxXY = TextCtrl8->GetValue();
501   -//
502   -// maxXY.ToDouble(&maxDimension);
503   -//
504   -// FormatPanel(maxDimension);
505   -
506 488 DrawPanel();
507 489 }
508 490  
... ... @@ -1466,7 +1448,7 @@ void BUNDLEBLDR::OnButton2Click(wxCommandEvent&amp; event)
1466 1448 RUN_STATUS *run_status_bundle = new RUN_STATUS(this);
1467 1449 run_status_bundle->ShowModal();
1468 1450  
1469   - //Button1->Enable();
  1451 + Button1->Enable();
1470 1452  
1471 1453 if (CheckBox2->GetValue())
1472 1454 {
... ... @@ -1496,13 +1478,12 @@ void BUNDLEBLDR::OnButton2Click(wxCommandEvent&amp; event)
1496 1478 file = wxFindNextFile();
1497 1479 }
1498 1480 CheckBox3->Enable();
1499   -
1500 1481 }
1501 1482 }
1502 1483  
1503 1484 void BUNDLEBLDR::OnButton3Click(wxCommandEvent& event)
1504 1485 {
1505   - PopulateTheDirectoryTree(PathToMOD);
  1486 + //PopulateTheDirectoryTree(PathToMOD);
1506 1487 //clean up directory
1507 1488 clean_temp_files();
1508 1489 Close();
... ...
GUI/SW1/SRC/LOGGER.cpp
... ... @@ -70,5 +70,5 @@ void Logger::logHelper(const std::string&amp; inMessage, const std::string&amp; inLogLev
70 70 strftime (tCurrentTime,80,"%X",tTimeNow);
71 71  
72 72 mOutputStream << tCurrentTime <<"\t";
73   - mOutputStream << inLogLevel << ": \t" << inMessage << endl;
  73 + mOutputStream << inLogLevel << ": \t" << inMessage << endl;
74 74 }
... ...
GUI/SW1/SRC/PLACE_CABLE.cpp
... ... @@ -93,8 +93,8 @@ PLACE_CABLE::PLACE_CABLE(wxWindow* parent,wxWindowID id,const wxPoint&amp; pos,const
93 93 StaticBoxSizer1->SetSizeHints(this);
94 94  
95 95 Connect(ID_TEXTCTRL1,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&PLACE_CABLE::OnTextCtrl1Text);
96   - Connect(ID_TEXTCTRL2,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&PLACE_CABLE::OnTextCtrl2Text);
97   - Connect(ID_TEXTCTRL3,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&PLACE_CABLE::OnTextCtrl3Text);
  96 + Connect(ID_TEXTCTRL1,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&PLACE_CABLE::OnTextCtrl2Text);
  97 + Connect(ID_TEXTCTRL1,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&PLACE_CABLE::OnTextCtrl3Text);
98 98 Connect(ID_BUTTON1,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&PLACE_CABLE::OnButton1Click);
99 99 Connect(ID_BUTTON2,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&PLACE_CABLE::OnButton2Click);
100 100 //*)
... ...
GUI/SW1/SRC/SPICEMODEL.cpp
... ... @@ -622,3 +622,4 @@ void SPICEMODEL::OnNotebook1PageChanged1(wxNotebookEvent&amp; event)
622 622 void SPICEMODEL::OnTextCtrl13Text1(wxCommandEvent& event)
623 623 {
624 624 }
  625 +
... ...
GUI/SW1/SRC/SPICEMODEL.h
... ... @@ -219,6 +219,7 @@ class SPICEMODEL: public wxDialog
219 219 void OnNotebook1PageChanged1(wxNotebookEvent& event);
220 220 void OnTextCtrl13Text1(wxCommandEvent& event);
221 221 void OnInit(wxInitDialogEvent& event);
  222 + void OnNotebook1PageChanged2(wxNotebookEvent& event);
222 223 //*)
223 224  
224 225 void PopulateTheDirectoryTree ( wxString);
... ...
GUI/SW1/SRC/SW1_GUIApp.cpp
... ... @@ -64,7 +64,6 @@ bool SW1_GUIApp::OnInit()
64 64  
65 65 string updatemessage;
66 66  
67   -
68 67 Logger::instance().log(Date, Logger::kLogLevelHeader);
69 68 Logger::instance().log("", Logger::kLogLevelHeader);
70 69 Logger::instance().log("SACAMOS STARTED", Logger::kLogLevelHeader);
... ... @@ -98,8 +97,49 @@ bool SW1_GUIApp::OnInit()
98 97  
99 98 BuildFile.Close();
100 99  
  100 + wxString os_version = wxGetOsDescription();
  101 +
  102 + wxStringTokenizer tokenizer(os_version, " ");
  103 +
  104 + wxString os_type = tokenizer.GetNextToken();
  105 +
  106 + //(*AppInitialize
  107 + bool wxsOK = true;
  108 + wxInitAllImageHandlers();
  109 +
  110 +
  111 + if ( wxsOK )
  112 + {
  113 + SW1_GUIFrame* Frame = new SW1_GUIFrame(0);
  114 +
  115 + // Display splash screen
  116 +
  117 + if (splashimage.LoadFile("resources/Sacamos_About.png", wxBITMAP_TYPE_PNG))
  118 + {
  119 + wxSplashScreen *splashscrn = new wxSplashScreen(splashimage,
  120 + wxSPLASH_CENTRE_ON_SCREEN|wxSPLASH_TIMEOUT,
  121 + 2000, Frame, wxID_ANY, wxDefaultPosition, wxDefaultSize,
  122 + wxSIMPLE_BORDER|wxSTAY_ON_TOP);
  123 + }
  124 +
  125 + if (os_type=="Windows")
  126 + {
  127 + wxYield();
  128 + wxSleep(2);
  129 + Frame->Show(true);
  130 + }
  131 + else
  132 + {
  133 + Frame->Show(true);
  134 + wxYield();
  135 + wxSleep(2);
  136 + }
  137 +
  138 + }
  139 + //*)
  140 +
101 141 // Compare current version against latest release version
102   - Logger::instance().log("Checking for Software Update...", Logger::kLogLevelHeader);
  142 + Logger::instance().log("Checking for Software Update...", Logger::kLogLevelInfo);
103 143  
104 144 wxHTTP checkupdate;
105 145  
... ... @@ -129,7 +169,7 @@ bool SW1_GUIApp::OnInit()
129 169 else
130 170 {
131 171 //fail silently & log event
132   - Logger::instance().log("Could not connect to SACAMOS Repository", Logger::kLogLevelError);
  172 + Logger::instance().log("Could not connect to SACAMOS Repository", Logger::kLogLevelInfo);
133 173 }
134 174  
135 175 checkupdate.Close();
... ... @@ -161,37 +201,11 @@ bool SW1_GUIApp::OnInit()
161 201 wxString myString(updatemessage);
162 202 wxMessageBox(updatemessage,"Please Update");
163 203  
  204 + Logger::instance().log("SACAMOS Update Available", Logger::kLogLevelInfo);
  205 +
164 206 }
165 207 }
166 208  
167   - // Display splash screen
168   -// wxBitmap splashimage;
169   -//
170   -// wxImage::AddHandler(new wxPNGHandler);
171   -//
172   -// splashimage.LoadFile(_T("resources/Sacamos_About.png"), wxBITMAP_TYPE_PNG);
173   -//
174   -// wxSplashScreen *splashscrn = new wxSplashScreen(splashimage,
175   -// wxSPLASH_CENTRE_ON_SCREEN|wxSPLASH_TIMEOUT,
176   -// 0, NULL, -1, wxDefaultPosition, wxDefaultSize,
177   -// wxSIMPLE_BORDER|wxSTAY_ON_TOP);
178   -//
179   -// wxYield();
180   -// wxSleep(2);
181   -// splashscrn->Destroy();
182   -
183   - //(*AppInitialize
184   - bool wxsOK = true;
185   - wxInitAllImageHandlers();
186   -
187   -
188   - if ( wxsOK )
189   - {
190   - SW1_GUIFrame* Frame = new SW1_GUIFrame(0);
191   - Frame->Show();
192   - SetTopWindow(Frame);
193   - }
194   - //*)
195 209  
196 210 return wxsOK;
197 211  
... ...
GUI/SW1/SRC/SW1_GUIApp.h
... ... @@ -65,10 +65,11 @@ class SW1_GUIApp : public wxApp
65 65 public:
66 66 virtual bool OnInit();
67 67  
68   - std::string SACAMOS_V_NUMBER = "SPICE_CABLE_MODEL_BUILDER_version=\"v2.1.0\"";
  68 + wxBitmap splashimage;
  69 +
  70 + std::string SACAMOS_V_NUMBER = "SPICE_CABLE_MODEL_BUILDER_version=\"v3.1.0\"";
69 71 std::string SACAMOS_V_DATE = "SPICE_CABLE_MODEL_BUILDER_date=\"16th April 2018\"";
70 72  
71   - //SPICE_CABLE_MODEL_BUILDER_date="16th April 2018"
72 73 };
73 74  
74 75 #endif // SW1_GUIAPP_H
... ...
GUI/SW1/SRC/SW1_GUIMain.cpp
... ... @@ -332,22 +332,22 @@ void SW1_GUIFrame::OnCreateMOD(wxCommandEvent&amp; event)
332 332 folder = PathToMOD + separator + "CABLE";
333 333 dirName = folder;
334 334 if (!wxDirExists(dirName))
335   - wxMkdir(dirName, 0);
  335 + wxMkdir(dirName, wxS_DIR_DEFAULT);
336 336  
337 337 folder = PathToMOD + separator +"BUNDLE";
338 338 dirName = folder;
339 339 if (!wxDirExists(dirName))
340   - wxMkdir(dirName, 0);
  340 + wxMkdir(dirName, wxS_DIR_DEFAULT);
341 341  
342 342 folder = PathToMOD + separator +"SPICE";
343 343 dirName = folder;
344 344 if (!wxDirExists(dirName))
345   - wxMkdir(dirName, 0);
  345 + wxMkdir(dirName, wxS_DIR_DEFAULT);
346 346  
347 347 folder = PathToMOD + separator +"SPICE" + separator + "SYMBOL";
348 348 dirName = folder;
349 349 if (!wxDirExists(dirName))
350   - wxMkdir(dirName, 0);
  350 + wxMkdir(dirName, wxS_DIR_DEFAULT);
351 351  
352 352 wxMenuBar* MenuBar1 = GetMenuBar();
353 353 MenuBar1->EnableTop(MenuBar1->FindMenu(_("&Cable Model")),true);
... ...
GUI/SW1/SRC/resources/Sacamos_About.png

35.8 KB | W: | H:

36.6 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin