void LoadDefaultTabs () { InOut log (_T("LoadDefaultTabs")); CString lastFolder; DisableSync(); switch (gOptions.m_OnStart) { case ONSTART_NOTHING: break; case ONSTART_MYCOMP: OpenFolder (CONST_MYCOMPUTER); break; case ONSTART_LASTSAVED: for (unsigned int i = 0 ; i < gOptions.m_LastTabs.size (); i++) //if (IsDirectory (gOptions.m_LastTabs[i].m_Name)) { SureBackSlashEx (gOptions.m_LastTabs[i].m_Name); OpenFolder (gOptions.m_LastTabs[i].m_Name); lastFolder = gOptions.m_LastTabs[i].m_Name; } if (!gOptions.m_LastTabsActiveView.IsEmpty()) lastFolder = gOptions.m_LastTabsActiveView; break; case ONSTART_DEFAULT: for (unsigned int i = 0 ; i < gOptions.m_DefaultTabs.size (); i++) { SureBackSlashEx (gOptions.m_DefaultTabs[i].m_Name); OpenFolder (gOptions.m_DefaultTabs[i].m_Name); lastFolder = gOptions.m_DefaultTabs[i].m_Name; } break; } EnableSync(); if (!lastFolder.IsEmpty()) { SureBackSlashEx (lastFolder); OpenFolder (lastFolder); SyncUI (lastFolder); } }
void frmPrjTree::Init(){ frmviewctrl->Init(); frmsurfctrl->Init(); frmimageplane->Init(); frmmatting->Init(); //insert here for new panel ui.reset(new frmPrjTreeUI2); //ui->tree->activate(); ui->tree->showroot(false); ui->tree->add("Scene"); ui->tree->add("Scene/View"); ui->tree->add("Scene/SFS Builder"); ui->tree->add("Scene/Matting"); ui->tree->add("Scene/Surface"); CONNECT(ui->tree,frmPrjTree::tree_event); ui->win->show(); ui->tree->show(); //syncronize data SyncUI(); }
void MattingEH::Handle(EventBall *eventball){ if(eventball->state(-34)){ } else if(eventball->event(Q_ADD)){ // event handler removed from the queue ev->edit_mode=Matting::edit_mode_on; eventball->stop(); ev->dv->redraw(); return; } else if(eventball->event(Q_DEL)){ // event handler removed from the queue ev->edit_mode=Matting::edit_mode_off; eventball->stop(); ev->dv->redraw(); return; } else if(eventball->event(M_DRAG) && eventball->state(state_drag)){ // continue drag #if 0 float x=eventball->x, y=eventball->y, z=0; ev->dv->viewctrl->hitscene(x,y,z); float h=ev->h/2; float w=ev->w/2; x-=w; y-=h; float d = sqrt(x*x+y*y); if(d<h && fabs(z)<0.2f){ z = sqrt(h*h - d*d); } int slot; if(ev->glsel_lightcur == ev->glsel_light[0]) slot = 0; if(ev->glsel_lightcur == ev->glsel_light[1]) slot = 1; if(ev->glsel_lightcur == ev->glsel_light[2]) slot = 2; if(ev->glsel_lightcur == ev->glsel_light[3]) slot = 3; x = ev->lights[slot][0]=x/h; y = ev->lights[slot][1]=y/h; z = ev->lights[slot][2]=z/h; //printf("x=%f y=%f z=%f\n",x,y,z); SyncUI(); ev->dv->redraw(); eventball->stop(); #endif } else if(eventball->event(M_UP) && eventball->state(state_drag)){ // end drag #if 0 eventball->setstate(0); ev->glsel_lightcur=0; ev->dv->redraw(); eventball->stop(); #endif } else if(!eventball->state(0)){ // move event futher down return; } else if(eventball->event(M_DOWN) && eventball->keys("") && eventball->kmod(0) && eventball->mbtn(1)){ // start drag #if 0 int id =ev->dv->SelectObj(eventball->x,eventball->y); if(id == ev->glsel_light[0] || id == ev->glsel_light[1] || id == ev->glsel_light[2] || id == ev->glsel_light[3]){ if(ev->glsel_lightcur != id){ eventball->genstate(state_drag); ev->glsel_lightcur=id; ev->curslot=id-ev->glsel_light[0]; ev->dv->redraw(); SyncUI(); eventball->stop(); } } #endif } }
void DlgSqlExport::Run(Sql& cursor, String command, String tablename) { Title(Nvl(tablename, t_("SQL query")) + t_(" export")); object_name <<= tablename; if(!cursor.Execute(command)) { Exclamation(NFormat(t_("Error executing [* \1%s\1]: \1%s"), command, cursor.GetLastError())); return; } for(int i = 0; i < cursor.GetColumns(); i++) { const SqlColumnInfo& sci = cursor.GetColumnInfo(i); String type; switch(sci.valuetype) { case BOOL_V: case INT_V: type = t_("integer"); break; case DOUBLE_V: type = t_("real number"); break; case STRING_V: case WSTRING_V: type = t_("string"); break; case DATE_V: type = t_("date"); break; case TIME_V: type = t_("date/time"); break; case /*ORA_BLOB_V*/-1: type = t_("BLOB"); break; case /*ORA_CLOB_V*/-2: type = t_("CLOB"); break; default: type = FormatInt(sci.valuetype); break; } columns.Add(sci.name, sci.valuetype, sci.width, 1); } static String cfg; LoadFromString(*this, cfg); SyncUI(); while(TopWindow::Run() == IDOK) try { String out_table = ~object_name; String delim; switch((int)~delimiters) { case DELIM_TAB: delim = "\t"; break; case DELIM_SEMICOLON: delim = ";"; break; } Vector<int> out; String colstr; String title; for(int i = 0; i < columns.GetCount(); i++) if(columns.Get(i, 3)) { out.Add(i); String cname = cursor.GetColumnInfo(i).name; colstr << (i ? ", " : "") << cname; if(i) title << delim; title << cname; } if(out.IsEmpty()) { throw Exc(t_("No columns selected!")); continue; } String rowbegin, rowend; int fmt = ~format; FileSel fsel; String ext; switch(fmt) { case FMT_TEXT: { rowend = ""; ext = ".txt"; fsel.Type(t_("Text files (*.txt)"), "*.txt"); break; } case FMT_SQL: { if(identity_insert) rowbegin << "set identity_insert " << out_table << " on "; rowbegin << "insert into " << out_table << "(" << colstr << ") values ("; rowend = ");"; ext = ".sql"; fsel.Type(t_("SQL scripts (*.sql)"), "*.sql"); break; } } fsel.AllFilesType().DefaultExt(ext.Mid(1)); if(!IsNull(recent_file)) fsel <<= ForceExt(recent_file, ext); if(!fsel.ExecuteSaveAs(t_("Save export as"))) continue; recent_file = ~fsel; FileOut fo; if(!fo.Open(recent_file)) { Exclamation(NFormat(t_("Error creating file [* \1%s\1]."), recent_file)); continue; } if(fmt == FMT_TEXT) fo.PutLine(title); Progress progress(t_("Exporting row %d")); while(cursor.Fetch()) { String script = rowbegin; for(int i = 0; i < out.GetCount(); i++) { Value v = cursor[out[i]]; switch(fmt) { case FMT_TEXT: { if(i) script.Cat(delim); if(IsString(v) && quote) { String s = v; script << '\"'; for(const char *p = s, *e = s.End(); p < e; p++) if(*p == '\"') script.Cat("\"\""); else script.Cat(*p); script << '\"'; } else script << StdFormat(v); break; } case FMT_SQL: { if(i) script.Cat(", "); // script << SqlCompile(SQLD_ORACLE, SqlFormat(v)); break; } } } script << rowend; fo.PutLine(script); /* if(autocommit && --left <= 0) { fo.PutLine("commit;"); left = autocommit; } */ if(progress.StepCanceled()) { Exclamation(t_("Export aborted!")); return; } } fo.Close(); if(fo.IsError()) throw Exc(NFormat(t_("Error writing file %s."), recent_file)); break; } catch(Exc e) { ShowExc(e); } cfg = StoreAsString(*this); }