From: Markus R. <rol...@us...> - 2007-06-23 10:17:31
|
Update of /cvsroot/simspark/simspark/contrib/rsgedit In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv14819 Modified Files: Tag: RSGEDIT_SCINTILLA mainframe.cpp mainframe.h Log Message: - added method SelectCanvasTab() - changed file open dialog to allow selection of ruby and rsg files - first opened .rb is implicitly the start script Index: mainframe.h =================================================================== RCS file: /cvsroot/simspark/simspark/contrib/rsgedit/mainframe.h,v retrieving revision 1.15.2.5 retrieving revision 1.15.2.6 diff -C2 -d -r1.15.2.5 -r1.15.2.6 *** mainframe.h 23 Jun 2007 09:32:51 -0000 1.15.2.5 --- mainframe.h 23 Jun 2007 10:17:25 -0000 1.15.2.6 *************** *** 148,151 **** --- 148,152 ---- void UpdateLogChannelState(); void InitTreeNodeProperties(); + void SelectCanvasTab(); void OnTreeItemExpanding(wxTreeEvent& event); Index: mainframe.cpp =================================================================== RCS file: /cvsroot/simspark/simspark/contrib/rsgedit/mainframe.cpp,v retrieving revision 1.21.2.10 retrieving revision 1.21.2.11 diff -C2 -d -r1.21.2.10 -r1.21.2.11 *** mainframe.cpp 23 Jun 2007 09:32:51 -0000 1.21.2.10 --- mainframe.cpp 23 Jun 2007 10:17:25 -0000 1.21.2.11 *************** *** 906,912 **** } - bool select = false; - SparkEdit::SetStartScript(mCtrNotebook, SparkEdit::GetEdit(fname, mCtrNotebook, select)); - UpdateCached(); --- 906,909 ---- *************** *** 929,933 **** DoneSimulation(sim); - UpdateTitle(); PrintSimState(); --- 926,929 ---- *************** *** 952,962 **** } void mainframe::OnFileOpen(wxCommandEvent& event) { ! wxString message(wxT("Choose a ruby script to run")); wxString default_path(wxT("./rsg")); wxString default_filename(wxT("")); wxString default_extension(wxT("")); ! wxString wildcard(wxT("ruby scripts (*.rb)|*.rb")); wxString filename = wxFileSelector(message, default_path, default_filename, default_extension, wildcard); --- 948,971 ---- } + void mainframe::SelectCanvasTab() + { + int idx = mCtrNotebook->GetPageIndex(mCanvas); + if (idx < 0) + { + assert(false); + return; + } + + mCtrNotebook->SetSelection(idx); + mCanvas->SetFocus(); + } + void mainframe::OnFileOpen(wxCommandEvent& event) { ! wxString message(wxT("Choose a file to open")); wxString default_path(wxT("./rsg")); wxString default_filename(wxT("")); wxString default_extension(wxT("")); ! wxString wildcard(wxT("simspark files (*.rsg, *.rb)|*.rb;*.rsg")); wxString filename = wxFileSelector(message, default_path, default_filename, default_extension, wildcard); *************** *** 966,969 **** --- 975,993 ---- } + bool select = false; + wxScintilla* edit = SparkEdit::GetEdit(filename, mCtrNotebook, select); + + if ( + (SparkEdit::GetStartScript() != 0) || + (SparkEdit::GetFileType(edit) != SparkEdit::ET_RB) + ) + { + SparkEdit::SelectEdit(mCtrNotebook, edit); + return; + } + + SelectCanvasTab(); + SparkEdit::SetStartScript(mCtrNotebook, edit); + UpdateTitle(); OpenSimulation(filename); } |