diff options
| author | Ben Boeckel <MathStuf@gmail.com> | 2008-05-26 01:32:07 +0000 |
|---|---|---|
| committer | Ben Boeckel <MathStuf@gmail.com> | 2008-05-26 01:32:07 +0000 |
| commit | ff8c440c3a2aeb0e1abc6f93e9dd7775533382ff (patch) | |
| tree | 302ac68425cecc61d429c64cf8676ad37d1d4f12 /pokemodr/PokeModrUI.cpp | |
| parent | 7e3bf1853184f96eb5be47dd78ebe21fdc170a01 (diff) | |
| download | sigen-ff8c440c3a2aeb0e1abc6f93e9dd7775533382ff.tar.gz sigen-ff8c440c3a2aeb0e1abc6f93e9dd7775533382ff.tar.xz sigen-ff8c440c3a2aeb0e1abc6f93e9dd7775533382ff.zip | |
[FIX] Context menus added
[FIX] No more copy/cut/paste for objects; only available from context menus
[FIX] Can now add objects during runtime
git-svn-id: https://pokegen.svn.sourceforge.net/svnroot/pokegen/trunk@174 6ecfd1a5-f3ed-3746-8530-beee90d26b22
Diffstat (limited to 'pokemodr/PokeModrUI.cpp')
| -rw-r--r-- | pokemodr/PokeModrUI.cpp | 38 |
1 files changed, 7 insertions, 31 deletions
diff --git a/pokemodr/PokeModrUI.cpp b/pokemodr/PokeModrUI.cpp index 7ea15841..7dff096d 100644 --- a/pokemodr/PokeModrUI.cpp +++ b/pokemodr/PokeModrUI.cpp @@ -64,26 +64,13 @@ PokeModrUI::PokeModrUI(KConfigGroup config, KConfigGroup history, QWidget* paren menuFile->addAction(KStandardAction::save(this, SLOT(savePokemod()), menuFile)); menuFile->addAction(KStandardAction::saveAs(this, SLOT(saveAsPokemod()), menuFile)); menuFile->addSeparator(); - menuFile->addAction(KStandardAction::quit(this, SLOT(quit()), menuFile)); + menuFile->addAction(KStandardAction::quit(this, SLOT(closeAllPokemods()), menuFile)); menubar->addMenu(menuFile); KMenu* menuEdit = new KMenu("&Edit", menubar); menuEdit->addAction(KStandardAction::cut(menuEdit)); menuEdit->addAction(KStandardAction::copy(menuEdit)); menuEdit->addAction(KStandardAction::paste(menuEdit)); menuEdit->addSeparator(); - KAction* menuCut = new KAction(KIcon("edit-cut"), "Cu&t Object", menuEdit); - menuCut->setShortcut(KShortcut("Alt+X")); - menuEdit->addAction(menuCut); - connect(menuCut, SIGNAL(triggered()), this, SLOT(cutObject())); - KAction* menuCopy = new KAction(KIcon("edit-copy"), "Cop&y Object", menuEdit); - menuCopy->setShortcut(KShortcut("Alt+C")); - menuEdit->addAction(menuCopy); - connect(menuCopy, SIGNAL(triggered()), this, SLOT(copyObject())); - KAction* menuPaste = new KAction(KIcon("edit-paste"), "Past&e Object", menuEdit); - menuPaste->setShortcut(KShortcut("Alt+V")); - menuEdit->addAction(menuPaste); - connect(menuPaste, SIGNAL(triggered()), this, SLOT(pasteObject())); - menuEdit->addSeparator(); menuEdit->addAction(KStandardAction::preferences(this, SLOT(preferences()), menuEdit)); menubar->addMenu(menuEdit); menubar->addMenu(customHelpMenu(false)); @@ -101,19 +88,9 @@ PokeModrUI::PokeModrUI(KConfigGroup config, KConfigGroup history, QWidget* paren toolbar->addAction(KStandardAction::copy(toolbar)); toolbar->addAction(KStandardAction::paste(toolbar)); toolbar->addSeparator(); - KAction* toolbarCut = new KAction(KIcon("edit-cut"), "Cu&t Object", toolbar); - toolbar->addAction(toolbarCut); - connect(toolbarCut, SIGNAL(triggered()), this, SLOT(cutObject())); - KAction* toolbarCopy = new KAction(KIcon("edit-copy"), "Cop&y Object", toolbar); - toolbar->addAction(toolbarCopy); - connect(toolbarCopy, SIGNAL(triggered()), this, SLOT(copyObject())); - KAction* toolbarPaste = new KAction(KIcon("edit-paste"), "Past&e Object", toolbar); - toolbar->addAction(toolbarPaste); - connect(toolbarPaste, SIGNAL(triggered()), this, SLOT(pasteObject())); - toolbar->addSeparator(); toolbar->addAction(KStandardAction::preferences(this, SLOT(preferences()), toolbar)); toolbar->addSeparator(); - toolbar->addAction(KStandardAction::quit(this, SLOT(quit()), toolbar)); + toolbar->addAction(KStandardAction::quit(this, SLOT(closeAllPokemods()), toolbar)); addToolBar(toolbar); splitter->setSizes(QList<int>() << config.readEntry("treeWidth", 100) << config.readEntry("panelWidth", 100)); connect(buttonApply, SIGNAL(clicked()), this, SLOT(update())); @@ -333,14 +310,11 @@ bool PokeModrUI::closeAllPokemods(const bool force) else ++i; } + if (!pokemods.size() || force) + close(); return !pokemods.size(); } -void PokeModrUI::cutObject() -{ - m_clipboard = treePokemod->cut(treePokemod->currentIndex()); -} - void PokeModrUI::copyObject() { m_clipboard = treePokemod->copy(treePokemod->currentIndex()); @@ -364,6 +338,8 @@ void PokeModrUI::on_splitter_splitterMoved() void PokeModrUI::on_treePokemod_clicked(const QModelIndex& index) { + if (!(treePokemod->model()->flags(index) & Qt::ItemIsSelectable)) + return; ObjectUI* widget = treePokemod->editorWidget(index); if (widget) { @@ -396,5 +372,5 @@ void PokeModrUI::on_treePokemod_customContextMenuRequested(const QPoint& positio { KMenu* menu = treePokemod->contextMenu(treePokemod->indexAt(position)); if (menu) - menu->popup(mapToGlobal(position)); + menu->popup(treePokemod->mapToGlobal(position)); } |
