summaryrefslogtreecommitdiffabout
path: root/microkde
authorzautrix <zautrix>2004-12-05 12:12:10 (UTC)
committer zautrix <zautrix>2004-12-05 12:12:10 (UTC)
commit5ab47964d8b52897bb0662ef4a5fcf9604acaf6c (patch) (unidiff)
tree0f80433206ddd6b4ef901cb346d0f06caf76b20f /microkde
parent196365e533c6fd1a8f47aa9579763ef5afcebcda (diff)
downloadkdepimpi-5ab47964d8b52897bb0662ef4a5fcf9604acaf6c.zip
kdepimpi-5ab47964d8b52897bb0662ef4a5fcf9604acaf6c.tar.gz
kdepimpi-5ab47964d8b52897bb0662ef4a5fcf9604acaf6c.tar.bz2
fixed kapi toolbar repaint problem
Diffstat (limited to 'microkde') (more/less context) (ignore whitespace changes)
-rw-r--r--microkde/kdeui/ktoolbar.cpp6
-rw-r--r--microkde/kdeui/ktoolbar.h3
2 files changed, 8 insertions, 1 deletions
diff --git a/microkde/kdeui/ktoolbar.cpp b/microkde/kdeui/ktoolbar.cpp
index 79b0f9d..e9226c0 100644
--- a/microkde/kdeui/ktoolbar.cpp
+++ b/microkde/kdeui/ktoolbar.cpp
@@ -1389,48 +1389,54 @@ void KToolBar::childEvent( QChildEvent *e )
1389 layoutTimer->start( 50, TRUE ); 1389 layoutTimer->start( 50, TRUE );
1390 } 1390 }
1391 } 1391 }
1392 QToolBar::childEvent( e ); 1392 QToolBar::childEvent( e );
1393} 1393}
1394 1394
1395void KToolBar::insertWidgetInternal( QWidget *w, int &index, int id ) 1395void KToolBar::insertWidgetInternal( QWidget *w, int &index, int id )
1396{ 1396{
1397 // we can't have it in widgets, or something is really wrong 1397 // we can't have it in widgets, or something is really wrong
1398 //widgets.removeRef( w ); 1398 //widgets.removeRef( w );
1399 1399
1400 connect( w, SIGNAL( destroyed() ), 1400 connect( w, SIGNAL( destroyed() ),
1401 this, SLOT( widgetDestroyed() ) ); 1401 this, SLOT( widgetDestroyed() ) );
1402 if ( index == -1 || index > (int)widgets.count() ) { 1402 if ( index == -1 || index > (int)widgets.count() ) {
1403 widgets.append( w ); 1403 widgets.append( w );
1404 index = (int)widgets.count(); 1404 index = (int)widgets.count();
1405 } 1405 }
1406 else 1406 else
1407 widgets.insert( index, w ); 1407 widgets.insert( index, w );
1408 if ( id == -1 ) 1408 if ( id == -1 )
1409 id = id2widget.count(); 1409 id = id2widget.count();
1410 id2widget.insert( id, w ); 1410 id2widget.insert( id, w );
1411 widget2id.insert( w, id ); 1411 widget2id.insert( w, id );
1412} 1412}
1413void KToolBar::repaintMe()
1414{
1415 setUpdatesEnabled( true );
1416 QToolBar::repaint( true );
1417 qDebug(" KToolBar::repaintMe() ");
1418}
1413 1419
1414void KToolBar::showEvent( QShowEvent *e ) 1420void KToolBar::showEvent( QShowEvent *e )
1415{ 1421{
1416 QToolBar::showEvent( e ); 1422 QToolBar::showEvent( e );
1417 rebuildLayout(); 1423 rebuildLayout();
1418} 1424}
1419 1425
1420void KToolBar::setStretchableWidget( QWidget *w ) 1426void KToolBar::setStretchableWidget( QWidget *w )
1421{ 1427{
1422 QToolBar::setStretchableWidget( w ); 1428 QToolBar::setStretchableWidget( w );
1423 stretchableWidget = w; 1429 stretchableWidget = w;
1424} 1430}
1425 1431
1426QSizePolicy KToolBar::sizePolicy() const 1432QSizePolicy KToolBar::sizePolicy() const
1427{ 1433{
1428 if ( orientation() == Horizontal ) 1434 if ( orientation() == Horizontal )
1429 return QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ); 1435 return QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
1430 else 1436 else
1431 return QSizePolicy( QSizePolicy::Fixed, QSizePolicy::Expanding ); 1437 return QSizePolicy( QSizePolicy::Fixed, QSizePolicy::Expanding );
1432} 1438}
1433 1439
1434QSize KToolBar::sizeHint() const 1440QSize KToolBar::sizeHint() const
1435{ 1441{
1436 return QToolBar::sizeHint(); 1442 return QToolBar::sizeHint();
diff --git a/microkde/kdeui/ktoolbar.h b/microkde/kdeui/ktoolbar.h
index 2c061b5..61b5ea3 100644
--- a/microkde/kdeui/ktoolbar.h
+++ b/microkde/kdeui/ktoolbar.h
@@ -1024,79 +1024,80 @@ signals:
1024 void moved( BarPosition ); 1024 void moved( BarPosition );
1025 1025
1026 /** 1026 /**
1027 * @internal 1027 * @internal
1028 * This signal is emitted when toolbar detects changing of 1028 * This signal is emitted when toolbar detects changing of
1029 * following parameters: 1029 * following parameters:
1030 * highlighting, button-size, button-mode. This signal is 1030 * highlighting, button-size, button-mode. This signal is
1031 * internal, aimed to buttons. 1031 * internal, aimed to buttons.
1032 */ 1032 */
1033 void modechange (); 1033 void modechange ();
1034 1034
1035 /** 1035 /**
1036 * This signal is emitted when the toolbar is getting deleted, 1036 * This signal is emitted when the toolbar is getting deleted,
1037 * and before ~KToolbar finishes (so it's still time to remove 1037 * and before ~KToolbar finishes (so it's still time to remove
1038 * widgets from the toolbar). 1038 * widgets from the toolbar).
1039 * Used by KWidgetAction. 1039 * Used by KWidgetAction.
1040 * @since 3.2 1040 * @since 3.2
1041 */ 1041 */
1042 void toolbarDestroyed(); 1042 void toolbarDestroyed();
1043 1043
1044public: 1044public:
1045 /** 1045 /**
1046 * @return global setting for "Highlight buttons under mouse" 1046 * @return global setting for "Highlight buttons under mouse"
1047 */ 1047 */
1048 void repaintMe();
1048 static bool highlightSetting(); 1049 static bool highlightSetting();
1049 1050
1050 /** 1051 /**
1051 * @return global setting for "Toolbars transparent when moving" 1052 * @return global setting for "Toolbars transparent when moving"
1052 */ 1053 */
1053 static bool transparentSetting(); 1054 static bool transparentSetting();
1054 1055
1055 /** 1056 /**
1056 * @return global setting for "Icon Text" 1057 * @return global setting for "Icon Text"
1057 */ 1058 */
1058 static IconText iconTextSetting(); 1059 static IconText iconTextSetting();
1059 1060
1060public slots: 1061public slots:
1061 virtual void setIconText( const QString &txt ) 1062 virtual void setIconText( const QString &txt )
1062 { QToolBar::setIconText( txt ); } 1063 { QToolBar::setIconText( txt ); }
1064 void slotRepaint();
1063 1065
1064protected: 1066protected:
1065 void mousePressEvent( QMouseEvent * ); 1067 void mousePressEvent( QMouseEvent * );
1066 void childEvent( QChildEvent *e ); 1068 void childEvent( QChildEvent *e );
1067 void showEvent( QShowEvent *e ); 1069 void showEvent( QShowEvent *e );
1068 void resizeEvent( QResizeEvent *e ); 1070 void resizeEvent( QResizeEvent *e );
1069 bool event( QEvent *e ); 1071 bool event( QEvent *e );
1070 void applyAppearanceSettings(KConfig *config, const QString &_configGroup, bool forceGlobal = false); 1072 void applyAppearanceSettings(KConfig *config, const QString &_configGroup, bool forceGlobal = false);
1071 QString settingsGroup(); 1073 QString settingsGroup();
1072 1074
1073private slots: 1075private slots:
1074 void rebuildLayout(); 1076 void rebuildLayout();
1075 void slotReadConfig (); 1077 void slotReadConfig ();
1076 void slotAppearanceChanged(); 1078 void slotAppearanceChanged();
1077 void slotIconChanged(int); 1079 void slotIconChanged(int);
1078 void slotRepaint();
1079 void toolBarPosChanged( QToolBar *tb ); 1080 void toolBarPosChanged( QToolBar *tb );
1080 void slotContextAboutToShow(); 1081 void slotContextAboutToShow();
1081 void widgetDestroyed(); 1082 void widgetDestroyed();
1082 1083
1083private: 1084private:
1084 void init( bool readConfig = true, bool honorStyle = false ); 1085 void init( bool readConfig = true, bool honorStyle = false );
1085 void doConnections( KToolBarButton *button ); 1086 void doConnections( KToolBarButton *button );
1086 void insertWidgetInternal( QWidget *w, int &index, int id ); 1087 void insertWidgetInternal( QWidget *w, int &index, int id );
1087 void removeWidgetInternal( QWidget *w ); 1088 void removeWidgetInternal( QWidget *w );
1088 void getAttributes( QString &position, QString &icontext, int &index ); 1089 void getAttributes( QString &position, QString &icontext, int &index );
1089//US KPopupMenu *contextMenu(); 1090//US KPopupMenu *contextMenu();
1090 QPopupMenu *contextMenu(); 1091 QPopupMenu *contextMenu();
1091 1092
1092 QMap<QWidget*, int > widget2id; 1093 QMap<QWidget*, int > widget2id;
1093 typedef QMap<int, QWidget* > Id2WidgetMap; 1094 typedef QMap<int, QWidget* > Id2WidgetMap;
1094 Id2WidgetMap id2widget; 1095 Id2WidgetMap id2widget;
1095//US KPopupMenu *context; 1096//US KPopupMenu *context;
1096 QPopupMenu *context; 1097 QPopupMenu *context;
1097 QPtrList<QWidget> widgets; 1098 QPtrList<QWidget> widgets;
1098 QTimer *layoutTimer; 1099 QTimer *layoutTimer;
1099 QGuardedPtr<QWidget> stretchableWidget, rightAligned; 1100 QGuardedPtr<QWidget> stretchableWidget, rightAligned;
1100protected: 1101protected:
1101 virtual void virtual_hook( int id, void* data ); 1102 virtual void virtual_hook( int id, void* data );
1102private: 1103private: