void LSMainWindow::createActions() { m_newArchiveAction = new QAction("&New Archive", this); m_openArchiveAction = new QAction("&Open Archive...", this); m_saveAction = new QAction("&Save", this); m_saveArchiveAsAction = new QAction("Save Archive &As...", this); m_newArchiveAction->setShortcuts(QKeySequence::New); m_openArchiveAction->setShortcuts(QKeySequence::Open); m_saveAction->setShortcuts(QKeySequence::Save); m_saveArchiveAsAction->setShortcuts(QKeySequence::SaveAs); connect(m_newArchiveAction, SIGNAL(triggered()), SLOT(newArchive())); connect(m_openArchiveAction, SIGNAL(triggered()), SLOT(openArchive())); connect(m_saveAction, SIGNAL(triggered()), SLOT(save())); connect(m_saveArchiveAsAction, SIGNAL(triggered()), SLOT(saveArchiveAs())); m_addLayoutAction = new QAction("New &Layout...", this); m_addAnimationAction = new QAction("New &Animation...", this); m_addTextureAction = new QAction("New &Texture...", this); m_importNewAction = new QAction("&New Item...", this); m_importAction = new QAction("&Replace This Item...", this); m_exportAction = new QAction("&Export to File...", this); m_renameAction = new QAction("Re&name Item...", this); m_removeAction = new QAction("&Remove Item...", this); m_addActionMapper = new QSignalMapper(this); m_addActionMapper->setMapping(m_addLayoutAction, (int)LYTPackageBase::Layout); m_addActionMapper->setMapping(m_addAnimationAction, (int)LYTPackageBase::Animation); m_addActionMapper->setMapping(m_addTextureAction, (int)LYTPackageBase::Texture); connect(m_addLayoutAction, SIGNAL(triggered()), m_addActionMapper, SLOT(map())); connect(m_addAnimationAction, SIGNAL(triggered()), m_addActionMapper, SLOT(map())); connect(m_addTextureAction, SIGNAL(triggered()), m_addActionMapper, SLOT(map())); connect(m_addActionMapper, SIGNAL(mapped(int)), SLOT(handleAddSomething(int))); connect(m_renameAction, SIGNAL(triggered()), SLOT(handleRenameItem())); connect(m_removeAction, SIGNAL(triggered()), SLOT(handleRemoveItem())); QMenuBar *bar = menuBar(); QMenu *m; m = bar->addMenu("&File"); m->addAction(m_newArchiveAction); m->addAction(m_openArchiveAction); m->addAction(m_saveAction); m->addAction(m_saveArchiveAsAction); m = bar->addMenu("&Edit"); m->addAction(m_addLayoutAction); m->addAction(m_addAnimationAction); m->addAction(m_addTextureAction); m->addSeparator(); QMenu *importMenu = m->addMenu("&Import from File"); importMenu->addAction(m_importNewAction); importMenu->addAction(m_importAction); m->addAction(m_exportAction); m->addSeparator(); m->addAction(m_renameAction); m->addAction(m_removeAction); }
LSMainWindow::LSMainWindow(QWidget *parent) : QMainWindow(parent) { m_package = 0; m_dirty = false; m_isSaved = false; createActions(); m_view = new QTreeView(this); m_view->setHeaderHidden(true); setCentralWidget(m_view); connect(m_view, SIGNAL(activated(QModelIndex)), SLOT(handleItemActivated(QModelIndex))); newArchive(); }
void MainWindow::setupActions() { m_newAction = actionCollection()->addAction(KStandardAction::New, QStringLiteral("ark_file_new"), this, SLOT(newArchive())); m_openAction = actionCollection()->addAction(KStandardAction::Open, QStringLiteral("ark_file_open"), this, SLOT(openArchive())); actionCollection()->addAction(KStandardAction::Quit, QStringLiteral("ark_quit"), this, SLOT(quit())); m_recentFilesAction = KStandardAction::openRecent(this, SLOT(openUrl(QUrl)), Q_NULLPTR); actionCollection()->addAction(QStringLiteral("ark_file_open_recent"), m_recentFilesAction); m_recentFilesAction->setToolBarMode(KRecentFilesAction::MenuMode); m_recentFilesAction->setToolButtonPopupMode(QToolButton::DelayedPopup); m_recentFilesAction->setIconText(i18nc("action, to open an archive", "Open")); m_recentFilesAction->setToolTip(i18n("Open an archive")); m_recentFilesAction->loadEntries(KSharedConfig::openConfig()->group("Recent Files")); KStandardAction::preferences(this, SLOT(showSettings()), actionCollection()); }