summaryrefslogtreecommitdiffabout
path: root/microkde/kdeui/ktoolbarhandler.cpp
Side-by-side diff
Diffstat (limited to 'microkde/kdeui/ktoolbarhandler.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--microkde/kdeui/ktoolbarhandler.cpp26
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
*/