Diffstat (limited to 'microkde/kdeui/ktoolbarhandler.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | microkde/kdeui/ktoolbarhandler.cpp | 26 |
1 files changed, 14 insertions, 12 deletions
diff --git a/microkde/kdeui/ktoolbarhandler.cpp b/microkde/kdeui/ktoolbarhandler.cpp index 7b97233..4d3ace7 100644 --- a/microkde/kdeui/ktoolbarhandler.cpp +++ b/microkde/kdeui/ktoolbarhandler.cpp @@ -1,253 +1,255 @@ /* This file is part of the KDE libraries Copyright (C) 2002 Simon Hausmann <hausmann@kde.org> This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License version 2 as published by the Free Software Foundation. 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "ktoolbarhandler.h" -#include <qpopupmenu.h> +#include <q3popupmenu.h> +//Added by qt3to4: +#include <Q3PtrList> #include <kapplication.h> #include <ktoolbar.h> #include <kmainwindow.h> #include <klocale.h> #include <kaction.h> #include <assert.h> namespace { const char *actionListName = "show_menu_and_toolbar_actionlist"; const char *guiDescription = "" "<!DOCTYPE kpartgui><kpartgui name=\"StandardToolBarMenuHandler\">" "<MenuBar>" " <Menu name=\"settings\">" " <ActionList name=\"%1\" />" " </Menu>" "</MenuBar>" "</kpartgui>"; const char *resourceFileName = "barhandler.rc"; class BarActionBuilder { public: - BarActionBuilder( KActionCollection *actionCollection, KMainWindow *mainWindow, QPtrList<KToolBar> &oldToolBarList ) + BarActionBuilder( KActionCollection *actionCollection, KMainWindow *mainWindow, Q3PtrList<KToolBar> &oldToolBarList ) : m_actionCollection( actionCollection ), m_mainWindow( mainWindow ), m_needsRebuild( false ) { /*US QPtrList<QDockWindow> dockWindows = m_mainWindow->dockWindows(); QPtrListIterator<QDockWindow> dockWindowIt( dockWindows ); for ( ; dockWindowIt.current(); ++dockWindowIt ) { //US KToolBar *toolBar = dynamic_cast<KToolBar *>( dockWindowIt.current() ); KToolBar *toolBar = (KToolBar *)( dockWindowIt.current() ); if ( !toolBar ) continue; if ( oldToolBarList.findRef( toolBar ) == -1 ) m_needsRebuild = true; m_toolBars.append( toolBar ); } */ if ( !m_needsRebuild ) m_needsRebuild = ( oldToolBarList.count() != m_toolBars.count() ); } bool needsRebuild() const { return m_needsRebuild; } - QPtrList<KAction> create() + Q3PtrList<KAction> create() { if ( !m_needsRebuild ) - return QPtrList<KAction>(); + return Q3PtrList<KAction>(); - QPtrListIterator<KToolBar> toolBarIt( m_toolBars ); + Q3PtrListIterator<KToolBar> toolBarIt( m_toolBars ); for ( ; toolBarIt.current(); ++toolBarIt ) handleToolBar( toolBarIt.current() ); - QPtrList<KAction> actions; + Q3PtrList<KAction> actions; if ( m_toolBarActions.count() == 0 ) return actions; if ( m_toolBarActions.count() == 1 ) { m_toolBarActions.getFirst()->setText( i18n( "Show Toolbar" ) ); return m_toolBarActions; } KActionMenu *menuAction = new KActionMenu( i18n( "Toolbars" ), m_actionCollection, "toolbars_submenu_action" ); - QPtrListIterator<KAction> actionIt( m_toolBarActions ); + Q3PtrListIterator<KAction> actionIt( m_toolBarActions ); for ( ; actionIt.current(); ++actionIt ) menuAction->insert( actionIt.current() ); actions.append( menuAction ); return actions; } - const QPtrList<KToolBar> &toolBars() const { return m_toolBars; } + const Q3PtrList<KToolBar> &toolBars() const { return m_toolBars; } private: void handleToolBar( KToolBar *toolBar ) { KAction *action = new KToggleToolBarAction( toolBar, i18n( "Show %1" ).arg( toolBar->label() ), m_actionCollection, toolBar->name() ); m_toolBarActions.append( action ); } KActionCollection *m_actionCollection; KMainWindow *m_mainWindow; - QPtrList<KToolBar> m_toolBars; - QPtrList<KAction> m_toolBarActions; + Q3PtrList<KToolBar> m_toolBars; + Q3PtrList<KAction> m_toolBarActions; bool m_needsRebuild : 1; }; } using namespace KDEPrivate; ToolBarHandler::ToolBarHandler( KMainWindow *mainWindow, const char *name ) : QObject( mainWindow, name ), KXMLGUIClient( mainWindow ) { init( mainWindow ); } ToolBarHandler::ToolBarHandler( KMainWindow *mainWindow, QObject *parent, const char *name ) : QObject( parent, name ), KXMLGUIClient( mainWindow ) { init( mainWindow ); } ToolBarHandler::~ToolBarHandler() { m_actions.setAutoDelete( true ); m_actions.clear(); } KAction *ToolBarHandler::toolBarMenuAction() { assert( m_actions.count() == 1 ); return m_actions.getFirst(); } void ToolBarHandler::setupActions() { //US if ( !factory() || !m_mainWindow ) if ( !m_mainWindow ) return; BarActionBuilder builder( actionCollection(), m_mainWindow, m_toolBars ); if ( !builder.needsRebuild() ) return; unplugActionList( actionListName ); m_actions.setAutoDelete( true ); m_actions.clear(); m_actions.setAutoDelete( false ); m_actions = builder.create(); /* for ( QPtrListIterator<KToolBar> toolBarIt( m_toolBars ); toolBarIt.current(); ++toolBarIt ) toolBarIt.current()->disconnect( this ); */ m_toolBars = builder.toolBars(); /* for ( QPtrListIterator<KToolBar> toolBarIt( m_toolBars ); toolBarIt.current(); ++toolBarIt ) connect( toolBarIt.current(), SIGNAL( destroyed() ), this, SLOT( setupActions() ) ); */ //US if (kapp && kapp->authorizeKAction("options_show_toolbar")) plugActionList( actionListName, m_actions ); connectToActionContainers(); } /*US void ToolBarHandler::clientAdded( KXMLGUIClient *client ) { if ( client == this ) setupActions(); } */ void ToolBarHandler::init( KMainWindow *mainWindow ) { d = 0; m_mainWindow = mainWindow; /*US connect( m_mainWindow->guiFactory(), SIGNAL( clientAdded( KXMLGUIClient * ) ), this, SLOT( clientAdded( KXMLGUIClient * ) ) ); */ /* re-use an existing resource file if it exists. can happen if the user launches the * toolbar editor */ /* setXMLFile( resourceFileName ); */ /*US if ( domDocument().documentElement().isNull() ) { QString completeDescription = QString::fromLatin1( guiDescription ) .arg( actionListName ); setXML( completeDescription, false*/ /*merge*/ /*); } */ } void ToolBarHandler::connectToActionContainers() { - QPtrListIterator<KAction> actionIt( m_actions ); + Q3PtrListIterator<KAction> actionIt( m_actions ); for ( ; actionIt.current(); ++actionIt ) connectToActionContainer( actionIt.current() ); } void ToolBarHandler::connectToActionContainer( KAction *action ) { uint containerCount = action->containerCount(); for ( uint i = 0; i < containerCount; ++i ) connectToActionContainer( action->container( i ) ); } void ToolBarHandler::connectToActionContainer( QWidget *container ) { //US QPopupMenu *popupMenu = dynamic_cast<QPopupMenu *>( container ); - QPopupMenu *popupMenu = (QPopupMenu *)( container ); + Q3PopupMenu *popupMenu = (Q3PopupMenu *)( container ); if ( !popupMenu ) return; connect( popupMenu, SIGNAL( aboutToShow() ), this, SLOT( setupActions() ) ); } //US #include "ktoolbarhandler.moc" /* vim: et sw=4 ts=4 */ |