summaryrefslogtreecommitdiff
path: root/bibletime/frontend/displaywindow/cbuttons.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'bibletime/frontend/displaywindow/cbuttons.cpp')
-rw-r--r--bibletime/frontend/displaywindow/cbuttons.cpp218
1 files changed, 0 insertions, 218 deletions
diff --git a/bibletime/frontend/displaywindow/cbuttons.cpp b/bibletime/frontend/displaywindow/cbuttons.cpp
deleted file mode 100644
index ddcfadf..0000000
--- a/bibletime/frontend/displaywindow/cbuttons.cpp
+++ /dev/null
@@ -1,218 +0,0 @@
-/*********
-*
-* This file is part of BibleTime's source code, http://www.bibletime.info/.
-*
-* Copyright 1999-2006 by the BibleTime developers.
-* The BibleTime source code is licensed under the GNU General Public License version 2.0.
-*
-**********/
-
-
-
-//HibleTime includes
-#include "cbuttons.h"
-
-#include "util/cresmgr.h"
-
-#include "util/cpointers.h"
-
-//Qt includes
-#include <qstring.h>
-#include <qtooltip.h>
-
-//KDE includes
-#include <kpopupmenu.h>
-#include <klocale.h>
-
-
-// CTransliterationButton::CTransliterationButton(CSwordBackend::FilterOptions* filterOptions, QWidget *parent, const char *name )
-// : KToolBarButton(CResMgr::displaywindows::transliteration::icon, 0,parent,name) {
-// m_filterOptions = filterOptions;
-// m_filterOptions->transliteration = 0;
-//
-// m_popup = new KPopupMenu(this);
-// setPopup(m_popup);
-// setPopupDelay(0001);
-//
-// connect(m_popup, SIGNAL(activated(int)), this, SLOT(optionSelected(int)));
-// populateMenu();
-// }
-//
-// CTransliterationButton::~CTransliterationButton(){
-//
-// }
-//
-// /** Resets the buttons with the list of used modules. */
-// void CTransliterationButton::reset( ListCSwordModuleInfo& /*modules*/ ){
-// m_popup->clear();
-// // popuplateMenu();
-// }
-//
-// /** Setup the menu entries. */
-// void CTransliterationButton::populateMenu(){
-// m_popup->clear();
-// m_popup->insertTitle(i18n("Transliteration"));
-// m_popup->setCheckable(true);
-//
-// if (!CPointers::backend()->useICU())
-// return;
-//
-// Q_ASSERT(CPointers::backend()->transliterator());
-// if (!CPointers::backend()->transliterator())
-// return;
-//
-// sword::StringList options = CPointers::backend()->transliterator()->getOptionValues();
-// sword::StringList::iterator it;
-//
-// for (it = options.begin(); it != options.end(); ++it) {
-// int id = m_popup->insertItem(QString::fromLatin1((*it).c_str()));
-// if (m_filterOptions->transliteration == m_popup->indexOf(id)-1 ) { //workaround
-// m_popup->setItemChecked(id, true);
-// }
-// }
-// }
-//
-// /** No descriptions */
-// void CTransliterationButton::optionSelected(int ID){
-// for (unsigned int i = 0; i < m_popup->count(); i++)
-// m_popup->setItemChecked(m_popup->idAt(i),false);
-// m_popup->setItemChecked(ID, true);
-//
-// m_filterOptions->transliteration = m_popup->indexOf( ID )-1; //workaround
-// emit sigChanged();
-// }
-
-/************************************************
- *********** CDisplaySettingsButton *************
- ************************************************/
-
-CDisplaySettingsButton::CDisplaySettingsButton(CSwordBackend::DisplayOptions *displaySettings, CSwordBackend::FilterOptions *moduleSettings, const ListCSwordModuleInfo& useModules,QWidget *parent, const char *name )
-: KToolBarButton(CResMgr::displaywindows::displaySettings::icon, 0, parent, name) {
- // qWarning("CDisplaySettingsButton::CDisplaySettingsButton");
- m_displaySettings = displaySettings;
- m_moduleSettings = moduleSettings;
- m_modules = useModules;
-
- m_popup = new KPopupMenu(this);
- setPopup(m_popup);
- setPopupDelay(0001); //Fix, O only opens menu on mouse release or move
-
- connect(m_popup, SIGNAL(activated(int)), this, SLOT(optionToggled(int)));
- populateMenu();
-}
-
-void CDisplaySettingsButton::reset(const ListCSwordModuleInfo& useModules) {
- m_modules = useModules;
- populateMenu();
- //disable the settings button if no options are available
- if (!populateMenu()) {
- setEnabled(false);
- QToolTip::add
- (this, i18n("Display settings: No options available"));
- }
- else {
- setEnabled(true);
- QToolTip::add
- (this, i18n("Display settings"));
- }
-}
-
-
-void CDisplaySettingsButton::optionToggled(int ID) {
- m_popup->setItemChecked( ID, !(m_popup->isItemChecked(ID)));
- if (!m_popup->text(ID).isEmpty())
- *(m_dict[m_popup->text(ID).remove('&')]) = m_popup->isItemChecked(ID);
- emit sigChanged();
-}
-
-/** No descriptions */
-int CDisplaySettingsButton::populateMenu() {
- int ret = 0;
-
- m_popup->clear();
- m_popup->insertTitle(i18n("Display options"));
- m_popup->setCheckable(true);
-
- ret += addMenuEntry(i18n("Use linebreaks after each verse"), &m_displaySettings->lineBreaks, (m_modules.first()->type() == CSwordModuleInfo::Bible));
-
- //only show the verse numbers option for bible modules
- ret += addMenuEntry(i18n("Show versenumbers"), &m_displaySettings->verseNumbers, (m_modules.first()->type() == CSwordModuleInfo::Bible));
-
- ret += addMenuEntry(i18n("Show headings"), &m_moduleSettings->headings,
- isOptionAvailable(CSwordModuleInfo::headings));
- /* ret += addMenuEntry(i18n("Show footnotes"), &m_moduleSettings->footnotes,
- isOptionAvailable(CSwordBackend::footnotes ));*/
- ret += addMenuEntry(i18n("Highlight words of Jesus"), &m_moduleSettings->redLetterWords,
- isOptionAvailable(CSwordModuleInfo::redLetterWords ));
- // ret += addMenuEntry(i18n("Show Strong's Numbers"), &m_moduleSettings->strongNumbers,
- // isOptionAvailable(CSwordBackend::strongNumbers ));
-
- /* ret += addMenuEntry(i18n("Show morphologic tags"),&m_moduleSettings->morphTags,
- isOptionAvailable(CSwordBackend::morphTags ));
- ret += addMenuEntry(i18n("Show lemmas"),&m_moduleSettings->lemmas,
- isOptionAvailable(CSwordBackend::lemmas ));*/
- ret += addMenuEntry(i18n("Show Hebrew vowel points"), &m_moduleSettings->hebrewPoints,
- isOptionAvailable(CSwordModuleInfo::hebrewPoints ));
- ret += addMenuEntry(i18n("Show Hebrew cantillation marks"), &m_moduleSettings->hebrewCantillation,
- isOptionAvailable(CSwordModuleInfo::hebrewCantillation ));
- ret += addMenuEntry(i18n("Show Greek accents"), &m_moduleSettings->greekAccents,
- isOptionAvailable(CSwordModuleInfo::greekAccents ));
-
- ret += addMenuEntry(i18n("Use alternative textual variant"), &m_moduleSettings->textualVariants,
- isOptionAvailable(CSwordModuleInfo::textualVariants ));
- ret += addMenuEntry(i18n("Show scripture cross-references"), &m_moduleSettings->scriptureReferences,
- isOptionAvailable(CSwordModuleInfo::scriptureReferences ));
- ret += addMenuEntry(i18n("Show morph segmentation"), &m_moduleSettings->morphSegmentation,
- isOptionAvailable(CSwordModuleInfo::morphSegmentation ));
-
- return ret;
-}
-
-/** No descriptions */
-int CDisplaySettingsButton::addMenuEntry( const QString name, const int* option, const bool available) {
- int ret = 0;
-
- if (available) {
- m_dict.insert( name, option );
- m_popup->setItemChecked(m_popup->insertItem( name ), *option );
- ret = 1;
- }
-
- return ret;
-}
-
-bool CDisplaySettingsButton::isOptionAvailable( const CSwordModuleInfo::FilterTypes option ) {
- bool ret = false;
- // for (m_modules.first(); m_modules.current() && !ret; m_modules.next()) {
- ListCSwordModuleInfo::iterator end_it = m_modules.end();
- for (ListCSwordModuleInfo::iterator it(m_modules.begin()); it != end_it; ++it) {
- ret = ret || (*it)->has(option);
- }
-
- return ret;
-}
-
-/** Returns the number of usable menu items in the setttings menu. */
-const int CDisplaySettingsButton::menuItemCount() {
- return m_popup->count();
-}
-
-/** Sets the item at position pos to the satet given as 2nd paramter. */
-void CDisplaySettingsButton::setItemStatus( const int index, const bool checked ) {
- const int ID = m_popup->idAt(index);
- m_popup->setItemChecked(ID, checked);
- const QString text = m_popup->text(ID).remove('&');
- if (m_dict[text]) {
- *(m_dict[text]) = checked;
- }
-}
-
-/** Returns the status of the item at position "index" */
-const bool CDisplaySettingsButton::itemStatus( const int index ) {
- return m_popup->isItemChecked( m_popup->idAt(index) );
-}
-
-/** Sets the status to changed. The signal changed will be emitted. */
-void CDisplaySettingsButton::setChanged() {
- emit sigChanged();
-}