From e16866e072f94410321d70daedbcb855ea878cac Mon Sep 17 00:00:00 2001 From: Timothy Pearson Date: Sun, 6 Nov 2011 15:56:40 -0600 Subject: Actually move the kde files that were renamed in the last commit --- kdecore/kshortcutmenu.cpp | 161 ---------------------------------------------- 1 file changed, 161 deletions(-) delete mode 100644 kdecore/kshortcutmenu.cpp (limited to 'kdecore/kshortcutmenu.cpp') diff --git a/kdecore/kshortcutmenu.cpp b/kdecore/kshortcutmenu.cpp deleted file mode 100644 index 3df389f07..000000000 --- a/kdecore/kshortcutmenu.cpp +++ /dev/null @@ -1,161 +0,0 @@ -/* - Copyright (c) 2002 Ellis Whitehead - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public License - along with this library; see the file COPYING.LIB. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. -*/ - -#include -#include -#include - -#include "kaccelaction.h" -#include -#include -#include "kshortcutmenu.h" -//#include - -KShortcutMenu::KShortcutMenu( TQWidget* pParent, KAccelActions* pActions, KKeySequence seq ) -: TQPopupMenu( pParent ), - m_pActions( pActions ), - m_seq( seq ) -{ - kdDebug() << seq.toStringInternal() << endl; - - TQFont fontTitle = KGlobalSettings::menuFont(); - fontTitle.setBold( true ); - - pTitle = new TQLabel( "", (TQWidget*)0 ); - pTitle->setFont( fontTitle ); - pTitle->setFrameShape( TQFrame::Panel ); - - insertItem( pTitle ); -} - -bool KShortcutMenu::insertAction( uint iAction, KKeySequence seq ) -{ - KAccelAction* pAction = m_pActions->actionPtr( iAction ); - - if( pAction ) { - insertItem( "", iAction ); - m_seqs[indexOf(iAction)] = seq; - return true; - } else - return false; -} - - -void KShortcutMenu::updateShortcuts() -{ - pTitle->setText( m_seq.toString() + ",..." ); - - for( uint iItem = 1; iItem < count(); iItem++ ) { - int iAction = idAt( iItem ); - if( iAction >= 0 ) { - KAccelAction* pAction = m_pActions->actionPtr( iAction ); - if( pAction ) { - KKeySequence seq = m_seqs[iItem]; - TQString sSeq = seq.key(m_seq.count()).toString(); - for( uint iKey = m_seq.count() + 1; iKey < seq.count(); iKey++ ) - sSeq += TQString(",") + seq.key(iKey).toString(); - - kdDebug(125) << "seq = " << seq.toStringInternal() << " sSeq = " << sSeq << endl; - changeItem( iAction, pAction->label() + "\t" + sSeq ); - } - } - } -} - -void KShortcutMenu::keyPressEvent( TQKeyEvent* pEvent ) -{ - kdDebug() << "keypress; " << pEvent->key() << endl; - KKey key( pEvent ); - - switch( pEvent->key() ) { - case TQ_Key_Shift: - case TQ_Key_Control: - case TQ_Key_Alt: - case TQ_Key_Meta: - case TQ_Key_Super_L: - case TQ_Key_Super_R: - case TQ_Key_Hyper_L: - case TQ_Key_Hyper_R: - break; - default: - int iItem = searchForKey( key ); - // If key not found, look for unmodified version. - if( iItem == -1 ) { - key = pEvent->key(); - iItem = searchForKey( key ); - } - - if( iItem == -1 ) { - // Let Up and Down keys navigate menu, - // And permit Enter, Return to select the item. - if( pEvent->key() == Qt::Key_Up || pEvent->key() == Qt::Key_Down || - pEvent->key() == Qt::Key_Enter || pEvent->key() == Qt::Key_Return ) - TQPopupMenu::keyPressEvent( pEvent ); - else - close(); - } - else if( iItem == 0 ) - keepItemsMatching( key ); - else - activateItemAt( iItem ); - } -} - -int KShortcutMenu::searchForKey( KKey key ) -{ - int iItemFound = -1; // -1 indicates no match - uint iKey = m_seq.count(); - - for( uint iItem = 1; iItem < count(); iItem++ ) { - if( m_seqs.contains( iItem ) ) { - KKey keyItem = m_seqs[iItem].key( iKey ); - //kdDebug(125) << "iItem = " << iItem << " key = " << key.toStringInternal() << " keyItem = " << keyItem.toStringInternal() << endl; - if( key == keyItem ) { - if( iItemFound == -1 ) - iItemFound = iItem; - else - return 0; // 0 indicates duplicate matches - } - } - } - - return iItemFound; -} - -void KShortcutMenu::keepItemsMatching( KKey key ) -{ - kdDebug(125) << "MyAccel::keepItemsMatching( " << key.toStringInternal() << " )" << endl; - - uint iKey = m_seq.count(); - m_seq.setKey( iKey, key ); - - for( uint iItem = 1; iItem < count(); iItem++ ) { - if( m_seqs.contains( iItem ) ) { - KKey keyItem = m_seqs[iItem].key( iKey ); - if( key != keyItem ) { - m_seqs.remove( iItem ); - removeItemAt( iItem-- ); - } - } - } - - updateShortcuts(); -} - -#include "kshortcutmenu.moc" -- cgit v1.2.1