void Shader::OnNew(wxCommandEvent& evt) { if (ConfirmSave() != wxID_CANCEL) { NewProject(m_ProjectsMenu->GetLabelText(evt.GetId())); m_FileName.Empty(); } }
void OnNewProject(ConstructorApp& app, bool on_startup) { bool is_pal = Prefs().isPAL; Gtk::Dialog new_prj_dlg(_("New Project"), app.win, true, true); new_prj_dlg.set_name("NewProject"); new_prj_dlg.set_resizable(false); Gtk::VBox& dlg_box = *new_prj_dlg.get_vbox(); PackStart(dlg_box, NewManaged<Gtk::Image>(DataDirPath("cap400.png"))); Gtk::VBox& vbox = Add(PackStart(dlg_box, NewPaddingAlg(10, 40, 20, 20)), NewManaged<Gtk::VBox>()); PackStart(vbox, NewManaged<Gtk::Label>(_("Please select a Television standard for your project:"), 0.0, 0.5, true)); { Gtk::VBox& vbox2 = Add(PackStart(vbox, NewPaddingAlg(10, 10, 0, 0)), NewManaged<Gtk::VBox>()); Gtk::RadioButtonGroup grp; PackStart(vbox2, TVSelectionButton(is_pal, true, grp)); PackStart(vbox2, TVSelectionButton(is_pal, false, grp)); } Gtk::CheckButton r_btn(_("Remember my choice")); if( on_startup ) { // :TRICKY: в отличие от GtkAssistant, action_area в диалоге - // GtkButtonBox, который все свои виджеты делает одинаковыми, // не смотря на опции shrink, fill, padding (т.е. GtkButtonBox // заведомо хуже GtkBox в плане гибкости) //PackStart(*new_prj_dlg.get_action_area(), r_btn); PackStart(vbox, r_btn); new_prj_dlg.add_button(Gtk::Stock::OK, Gtk::RESPONSE_OK); } else AddCancelOKButtons(new_prj_dlg); dlg_box.show_all(); if( Gtk::RESPONSE_OK == new_prj_dlg.run() ) { NewProject(); AData().SetPalTvSystem(is_pal); SetAppTitle(); if( on_startup && r_btn.get_active() ) { Prefs().isPAL = is_pal; // :TRICKY: если будут запросы обратно в false вернуть, то // добавим "очищающую" кнопку PackCompositeWdgButton() в диалог настроек Prefs().remMyTVChoice = true; SavePrefs(); } } }
static void OnOpenProject(ConstructorApp& app) { //bool res = false; //std::string fname; //{ // Gtk::FileChooserDialog dialog(_("Open Project"), Gtk::FILE_CHOOSER_ACTION_OPEN); // BuildChooserDialog(dialog, true, app.win); // Gtk::FileFilter prj_filter; // prj_filter.set_name(_("Project files (*.bmd)")); // prj_filter.add_pattern("*.bmd"); // // старые проекты // prj_filter.add_pattern("*.xml"); // dialog.add_filter(prj_filter); // Gtk::FileFilter all_filter; // all_filter.set_name(_("All Files (*.*)")); // all_filter.add_pattern("*"); // dialog.add_filter(all_filter); // if( Gtk::RESPONSE_OK == dialog.run() ) // { // //// в процессе загрузки не нужен // //dialog.hide(); // //IteratePendingEvents(); // res = true; // fname = dialog.get_filename(); // } //} FileFilterList pat_lst; FileFilter& bmd_ff = AddFileFilter(pat_lst, _("Project files (*.bmd)")); const char* bmd_extensions[] = { "*.bmd", "*.xml", 0 }; AddFPs(bmd_ff, bmd_extensions); AddAllFF(pat_lst); Str::List paths; if( RunFileDialog(_("Open Project"), true, paths, app.win, pat_lst) ) { NewProject(); AData().SetOut(false); LoadApp(paths[0]); } }
bool AssetManager::LoadFile (const char* filename) { NewProject (); csRef<iDocument> doc; csRef<iString> error = LoadDocument (object_reg, doc, 0, filename); if (!doc && !error) { error.AttachNew (new scfString ()); error->Format ("ERROR reading file '%s'", filename); } else return LoadDoc (doc); printf ("%s\n", error->GetData ()); return false; }
void MainWindow::ShowWelcome() { is_project_open_ = false; setWindowTitle("Multitrack"); welcome_widget_ = new WelcomeWidget(this); setCentralWidget(welcome_widget_); UpdateRecentProjects(); adjustSize(); resize(welcome_size_); connect(welcome_widget_, SIGNAL(New()), this, SLOT(NewProject())); connect(welcome_widget_, SIGNAL(Open()), this, SLOT(OpenProject())); connect(welcome_widget_, SIGNAL(RecentProjectChosen(int)), this, SLOT(OpenRecentProject(int))); ui->actionSave_project->setEnabled(false); ui->actionSave_project_as->setEnabled(false); ui->actionClose_project->setEnabled(false); }
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow), project_(new Project), is_project_open_(true), welcome_size_(425, 437), project_size_(894, 636) { ui->setupUi(this); // Load recent projects. QString data_directory = QStandardPaths::writableLocation(QStandardPaths::DocumentsLocation); QString recent_path = QDir::cleanPath(data_directory + QDir::separator() + "recent.mtcfg"); QFile recent_file(recent_path); if (!recent_file.open(QIODevice::ReadOnly)) { if (!recent_file.open(QIODevice::WriteOnly)) { qDebug("Could not open file %s for writing.", recent_path.toStdString().c_str()); } else { QDataStream ds(&recent_file); ds << recent_projects_; recent_file.close(); } } else { QDataStream ds(&recent_file); ds >> recent_projects_; recent_file.close(); } ShowWelcome(); connect(ui->actionNew_project, SIGNAL(triggered()), this, SLOT(NewProject())); connect(ui->actionOpen_project, SIGNAL(triggered()), this, SLOT(OpenProject())); connect(ui->actionQuit, SIGNAL(triggered()), this, SLOT(close())); }
void MdiEditor::createMenuBar() { pro_menu=menuBar()->addMenu("Project"); new_pro=new QAction("&New Project", this); save_pro=new QAction("&Save Project", this); pro_menu->addAction(new_pro); pro_menu->addAction(save_pro); setting_menu=menuBar()->addMenu("Settings"); mod_para=new QAction("&Parameters", this); setting_menu->addAction(mod_para); mod_mask=new QAction("&Masks", this); setting_menu->addAction(mod_mask); mod_layer=new QAction("&Layers", this); setting_menu->addAction(mod_layer); view_menu=menuBar()->addMenu("View"); mask_view=view_menu->addMenu("Mask"); show_mask=new QAction("&Show", this); mask_view->addAction(show_mask); hide_mask=new QAction("&Hide", this); mask_view->addAction(hide_mask); result_view=view_menu->addMenu("Results"); show_halfway=new QAction("&Halfway Image", this); result_view->addAction(show_halfway); show_error=new QAction("&Error Image", this); result_view->addAction(show_error); color_view=view_menu->addMenu("Color from"); show_image1=new QAction("&Image1", this); color_view->addAction(show_image1); show_image12=new QAction("&Both image1 & image2", this); color_view->addAction(show_image12); show_image2=new QAction("&Image2", this); color_view->addAction(show_image2); layer_view=view_menu->addMenu("Layer"); show_multilayer=new QAction("&Multilayer", this); layer_view->addAction(show_multilayer); alg_menu=menuBar()->addMenu("Algorithm"); cpu_alg=new QAction("&CPU", this); gpu_alg=new QAction("&GPU", this); alg_menu->addAction(cpu_alg); alg_menu->addAction(gpu_alg); show_mask->setCheckable(true); hide_mask->setCheckable(true); show_halfway->setCheckable(true); show_error->setCheckable(true); show_image1->setCheckable(true); show_image12->setCheckable(true); show_image2->setCheckable(true); show_multilayer->setCheckable(true); cpu_alg->setCheckable(true); gpu_alg->setCheckable(true); //right menu confirm=new QAction("&confirm",this); cancel=new QAction("&cancel",this); //signal connect(new_pro,SIGNAL(triggered()),this,SLOT(NewProject())); connect(save_pro,SIGNAL(triggered()),this,SLOT(SaveProject())); connect(mod_para,SIGNAL(triggered()),this,SLOT(ModifyPara())); connect(mod_mask,SIGNAL(triggered()),this,SLOT(ModifyMask())); connect(show_mask,SIGNAL(triggered()),this,SLOT(ShowMask())); connect(hide_mask,SIGNAL(triggered()),this,SLOT(HideMask())); connect(show_halfway,SIGNAL(triggered()),this,SLOT(ShowHalfway())); connect(show_error,SIGNAL(triggered()),this,SLOT(ShowError())); connect(show_image1,SIGNAL(triggered()),this,SLOT(ColorFromImage1())); connect(show_image12,SIGNAL(triggered()),this,SLOT(ColorFromImage12())); connect(show_image2,SIGNAL(triggered()),this,SLOT(ColorFromImage2())); connect(confirm,SIGNAL(triggered()),this,SLOT(Confirm())); connect(cancel,SIGNAL(triggered()),this,SLOT(Cancel())); connect(mod_layer,SIGNAL(triggered()),this,SLOT(ModifyLayer())); connect(show_multilayer,SIGNAL(triggered()),this,SLOT(MultyLayer())); connect(cpu_alg,SIGNAL(triggered()),this,SLOT(CPU_Alg())); connect(gpu_alg,SIGNAL(triggered()),this,SLOT(GPU_Alg())); }