void MainWindow::createActions() { ui->actionNew->setShortcut(QKeySequence(QKeySequence::New)); ui->actionOpen->setShortcut(QKeySequence(QKeySequence::Open)); ui->actionSave->setShortcut(QKeySequence(QKeySequence::Save)); ui->actionSave_as->setShortcut(QKeySequence("Shift+Ctrl+S")); ui->actionShortcuts->setShortcut(QKeySequence("Ctrl+H")); ui->actionRender->setShortcut(QKeySequence("Ctrl+R")); ui->actionRenderPreview->setShortcut(QKeySequence("Shift+Ctrl+R")); ui->actionExamineFlow->setShortcut(QKeySequence("Shift+Ctrl+X")); ui->actionPreferences->setShortcut(QKeySequence("Ctrl+,")); ui->actionAbout->setShortcut(QKeySequence("F1")); ui->actionQuit->setShortcut(QKeySequence(QKeySequence::Quit)); ui->actionZoomIn->setShortcut(QKeySequence(QKeySequence::ZoomIn)); ui->actionZoomOut->setShortcut(QKeySequence(QKeySequence::ZoomOut)); m_cs.addShortcut("h", Help, tr("Show help overlay")); m_cs.addShortcut("q-q", Quit, tr("Quit")); m_cs.addShortcut("n", New, tr("New project")); m_cs.addShortcut("o", Open, tr("Open project")); m_cs.addShortcut("s-s", Save_Same, tr("Save")); m_cs.addShortcut("s-a", Save_As, tr("Save as ...")); m_cs.addShortcut("a", Abort, tr("Abort move")); m_cs.addShortcut("a-s", Abort_Selection, tr("Unselect all")); m_cs.addShortcut("d-n", Delete_Node, tr("Delete selected nodes")); m_cs.addShortcut("t-s", Tool_Select, tr("Selecting tool")); m_cs.addShortcut("t-m", Tool_Move, tr("Move tool")); m_cs.addShortcut("t-t", Tag, tr("Insert label (tag)")); connect(&m_cs, SIGNAL(signalShortcutUsed(int)), this, SLOT(slotShortcutUsed(int))); connect(this, SIGNAL(deleteNodes()), m_wCanvas, SLOT(slotDeleteNodes())); connect(this, SIGNAL(setMode(Canvas::ToolMode)), m_wCanvas, SLOT(slotSetToolMode(Canvas::ToolMode))); connect(this, SIGNAL(abort(Canvas::Abort)), m_wCanvas, SLOT(slotAbort(Canvas::Abort))); connect(this, SIGNAL(addTag()), m_wCanvas, SLOT(slotAddTag())); connect(ui->actionZoomIn, SIGNAL(triggered()), m_wCanvas, SLOT(slotZoomIn())); connect(ui->actionZoomOut, SIGNAL(triggered()), m_wCanvas, SLOT(slotZoomOut())); connect(m_wCanvas, SIGNAL(signalMouseInputTimeChanged(qreal)), this, SLOT(slotForwardInputPosition(qreal))); connect(m_wCanvas, SIGNAL(signalMouseCurveSrcTimeChanged(qreal)), this, SLOT(slotForwardCurveSrcPosition(qreal))); connect(ui->actionNew, SIGNAL(triggered()), this, SLOT(slotNewProject())); connect(ui->actionOpen, SIGNAL(triggered()), this, SLOT(slotLoadProjectDialog())); connect(ui->actionSave, SIGNAL(triggered()), this, SLOT(slotSaveProject())); connect(ui->actionSave_as, SIGNAL(triggered()), this, SLOT(slotSaveProjectDialog())); connect(ui->actionRender, SIGNAL(triggered()), this, SLOT(slotShowRenderDialog())); connect(ui->actionRenderPreview, SIGNAL(triggered()), this, SLOT(slotUpdateRenderPreview())); connect(ui->actionExamineFlow, SIGNAL(triggered()), this, SLOT(slotShowFlowExaminerDialog())); connect(ui->actionPreferences, SIGNAL(triggered()), this, SLOT(slotShowPreferencesDialog())); connect(ui->actionShortcuts, SIGNAL(triggered()), this, SLOT(slotToggleHelp())); connect(ui->actionAbout, SIGNAL(triggered()), this, SLOT(slotShowAboutDialog())); connect(ui->actionQuit, SIGNAL(triggered()), this, SLOT(close())); connect(ui->actionProjectPreferences, SIGNAL(triggered()), this, SLOT(slotShowProjectPreferencesDialog())); connect(ui->actionEdit_Flow, SIGNAL(triggered()), this, SLOT(slotShowFlowEditWindow())); connect(ui->actionDebug_Window, SIGNAL(toggled(bool)), this, SLOT(slotShowDebugWindow(bool))); }
void MainWindow::slotShortcutUsed(int id) { if (id == Quit) { qApp->quit(); } else if (id == Abort_Selection) { emit abort(Canvas::Abort_Selection); } else if (id == Delete_Node) { emit deleteNodes(); } else if (id == Tool_Select) { emit setMode(Canvas::ToolMode_Select); } else if (id == Tool_Move) { emit setMode(Canvas::ToolMode_Move); } else if (id == Tag) { emit addTag(); } else if (id == Save_Same) { slotSaveProject(); } else if (id == Save_As) { slotSaveProjectDialog(); } else if (id == Abort) { emit abort(Canvas::Abort_General); } else if (id == Help) { slotToggleHelp(); } else if (id == New) { slotNewProject(); } else if (id == Open) { slotLoadProjectDialog(); } }
CMainWindow::CMainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::CMainWindow) ,currentProject("") { ui->setupUi(this); connect(ui->buildNetwork,SIGNAL(clicked()),this,SLOT(slotBuildNetwork())); connect(ui->testNetwork,SIGNAL(clicked()),this,SLOT(slotTestNetwork())); connect(ui->actionNew,SIGNAL(triggered()),this,SLOT(slotNewProject())); connect(ui->actionLoad,SIGNAL(triggered()),this,SLOT(slotLoadProject())); connect(ui->actionClose,SIGNAL(triggered()),this,SLOT(slotCloseProject())); connect(ui->errorLevel,SIGNAL(sliderMoved(int)),this,SLOT(slotErrorLevelChanged(int))); connect(ui->errorPercent,SIGNAL(sliderMoved(int)),this,SLOT(slotErrorPercentChanged(int))); connect(ui->actionSettings,SIGNAL(triggered()),this,SLOT(slotSettings())); ui->buildNetwork->setEnabled(false); ui->testNetwork->setEnabled(false); slotErrorLevelChanged(10); slotErrorPercentChanged(10); network = 0; plotter = 0; }
/*! Constructor * \brief This class implements the project management * * This also handles the mouse and keyboad events, and sends * when appropiate, the file names to be opened by the parent. * * \param parent Parent of the widget. */ Project::Project(QWidget *parent) : QWidget(parent) { projectLibrary = 0; m_libraryFileName = ""; m_libraryName = ""; QVBoxLayout *layout = new QVBoxLayout(this); QToolBar *toolbar = new QToolBar; QToolButton *projNew = new QToolButton(); projNew->setIcon(QIcon(Qucs::bitmapDirectory() + "project-new.png")); projNew->setStatusTip(tr("Creates a new project")); projNew->setToolTip(tr("Creates a new project")); projNew->setWhatsThis(tr("New Project\n\nCreates a new project")); QToolButton *projOpen = new QToolButton(); projOpen->setIcon(QIcon(Qucs::bitmapDirectory() + "fileopen.png")); projOpen->setStatusTip(tr("Opens an existing project")); projOpen->setToolTip(tr("Opens an existing project")); projOpen->setWhatsThis(tr("Open Project\n\nOpens an existing project")); QToolButton *addToProj = new QToolButton(); addToProj->setIcon(QIcon(Qucs::bitmapDirectory() + "filenew.png")); addToProj->setStatusTip(tr("Adds a file to current project")); addToProj->setToolTip(tr("Adds a file to current project")); addToProj->setWhatsThis(tr("Add File to Project\n\nAdds a file to current project")); QToolButton *projDel = new QToolButton(); projDel->setIcon(QIcon(Qucs::bitmapDirectory() + "fileclose.png")); projDel->setStatusTip(tr("Removes a file from current project")); projDel->setToolTip(tr("Removes a file from current project")); projDel->setWhatsThis(tr("Remove from Project\n\nRemoves a file from current project")); QToolButton *projClose = new QToolButton(); projClose->setIcon(QIcon(Qucs::bitmapDirectory() + "project-close.png")); projClose->setStatusTip(tr("Closes the current project")); projClose->setToolTip(tr("Closes the current project")); projClose->setWhatsThis(tr("Close Project\n\nCloses the current project")); connect(projNew, SIGNAL(clicked()), this, SLOT(slotNewProject())); connect(projOpen, SIGNAL(clicked()), this, SLOT(slotOpenProject())); connect(addToProj, SIGNAL(clicked()), this, SLOT(slotAddToProject())); connect(projDel, SIGNAL(clicked()), this, SLOT(slotRemoveFromProject())); connect(projClose, SIGNAL(clicked()), this, SLOT(slotCloseProject())); toolbar->addWidget(projNew); toolbar->addWidget(projOpen); toolbar->addWidget(addToProj); toolbar->addWidget(projDel); toolbar->addWidget(projClose); m_projectsSidebar = new ComponentsSidebar(this); connect(m_projectsSidebar, SIGNAL(itemClicked(const QString&, const QString&)), this, SLOT(slotOnClicked(const QString&, const QString&))); connect(m_projectsSidebar, SIGNAL(itemDoubleClicked(const QString&, const QString&)), this, SLOT(slotOnDoubleClicked(const QString&, const QString&))); layout->addWidget(toolbar); layout->addWidget(m_projectsSidebar); setWindowTitle(tr("Project View")); }
b &= connect(&m_cs, SIGNAL(signalShortcutUsed(int)), this, SLOT(slotShortcutUsed(int))); b &= connect(this, SIGNAL(deleteNodes()), m_wCanvas, SLOT(slotDeleteNodes())); b &= connect(this, SIGNAL(setMode(Canvas::ToolMode)), m_wCanvas, SLOT(slotSetToolMode(Canvas::ToolMode))); b &= connect(this, SIGNAL(abort(Canvas::Abort)), m_wCanvas, SLOT(slotAbort(Canvas::Abort))); b &= connect(this, SIGNAL(addTag()), m_wCanvas, SLOT(slotAddTag())); b &= connect(ui->actionZoomIn, SIGNAL(triggered()), m_wCanvas, SLOT(slotZoomIn())); b &= connect(ui->actionZoomOut, SIGNAL(triggered()), m_wCanvas, SLOT(slotZoomOut())); b &= connect(m_wCanvas, SIGNAL(signalMouseInputTimeChanged(qreal)), this, SLOT(slotForwardInputPosition(qreal))); b &= connect(m_wCanvas, SIGNAL(signalMouseCurveSrcTimeChanged(qreal)), this, SLOT(slotForwardCurveSrcPosition(qreal))); b &= connect(ui->actionNew, SIGNAL(triggered()), this, SLOT(slotNewProject())); b &= connect(ui->actionOpen, SIGNAL(triggered()), this, SLOT(slotLoadProjectDialog())); b &= connect(ui->actionSave, SIGNAL(triggered()), this, SLOT(slotSaveProject())); b &= connect(ui->actionSave_as, SIGNAL(triggered()), this, SLOT(slotSaveProjectDialog())); b &= connect(ui->actionRender, SIGNAL(triggered()), this, SLOT(slotShowRenderDialog())); b &= connect(ui->actionRenderPreview, SIGNAL(triggered()), this, SLOT(slotUpdateRenderPreview())); b &= connect(ui->actionExamineFlow, SIGNAL(triggered()), this, SLOT(slotShowFlowExaminerDialog())); b &= connect(ui->actionPreferences, SIGNAL(triggered()), this, SLOT(slotShowPreferencesDialog())); b &= connect(ui->actionShortcuts, SIGNAL(triggered()), this, SLOT(slotToggleHelp())); b &= connect(ui->actionAbout, SIGNAL(triggered()), this, SLOT(slotShowAboutDialog())); b &= connect(ui->actionQuit, SIGNAL(triggered()), this, SLOT(close())); b &= connect(ui->actionProjectPreferences, SIGNAL(triggered()), this, SLOT(slotShowProjectPreferencesDialog())); Q_ASSERT(b); updateWindowTitle();