void Ide::SelectMethod() { SetMethod(methodlist.GetKey()); int q = recent_buildmode.Find(~method); if(q >= 0) { StringStream ss(recent_buildmode[q]); SerializeOutputMode(ss); } SyncBuildMode(); SetHdependDirs(); }
void Ide::SerializeWorkspace(Stream& s) { int i; int version = 14; s / version; s.Magic(0x12354); if(s.IsStoring()) { for(i = 0; i < filedata.GetCount(); i++) { String fn = filedata.GetKey(i); if(!fn.IsEmpty() && FileExists(fn)) { s % fn; s % filedata[i].editpos; if(version >= 1) s % filedata[i].columnline; } } String h; s % h; } else { String fn; filedata.Clear(); for(;;) { s % fn; if(fn.IsEmpty()) break; FileData& fd = filedata.GetAdd(fn); fd.Clear(); s % fd.editpos; if(version >= 1) s % fd.columnline; } } String pk = GetActivePackage(); s % pk; package.FindSetCursor(pk); s % tablru; s % mainconfigname; s % mainconfigparam; s % console.verbosebuild; s % stoponerrors; byte dummy; s % dummy; s % runarg; s % recent_runarg; s % rundir; s % stdout_file % recent_stdout_file / runmode; if(version >= 1) s % runexternal; if(version >= 11) { bool dummy; s % dummy; } if(version >= 13) s % consolemode; if(version >= 14) s % console_utf8; s % editfile; for(i = 0; i < 10; i++) s % bookmark[i]; editor.Serialize(s); if(version >= 5) s % editorsplit; if(version == 6) { String n; int v; s / v; for(int i = 0; i < 10; i++) { s % n; s / v; } } if(version >= 8) { bool dummyb; String dummy; s % dummyb; s % dummy; } SerializeFindInFiles(s); String om; s % om; s % recentoutput; s % recentflags; s / editortabsize / indent_amount % indent_spaces; for(int j = 0; j < GetIdeModuleCount(); j++) GetIdeModule(j).Serialize(s); // -> Workspace SerializeWorkspaceConfigs(s); SerializeOutputMode(s); SerializeClosed(s); if(version >= 10) { if(tabs_serialize) { s % tabs; } } if(version >= 11) { s % find_file_search_string; } if(version >= 12) SerializePlacement(s); }