diff options
Diffstat (limited to 'kcontrol/kicker/menutab_impl.cpp')
-rw-r--r-- | kcontrol/kicker/menutab_impl.cpp | 59 |
1 files changed, 43 insertions, 16 deletions
diff --git a/kcontrol/kicker/menutab_impl.cpp b/kcontrol/kicker/menutab_impl.cpp index fe20f2302..44643d366 100644 --- a/kcontrol/kicker/menutab_impl.cpp +++ b/kcontrol/kicker/menutab_impl.cpp @@ -29,14 +29,16 @@ #include <dcopref.h> #include <tdeapplication.h> #include <kdebug.h> -#include <kdesktopfile.h> +#include <tdedesktopfile.h> #include <kiconloader.h> #include <tdelistview.h> #include <tdelocale.h> #include <tdemessagebox.h> #include <knuminput.h> -#include <kstandarddirs.h> +#include <tdestandarddirs.h> #include <tdefontrequester.h> +#include <kkeybutton.h> +#include <tdemessagebox.h> #include <kicondialog.h> #include <kiconloader.h> @@ -77,12 +79,12 @@ MenuTab::MenuTab( TQWidget *parent, const char* name ) m_kmenu_button_changed(false) { // connections - connect(m_editKMenuButton, TQT_SIGNAL(clicked()), TQT_SLOT(launchMenuEditor())); - connect(btnCustomKMenuIcon, TQT_SIGNAL(clicked()), TQT_SLOT(launchIconEditor())); - connect(kcfg_KMenuText, TQT_SIGNAL(textChanged(const TQString&)), TQT_SLOT(kmenuChanged())); - connect(kcfg_ShowKMenuText, TQT_SIGNAL(toggled(bool)), TQT_SLOT(kmenuChanged())); - //connect(kcfg_ButtonFont, TQT_SIGNAL(fontSelected(const TQFont &)), TQT_SLOT(kmenuChanged())); - connect(maxrecentdocs, TQT_SIGNAL(valueChanged(int)), this, TQT_SLOT(kmenuChanged())); + connect(m_editKMenuButton, TQ_SIGNAL(clicked()), TQ_SLOT(launchMenuEditor())); + connect(btnCustomKMenuIcon, TQ_SIGNAL(clicked()), TQ_SLOT(launchIconEditor())); + connect(kcfg_KMenuText, TQ_SIGNAL(textChanged(const TQString&)), TQ_SLOT(kmenuChanged())); + connect(kcfg_ShowKMenuText, TQ_SIGNAL(toggled(bool)), TQ_SLOT(kmenuChanged())); + //connect(kcfg_ButtonFont, TQ_SIGNAL(fontSelected(const TQFont &)), TQ_SLOT(kmenuChanged())); + connect(maxrecentdocs, TQ_SIGNAL(valueChanged(int)), this, TQ_SLOT(kmenuChanged())); // FIXME // When top pixmap support is ready for end-user visibility, replace @@ -127,7 +129,7 @@ void MenuTab::load( bool useDefaults ) TQString::null, SmallIcon("bookmark"), c->readBoolEntry("UseBookmarks", false)); - connect(m_bookmarkMenu, TQT_SIGNAL(toggled(bool)), TQT_SIGNAL(changed())); + connect(m_bookmarkMenu, TQ_SIGNAL(toggled(bool)), TQ_SIGNAL(changed())); // show the quick menus menu? m_quickBrowserMenu = new kSubMenuItem(m_subMenus, @@ -135,7 +137,7 @@ void MenuTab::load( bool useDefaults ) TQString::null, SmallIcon("kdisknav"), c->readBoolEntry("UseBrowser", false)); - connect(m_quickBrowserMenu, TQT_SIGNAL(toggled(bool)), TQT_SIGNAL(changed())); + connect(m_quickBrowserMenu, TQ_SIGNAL(toggled(bool)), TQ_SIGNAL(changed())); TQStringList ext_default; ext_default << "prefmenu.desktop" << "systemmenu.desktop"; @@ -148,13 +150,13 @@ void MenuTab::load( bool useDefaults ) TQStringList av = d.entryList(); for (TQStringList::ConstIterator it=av.begin(); it!=av.end(); ++it) { - KDesktopFile df(d.absFilePath(*it), true); + TDEDesktopFile df(d.absFilePath(*it), true); menuItem = new kSubMenuItem(m_subMenus, df.readName(), *it, SmallIcon(df.readIcon()), tqFind(ext.begin(), ext.end(), *it) != ext.end()); - connect(menuItem, TQT_SIGNAL(toggled(bool)), TQT_SIGNAL(changed())); + connect(menuItem, TQ_SIGNAL(toggled(bool)), TQ_SIGNAL(changed())); } } @@ -163,12 +165,17 @@ void MenuTab::load( bool useDefaults ) m_openOnHover->setChecked( c->readBoolEntry("OpenOnHover", true) ); menuStyleChanged(); - connect(m_comboMenuStyle, TQT_SIGNAL(activated(int)), TQT_SIGNAL(changed())); - connect(m_comboMenuStyle, TQT_SIGNAL(activated(int)), TQT_SLOT(menuStyleChanged())); - connect(m_openOnHover, TQT_SIGNAL(clicked()), TQT_SIGNAL(changed())); + connect(m_comboMenuStyle, TQ_SIGNAL(activated(int)), TQ_SIGNAL(changed())); + connect(m_comboMenuStyle, TQ_SIGNAL(activated(int)), TQ_SLOT(menuStyleChanged())); + connect(m_openOnHover, TQ_SIGNAL(clicked()), TQ_SIGNAL(changed())); m_showFrequent->setChecked(true); - + + c->setGroup("KMenu"); + m_searchShortcut->setShortcut(TDEShortcut(c->readEntry("SearchShortcut", "/")), false); + connect(m_searchShortcut, TQ_SIGNAL(capturedShortcut(const TDEShortcut&)), TQ_SIGNAL(changed())); + connect(m_searchShortcut, TQ_SIGNAL(capturedShortcut(const TDEShortcut&)), TQ_SLOT(setSearchShortcut(const TDEShortcut&))); + if ( useDefaults ) emit changed(); } @@ -288,6 +295,7 @@ void MenuTab::save() // Save KMenu settings c->setGroup("KMenu"); c->writeEntry("CustomIcon", m_kmenu_icon); + c->writeEntry("SearchShortcut", (m_searchShortcut->shortcut()).toString()); c->sync(); // Save recent documents @@ -349,3 +357,22 @@ void MenuTab::kmenuChanged() //m_kmenu_button_changed = true; emit changed(); } + +void MenuTab::setSearchShortcut(const TDEShortcut &cut) +{ + if( cut.contains( KKeySequence(KKey(TQt::Key_Escape)) ) ) + { + int anotherTry = KMessageBox::warningYesNo( + this, + i18n("Cannot set Escape as menu search shortcut.\nWould you like to set another shortcut?"), + i18n("Invalid shortcut") + ); + + if( anotherTry == KMessageBox::Yes ) + m_searchShortcut->captureShortcut(); + + return; + } + + m_searchShortcut->setShortcut(cut, false); +} |