From 42773f51a4e7145e0c4f53fc2fd5ea3f7c9322f9 Mon Sep 17 00:00:00 2001 From: Florian Geyer Date: Thu, 29 Dec 2011 20:03:20 +0100 Subject: Add function to get current database widget. --- src/gui/DatabaseManager.cpp | 33 ++++++++++++++++++--------------- src/gui/DatabaseManager.h | 1 + 2 files changed, 19 insertions(+), 15 deletions(-) (limited to 'src') diff --git a/src/gui/DatabaseManager.cpp b/src/gui/DatabaseManager.cpp index f94843682..29063447a 100644 --- a/src/gui/DatabaseManager.cpp +++ b/src/gui/DatabaseManager.cpp @@ -123,11 +123,11 @@ void DatabaseManager::openDatabaseCleanup() void DatabaseManager::emitEntrySelectionChanged() { - Database* db = indexDatabase(m_tabWidget->currentIndex()); + DatabaseWidget* dbWidget = currentDatabaseWidget(); bool isSingleEntrySelected = false; - if (db) { - isSingleEntrySelected = m_dbList[db].dbWidget->entryView()->isSingleEntrySelected(); + if (dbWidget) { + isSingleEntrySelected = dbWidget->entryView()->isSingleEntrySelected(); } Q_EMIT entrySelectionChanged(isSingleEntrySelected); @@ -225,30 +225,22 @@ void DatabaseManager::saveDatabaseAs(int index) void DatabaseManager::createEntry() { - Database* db = indexDatabase(m_tabWidget->currentIndex()); - DatabaseWidget* dbWidget = m_dbList[db].dbWidget; - dbWidget->createEntry(); + currentDatabaseWidget()->createEntry(); } void DatabaseManager::editEntry() { - Database* db = indexDatabase(m_tabWidget->currentIndex()); - DatabaseWidget* dbWidget = m_dbList[db].dbWidget; - dbWidget->switchToEntryEdit(); + currentDatabaseWidget()->switchToEntryEdit(); } void DatabaseManager::createGroup() { - Database* db = indexDatabase(m_tabWidget->currentIndex()); - DatabaseWidget* dbWidget = m_dbList[db].dbWidget; - dbWidget->createGroup(); + currentDatabaseWidget()->createGroup(); } void DatabaseManager::editGroup() { - Database* db = indexDatabase(m_tabWidget->currentIndex()); - DatabaseWidget* dbWidget = m_dbList[db].dbWidget; - dbWidget->switchToGroupEdit(); + currentDatabaseWidget()->switchToGroupEdit(); } void DatabaseManager::updateTabName(Database* db) @@ -317,3 +309,14 @@ void DatabaseManager::insertDatabase(Database* db, const DatabaseManagerStruct& connect(db->metadata(), SIGNAL(nameTextChanged(Database*)), SLOT(updateTabName(Database*))); connect(dbStruct.dbWidget->entryView(), SIGNAL(entrySelectionChanged()), SLOT(emitEntrySelectionChanged())); } + +DatabaseWidget* DatabaseManager::currentDatabaseWidget() +{ + Database* db = indexDatabase(m_tabWidget->currentIndex()); + if (db) { + return m_dbList[db].dbWidget; + } + else { + return 0; + } +} diff --git a/src/gui/DatabaseManager.h b/src/gui/DatabaseManager.h index 0627489bc..90ceb1baa 100644 --- a/src/gui/DatabaseManager.h +++ b/src/gui/DatabaseManager.h @@ -50,6 +50,7 @@ public: void saveDatabase(Database* db); void saveDatabaseAs(Database* db); void closeDatabase(Database* db); + DatabaseWidget* currentDatabaseWidget(); public Q_SLOTS: void newDatabase(); -- cgit v1.2.3