-rw-r--r-- | microkde/kcolordialog.cpp | 1 | ||||
-rw-r--r-- | microkde/kdeui/ktoolbar.cpp | 2 |
2 files changed, 3 insertions, 0 deletions
diff --git a/microkde/kcolordialog.cpp b/microkde/kcolordialog.cpp index 9a76e5e..a3d8973 100644 --- a/microkde/kcolordialog.cpp +++ b/microkde/kcolordialog.cpp | |||
@@ -1,92 +1,93 @@ | |||
1 | #include "kcolordialog.h" | 1 | #include "kcolordialog.h" |
2 | #include <qdialog.h> | 2 | #include <qdialog.h> |
3 | #include <qlayout.h> | 3 | #include <qlayout.h> |
4 | #include <qlabel.h> | 4 | #include <qlabel.h> |
5 | #include <qslider.h> | 5 | #include <qslider.h> |
6 | #include <qhbox.h> | 6 | #include <qhbox.h> |
7 | #include <qapplication.h> | 7 | #include <qapplication.h> |
8 | #include <qpushbutton.h> | 8 | #include <qpushbutton.h> |
9 | 9 | ||
10 | #include <kglobal.h> | 10 | #include <kglobal.h> |
11 | QColor KColorDialog::getColor( ) const | 11 | QColor KColorDialog::getColor( ) const |
12 | { | 12 | { |
13 | QColor c ( r->value(), g->value(), b->value() ); | 13 | QColor c ( r->value(), g->value(), b->value() ); |
14 | lar->setText ( "R: " + QString::number ( c.red() ) ); | 14 | lar->setText ( "R: " + QString::number ( c.red() ) ); |
15 | lag->setText ( "G: " + QString::number ( c.green() ) ); | 15 | lag->setText ( "G: " + QString::number ( c.green() ) ); |
16 | lab->setText ( "B: " + QString::number ( c.blue() ) ); | 16 | lab->setText ( "B: " + QString::number ( c.blue() ) ); |
17 | return c; | 17 | return c; |
18 | } | 18 | } |
19 | void KColorDialog::setColor( const QColor & d ) | 19 | void KColorDialog::setColor( const QColor & d ) |
20 | { | 20 | { |
21 | r->setValue(d.red() ); | 21 | r->setValue(d.red() ); |
22 | g->setValue(d.green() ); | 22 | g->setValue(d.green() ); |
23 | b->setValue(d.blue() ); | 23 | b->setValue(d.blue() ); |
24 | old_color->setPalette( QPalette( d.dark(), d ) ); | 24 | old_color->setPalette( QPalette( d.dark(), d ) ); |
25 | lar->setText ( "R: " + QString::number ( d.red() ) ); | 25 | lar->setText ( "R: " + QString::number ( d.red() ) ); |
26 | lag->setText ( "G: " + QString::number ( d.green() ) ); | 26 | lag->setText ( "G: " + QString::number ( d.green() ) ); |
27 | lab->setText ( "B: " + QString::number ( d.blue() ) ); | 27 | lab->setText ( "B: " + QString::number ( d.blue() ) ); |
28 | 28 | ||
29 | } | 29 | } |
30 | KColorDialog::KColorDialog( QWidget *p ):QDialog( p, "input-dialog", true ) | 30 | KColorDialog::KColorDialog( QWidget *p ):QDialog( p, "input-dialog", true ) |
31 | { | 31 | { |
32 | setCaption( i18n("Choose Color") ); | 32 | setCaption( i18n("Choose Color") ); |
33 | 33 | ||
34 | setMaximumSize( QApplication::desktop()->width() - 20, QApplication::desktop()->height() - 40 ); // for zaurus 5500er. | 34 | setMaximumSize( QApplication::desktop()->width() - 20, QApplication::desktop()->height() - 40 ); // for zaurus 5500er. |
35 | QGridLayout* lay = new QGridLayout ( this, 4, 2 ); | 35 | QGridLayout* lay = new QGridLayout ( this, 4, 2 ); |
36 | lay->setSpacing( 6 ); | 36 | lay->setSpacing( 6 ); |
37 | lay->setMargin( 11 ); | 37 | lay->setMargin( 11 ); |
38 | 38 | ||
39 | old_color = new QLabel("Old color",this); | 39 | old_color = new QLabel("Old color",this); |
40 | old_color->setFrameStyle( QFrame::Panel | QFrame::Plain ); | 40 | old_color->setFrameStyle( QFrame::Panel | QFrame::Plain ); |
41 | old_color->setLineWidth( 1 ); | 41 | old_color->setLineWidth( 1 ); |
42 | lay->addWidget(old_color, 0, 0); | 42 | lay->addWidget(old_color, 0, 0); |
43 | 43 | ||
44 | new_color = new QLabel("New color", this); | 44 | new_color = new QLabel("New color", this); |
45 | new_color->setFrameStyle( QFrame::Panel | QFrame::Plain ); | 45 | new_color->setFrameStyle( QFrame::Panel | QFrame::Plain ); |
46 | new_color->setLineWidth( 1 ); | 46 | new_color->setLineWidth( 1 ); |
47 | lay->addWidget(new_color, 0, 1); | 47 | lay->addWidget(new_color, 0, 1); |
48 | new_color->setAlignment( AlignCenter ); | 48 | new_color->setAlignment( AlignCenter ); |
49 | 49 | ||
50 | QHBox* hb = new QHBox ( this ); | 50 | QHBox* hb = new QHBox ( this ); |
51 | lar = new QLabel( hb ); | 51 | lar = new QLabel( hb ); |
52 | lag = new QLabel( hb ); | 52 | lag = new QLabel( hb ); |
53 | lab = new QLabel( hb ); | 53 | lab = new QLabel( hb ); |
54 | lay->addMultiCellWidget( hb,1,1, 0,1 ); | 54 | lay->addMultiCellWidget( hb,1,1, 0,1 ); |
55 | 55 | ||
56 | QLabel* lr = new QLabel ( "Red:", this ); | 56 | QLabel* lr = new QLabel ( "Red:", this ); |
57 | lay->addWidget( lr,2,0 ); | 57 | lay->addWidget( lr,2,0 ); |
58 | r = new QSlider ( 0, 255, 1, 1, Horizontal, this ); | 58 | r = new QSlider ( 0, 255, 1, 1, Horizontal, this ); |
59 | lay->addWidget(r ,2,1 ); | 59 | lay->addWidget(r ,2,1 ); |
60 | 60 | ||
61 | QLabel* lg = new QLabel( "Green:",this ); | 61 | QLabel* lg = new QLabel( "Green:",this ); |
62 | lay->addWidget(lg ,3,0 ); | 62 | lay->addWidget(lg ,3,0 ); |
63 | g = new QSlider ( 0, 255, 1, 1, Horizontal, this ); | 63 | g = new QSlider ( 0, 255, 1, 1, Horizontal, this ); |
64 | lay->addWidget( g ,3,1 ); | 64 | lay->addWidget( g ,3,1 ); |
65 | 65 | ||
66 | QLabel* lb = new QLabel ( "Blue:",this ); | 66 | QLabel* lb = new QLabel ( "Blue:",this ); |
67 | lay->addWidget( lb,4,0 ); | 67 | lay->addWidget( lb,4,0 ); |
68 | b = new QSlider ( 0, 255, 1, 1, Horizontal, this ); | 68 | b = new QSlider ( 0, 255, 1, 1, Horizontal, this ); |
69 | lay->addWidget(b ,4,1 ); | 69 | lay->addWidget(b ,4,1 ); |
70 | 70 | ||
71 | QColor d = backgroundColor(); | 71 | QColor d = backgroundColor(); |
72 | r->setValue(d.red() ); | 72 | r->setValue(d.red() ); |
73 | g->setValue(d.green() ); | 73 | g->setValue(d.green() ); |
74 | b->setValue(d.blue() ); | 74 | b->setValue(d.blue() ); |
75 | old_color->setPalette( QPalette( d.dark() , d ) ); | 75 | old_color->setPalette( QPalette( d.dark() , d ) ); |
76 | // kannst du wieder reinnehmen, aber es geht auch so. | 76 | // kannst du wieder reinnehmen, aber es geht auch so. |
77 | QPushButton * ok = new QPushButton (i18n(" OK "), this ); | 77 | QPushButton * ok = new QPushButton (i18n(" OK "), this ); |
78 | ok->setDefault( true ); | ||
78 | QPushButton * cancel = new QPushButton (i18n(" Cancel "), this ); | 79 | QPushButton * cancel = new QPushButton (i18n(" Cancel "), this ); |
79 | 80 | ||
80 | lay->addWidget(ok ,5,0 ); | 81 | lay->addWidget(ok ,5,0 ); |
81 | lay->addWidget(cancel ,5,1 ); | 82 | lay->addWidget(cancel ,5,1 ); |
82 | connect (ok, SIGNAL( clicked() ), this ,SLOT (accept() )); | 83 | connect (ok, SIGNAL( clicked() ), this ,SLOT (accept() )); |
83 | connect (cancel, SIGNAL( clicked() ), this ,SLOT (reject() )); | 84 | connect (cancel, SIGNAL( clicked() ), this ,SLOT (reject() )); |
84 | connect (r, SIGNAL( valueChanged ( int ) ), this ,SLOT (updateColor( int ) )); | 85 | connect (r, SIGNAL( valueChanged ( int ) ), this ,SLOT (updateColor( int ) )); |
85 | connect (g, SIGNAL( valueChanged ( int ) ), this ,SLOT (updateColor( int ) )); | 86 | connect (g, SIGNAL( valueChanged ( int ) ), this ,SLOT (updateColor( int ) )); |
86 | connect (b, SIGNAL( valueChanged ( int ) ), this ,SLOT (updateColor( int ) )); | 87 | connect (b, SIGNAL( valueChanged ( int ) ), this ,SLOT (updateColor( int ) )); |
87 | } | 88 | } |
88 | void KColorDialog::updateColor( int ) | 89 | void KColorDialog::updateColor( int ) |
89 | { | 90 | { |
90 | QColor c = getColor( ) ; | 91 | QColor c = getColor( ) ; |
91 | new_color->setPalette( QPalette( c.dark(), c ) ); | 92 | new_color->setPalette( QPalette( c.dark(), c ) ); |
92 | } | 93 | } |
diff --git a/microkde/kdeui/ktoolbar.cpp b/microkde/kdeui/ktoolbar.cpp index 35d4916..36ede81 100644 --- a/microkde/kdeui/ktoolbar.cpp +++ b/microkde/kdeui/ktoolbar.cpp | |||
@@ -908,955 +908,957 @@ bool KToolBar::enable(BarStatus stat) | |||
908 | } | 908 | } |
909 | 909 | ||
910 | 910 | ||
911 | void KToolBar::setMaxHeight ( int h ) | 911 | void KToolBar::setMaxHeight ( int h ) |
912 | { | 912 | { |
913 | setMaximumHeight( h ); | 913 | setMaximumHeight( h ); |
914 | } | 914 | } |
915 | 915 | ||
916 | int KToolBar::maxHeight() | 916 | int KToolBar::maxHeight() |
917 | { | 917 | { |
918 | return maximumHeight(); | 918 | return maximumHeight(); |
919 | } | 919 | } |
920 | 920 | ||
921 | 921 | ||
922 | void KToolBar::setMaxWidth (int dw) | 922 | void KToolBar::setMaxWidth (int dw) |
923 | { | 923 | { |
924 | setMaximumWidth( dw ); | 924 | setMaximumWidth( dw ); |
925 | } | 925 | } |
926 | 926 | ||
927 | 927 | ||
928 | int KToolBar::maxWidth() | 928 | int KToolBar::maxWidth() |
929 | { | 929 | { |
930 | return maximumWidth(); | 930 | return maximumWidth(); |
931 | } | 931 | } |
932 | 932 | ||
933 | 933 | ||
934 | void KToolBar::setTitle (const QString& _title) | 934 | void KToolBar::setTitle (const QString& _title) |
935 | { | 935 | { |
936 | setLabel( _title ); | 936 | setLabel( _title ); |
937 | } | 937 | } |
938 | 938 | ||
939 | 939 | ||
940 | void KToolBar::enableFloating (bool ) | 940 | void KToolBar::enableFloating (bool ) |
941 | { | 941 | { |
942 | } | 942 | } |
943 | 943 | ||
944 | 944 | ||
945 | void KToolBar::setIconText(IconText it) | 945 | void KToolBar::setIconText(IconText it) |
946 | { | 946 | { |
947 | setIconText( it, true ); | 947 | setIconText( it, true ); |
948 | } | 948 | } |
949 | 949 | ||
950 | 950 | ||
951 | void KToolBar::setIconText(IconText icontext, bool update) | 951 | void KToolBar::setIconText(IconText icontext, bool update) |
952 | { | 952 | { |
953 | bool doUpdate=false; | 953 | bool doUpdate=false; |
954 | 954 | ||
955 | if (icontext != d->m_iconText) { | 955 | if (icontext != d->m_iconText) { |
956 | d->m_iconText = icontext; | 956 | d->m_iconText = icontext; |
957 | doUpdate=true; | 957 | doUpdate=true; |
958 | } | 958 | } |
959 | 959 | ||
960 | if (update == false) | 960 | if (update == false) |
961 | return; | 961 | return; |
962 | 962 | ||
963 | if (doUpdate) | 963 | if (doUpdate) |
964 | emit modechange(); // tell buttons what happened | 964 | emit modechange(); // tell buttons what happened |
965 | 965 | ||
966 | // ugly hack to force a QMainWindow::triggerLayout( TRUE ) | 966 | // ugly hack to force a QMainWindow::triggerLayout( TRUE ) |
967 | if ( mainWindow() ) { | 967 | if ( mainWindow() ) { |
968 | QMainWindow *mw = mainWindow(); | 968 | QMainWindow *mw = mainWindow(); |
969 | mw->setUpdatesEnabled( FALSE ); | 969 | mw->setUpdatesEnabled( FALSE ); |
970 | mw->setToolBarsMovable( !mw->toolBarsMovable() ); | 970 | mw->setToolBarsMovable( !mw->toolBarsMovable() ); |
971 | mw->setToolBarsMovable( !mw->toolBarsMovable() ); | 971 | mw->setToolBarsMovable( !mw->toolBarsMovable() ); |
972 | mw->setUpdatesEnabled( TRUE ); | 972 | mw->setUpdatesEnabled( TRUE ); |
973 | } | 973 | } |
974 | } | 974 | } |
975 | 975 | ||
976 | 976 | ||
977 | KToolBar::IconText KToolBar::iconText() const | 977 | KToolBar::IconText KToolBar::iconText() const |
978 | { | 978 | { |
979 | return d->m_iconText; | 979 | return d->m_iconText; |
980 | } | 980 | } |
981 | 981 | ||
982 | 982 | ||
983 | void KToolBar::setIconSize(int size) | 983 | void KToolBar::setIconSize(int size) |
984 | { | 984 | { |
985 | setIconSize( size, true ); | 985 | setIconSize( size, true ); |
986 | } | 986 | } |
987 | 987 | ||
988 | void KToolBar::setIconSize(int size, bool update) | 988 | void KToolBar::setIconSize(int size, bool update) |
989 | { | 989 | { |
990 | bool doUpdate=false; | 990 | bool doUpdate=false; |
991 | 991 | ||
992 | if ( size != d->m_iconSize ) { | 992 | if ( size != d->m_iconSize ) { |
993 | d->m_iconSize = size; | 993 | d->m_iconSize = size; |
994 | doUpdate=true; | 994 | doUpdate=true; |
995 | } | 995 | } |
996 | 996 | ||
997 | if (update == false) | 997 | if (update == false) |
998 | return; | 998 | return; |
999 | 999 | ||
1000 | if (doUpdate) | 1000 | if (doUpdate) |
1001 | emit modechange(); // tell buttons what happened | 1001 | emit modechange(); // tell buttons what happened |
1002 | 1002 | ||
1003 | // ugly hack to force a QMainWindow::triggerLayout( TRUE ) | 1003 | // ugly hack to force a QMainWindow::triggerLayout( TRUE ) |
1004 | if ( mainWindow() ) { | 1004 | if ( mainWindow() ) { |
1005 | QMainWindow *mw = mainWindow(); | 1005 | QMainWindow *mw = mainWindow(); |
1006 | mw->setUpdatesEnabled( FALSE ); | 1006 | mw->setUpdatesEnabled( FALSE ); |
1007 | mw->setToolBarsMovable( !mw->toolBarsMovable() ); | 1007 | mw->setToolBarsMovable( !mw->toolBarsMovable() ); |
1008 | mw->setToolBarsMovable( !mw->toolBarsMovable() ); | 1008 | mw->setToolBarsMovable( !mw->toolBarsMovable() ); |
1009 | mw->setUpdatesEnabled( TRUE ); | 1009 | mw->setUpdatesEnabled( TRUE ); |
1010 | } | 1010 | } |
1011 | } | 1011 | } |
1012 | 1012 | ||
1013 | 1013 | ||
1014 | int KToolBar::iconSize() const | 1014 | int KToolBar::iconSize() const |
1015 | { | 1015 | { |
1016 | /*US | 1016 | /*US |
1017 | if ( !d->m_iconSize ) // default value? | 1017 | if ( !d->m_iconSize ) // default value? |
1018 | { | 1018 | { |
1019 | if (!::qstrcmp(QObject::name(), "mainToolBar")) | 1019 | if (!::qstrcmp(QObject::name(), "mainToolBar")) |
1020 | return KGlobal::iconLoader()->currentSize(KIcon::MainToolbar); | 1020 | return KGlobal::iconLoader()->currentSize(KIcon::MainToolbar); |
1021 | else | 1021 | else |
1022 | return KGlobal::iconLoader()->currentSize(KIcon::Toolbar); | 1022 | return KGlobal::iconLoader()->currentSize(KIcon::Toolbar); |
1023 | } | 1023 | } |
1024 | return d->m_iconSize; | 1024 | return d->m_iconSize; |
1025 | */ | 1025 | */ |
1026 | int ret = 18; | 1026 | int ret = 18; |
1027 | if ( QApplication::desktop()->width() > 320 ) | 1027 | if ( QApplication::desktop()->width() > 320 ) |
1028 | ret = 30; | 1028 | ret = 30; |
1029 | return ret; | 1029 | return ret; |
1030 | } | 1030 | } |
1031 | 1031 | ||
1032 | 1032 | ||
1033 | void KToolBar::setEnableContextMenu(bool enable ) | 1033 | void KToolBar::setEnableContextMenu(bool enable ) |
1034 | { | 1034 | { |
1035 | d->m_enableContext = enable; | 1035 | d->m_enableContext = enable; |
1036 | } | 1036 | } |
1037 | 1037 | ||
1038 | 1038 | ||
1039 | bool KToolBar::contextMenuEnabled() const | 1039 | bool KToolBar::contextMenuEnabled() const |
1040 | { | 1040 | { |
1041 | return d->m_enableContext; | 1041 | return d->m_enableContext; |
1042 | } | 1042 | } |
1043 | 1043 | ||
1044 | 1044 | ||
1045 | void KToolBar::setItemNoStyle(int id, bool no_style ) | 1045 | void KToolBar::setItemNoStyle(int id, bool no_style ) |
1046 | { | 1046 | { |
1047 | Id2WidgetMap::Iterator it = id2widget.find( id ); | 1047 | Id2WidgetMap::Iterator it = id2widget.find( id ); |
1048 | if ( it == id2widget.end() ) | 1048 | if ( it == id2widget.end() ) |
1049 | return; | 1049 | return; |
1050 | //US KToolBarButton * button = dynamic_cast<KToolBarButton *>( *it ); | 1050 | //US KToolBarButton * button = dynamic_cast<KToolBarButton *>( *it ); |
1051 | KToolBarButton * button = (KToolBarButton *)( *it ); | 1051 | KToolBarButton * button = (KToolBarButton *)( *it ); |
1052 | if (button) | 1052 | if (button) |
1053 | button->setNoStyle( no_style ); | 1053 | button->setNoStyle( no_style ); |
1054 | } | 1054 | } |
1055 | 1055 | ||
1056 | 1056 | ||
1057 | void KToolBar::setFlat (bool flag) | 1057 | void KToolBar::setFlat (bool flag) |
1058 | { | 1058 | { |
1059 | if ( !mainWindow() ) | 1059 | if ( !mainWindow() ) |
1060 | return; | 1060 | return; |
1061 | if ( flag ) | 1061 | if ( flag ) |
1062 | //US mainWindow()->moveDockWindow( this, DockMinimized ); | 1062 | //US mainWindow()->moveDockWindow( this, DockMinimized ); |
1063 | mainWindow()->moveToolBar( this, QMainWindow::Minimized ); | 1063 | mainWindow()->moveToolBar( this, QMainWindow::Minimized ); |
1064 | else | 1064 | else |
1065 | //US mainWindow()->moveDockWindow( this, DockTop ); | 1065 | //US mainWindow()->moveDockWindow( this, DockTop ); |
1066 | mainWindow()->moveToolBar( this, QMainWindow::Top ); | 1066 | mainWindow()->moveToolBar( this, QMainWindow::Top ); |
1067 | // And remember to save the new look later | 1067 | // And remember to save the new look later |
1068 | /*US | 1068 | /*US |
1069 | if ( mainWindow()->inherits( "KMainWindow" ) ) | 1069 | if ( mainWindow()->inherits( "KMainWindow" ) ) |
1070 | static_cast<KMainWindow *>(mainWindow())->setSettingsDirty(); | 1070 | static_cast<KMainWindow *>(mainWindow())->setSettingsDirty(); |
1071 | */ | 1071 | */ |
1072 | } | 1072 | } |
1073 | 1073 | ||
1074 | 1074 | ||
1075 | int KToolBar::count() const | 1075 | int KToolBar::count() const |
1076 | { | 1076 | { |
1077 | return id2widget.count(); | 1077 | return id2widget.count(); |
1078 | } | 1078 | } |
1079 | 1079 | ||
1080 | 1080 | ||
1081 | void KToolBar::saveState() | 1081 | void KToolBar::saveState() |
1082 | { | 1082 | { |
1083 | /*US | 1083 | /*US |
1084 | // first, try to save to the xml file | 1084 | // first, try to save to the xml file |
1085 | if ( d->m_xmlguiClient && !d->m_xmlguiClient->xmlFile().isEmpty() ) { | 1085 | if ( d->m_xmlguiClient && !d->m_xmlguiClient->xmlFile().isEmpty() ) { |
1086 | // go down one level to get to the right tags | 1086 | // go down one level to get to the right tags |
1087 | QDomElement elem = d->m_xmlguiClient->domDocument().documentElement().toElement(); | 1087 | QDomElement elem = d->m_xmlguiClient->domDocument().documentElement().toElement(); |
1088 | elem = elem.firstChild().toElement(); | 1088 | elem = elem.firstChild().toElement(); |
1089 | QString barname(!::qstrcmp(name(), "unnamed") ? "mainToolBar" : name()); | 1089 | QString barname(!::qstrcmp(name(), "unnamed") ? "mainToolBar" : name()); |
1090 | QDomElement current; | 1090 | QDomElement current; |
1091 | // now try to find our toolbar | 1091 | // now try to find our toolbar |
1092 | d->modified = false; | 1092 | d->modified = false; |
1093 | for( ; !elem.isNull(); elem = elem.nextSibling().toElement() ) { | 1093 | for( ; !elem.isNull(); elem = elem.nextSibling().toElement() ) { |
1094 | current = elem; | 1094 | current = elem; |
1095 | 1095 | ||
1096 | if ( current.tagName().lower() != "toolbar" ) | 1096 | if ( current.tagName().lower() != "toolbar" ) |
1097 | continue; | 1097 | continue; |
1098 | 1098 | ||
1099 | QString curname(current.attribute( "name" )); | 1099 | QString curname(current.attribute( "name" )); |
1100 | 1100 | ||
1101 | if ( curname == barname ) { | 1101 | if ( curname == barname ) { |
1102 | saveState( current ); | 1102 | saveState( current ); |
1103 | break; | 1103 | break; |
1104 | } | 1104 | } |
1105 | } | 1105 | } |
1106 | // if we didn't make changes, then just return | 1106 | // if we didn't make changes, then just return |
1107 | if ( !d->modified ) | 1107 | if ( !d->modified ) |
1108 | return; | 1108 | return; |
1109 | 1109 | ||
1110 | // now we load in the (non-merged) local file | 1110 | // now we load in the (non-merged) local file |
1111 | QString local_xml(KXMLGUIFactory::readConfigFile(d->m_xmlguiClient->xmlFile(), true, d->m_xmlguiClient->instance())); | 1111 | QString local_xml(KXMLGUIFactory::readConfigFile(d->m_xmlguiClient->xmlFile(), true, d->m_xmlguiClient->instance())); |
1112 | QDomDocument local; | 1112 | QDomDocument local; |
1113 | local.setContent(local_xml); | 1113 | local.setContent(local_xml); |
1114 | 1114 | ||
1115 | // make sure we don't append if this toolbar already exists locally | 1115 | // make sure we don't append if this toolbar already exists locally |
1116 | bool just_append = true; | 1116 | bool just_append = true; |
1117 | elem = local.documentElement().toElement(); | 1117 | elem = local.documentElement().toElement(); |
1118 | KXMLGUIFactory::removeDOMComments( elem ); | 1118 | KXMLGUIFactory::removeDOMComments( elem ); |
1119 | elem = elem.firstChild().toElement(); | 1119 | elem = elem.firstChild().toElement(); |
1120 | for( ; !elem.isNull(); elem = elem.nextSibling().toElement() ) { | 1120 | for( ; !elem.isNull(); elem = elem.nextSibling().toElement() ) { |
1121 | if ( elem.tagName().lower() != "toolbar" ) | 1121 | if ( elem.tagName().lower() != "toolbar" ) |
1122 | continue; | 1122 | continue; |
1123 | 1123 | ||
1124 | QString curname(elem.attribute( "name" )); | 1124 | QString curname(elem.attribute( "name" )); |
1125 | 1125 | ||
1126 | if ( curname == barname ) { | 1126 | if ( curname == barname ) { |
1127 | just_append = false; | 1127 | just_append = false; |
1128 | local.documentElement().replaceChild( current, elem ); | 1128 | local.documentElement().replaceChild( current, elem ); |
1129 | break; | 1129 | break; |
1130 | } | 1130 | } |
1131 | } | 1131 | } |
1132 | 1132 | ||
1133 | if (just_append) | 1133 | if (just_append) |
1134 | local.documentElement().appendChild( current ); | 1134 | local.documentElement().appendChild( current ); |
1135 | 1135 | ||
1136 | KXMLGUIFactory::saveConfigFile(local, d->m_xmlguiClient->localXMLFile(), d->m_xmlguiClient->instance() ); | 1136 | KXMLGUIFactory::saveConfigFile(local, d->m_xmlguiClient->localXMLFile(), d->m_xmlguiClient->instance() ); |
1137 | 1137 | ||
1138 | return; | 1138 | return; |
1139 | } | 1139 | } |
1140 | */ | 1140 | */ |
1141 | // if that didn't work, we save to the config file | 1141 | // if that didn't work, we save to the config file |
1142 | KConfig *config = KGlobal::config(); | 1142 | KConfig *config = KGlobal::config(); |
1143 | saveSettings(config, QString::null); | 1143 | saveSettings(config, QString::null); |
1144 | config->sync(); | 1144 | config->sync(); |
1145 | } | 1145 | } |
1146 | 1146 | ||
1147 | QString KToolBar::settingsGroup() | 1147 | QString KToolBar::settingsGroup() |
1148 | { | 1148 | { |
1149 | QString configGroup; | 1149 | QString configGroup; |
1150 | if (!::qstrcmp(name(), "unnamed") || !::qstrcmp(name(), "mainToolBar")) | 1150 | if (!::qstrcmp(name(), "unnamed") || !::qstrcmp(name(), "mainToolBar")) |
1151 | configGroup = "Toolbar style"; | 1151 | configGroup = "Toolbar style"; |
1152 | else | 1152 | else |
1153 | configGroup = QString(name()) + " Toolbar style"; | 1153 | configGroup = QString(name()) + " Toolbar style"; |
1154 | if ( this->mainWindow() ) | 1154 | if ( this->mainWindow() ) |
1155 | { | 1155 | { |
1156 | configGroup.prepend(" "); | 1156 | configGroup.prepend(" "); |
1157 | configGroup.prepend( this->mainWindow()->name() ); | 1157 | configGroup.prepend( this->mainWindow()->name() ); |
1158 | } | 1158 | } |
1159 | return configGroup; | 1159 | return configGroup; |
1160 | } | 1160 | } |
1161 | 1161 | ||
1162 | void KToolBar::saveSettings(KConfig *config, const QString &_configGroup) | 1162 | void KToolBar::saveSettings(KConfig *config, const QString &_configGroup) |
1163 | { | 1163 | { |
1164 | return; | ||
1164 | QString configGroup = _configGroup; | 1165 | QString configGroup = _configGroup; |
1165 | if (configGroup.isEmpty()) | 1166 | if (configGroup.isEmpty()) |
1166 | configGroup = settingsGroup(); | 1167 | configGroup = settingsGroup(); |
1167 | //kdDebug(220) << "KToolBar::saveSettings group=" << _configGroup << " -> " << configGroup << endl; | 1168 | //kdDebug(220) << "KToolBar::saveSettings group=" << _configGroup << " -> " << configGroup << endl; |
1168 | 1169 | ||
1169 | QString position, icontext; | 1170 | QString position, icontext; |
1170 | int index; | 1171 | int index; |
1171 | getAttributes( position, icontext, index ); | 1172 | getAttributes( position, icontext, index ); |
1172 | 1173 | ||
1173 | //kdDebug(220) << "KToolBar::saveSettings " << name() << " newLine=" << newLine << endl; | 1174 | //kdDebug(220) << "KToolBar::saveSettings " << name() << " newLine=" << newLine << endl; |
1174 | 1175 | ||
1175 | KConfigGroupSaver saver(config, configGroup); | 1176 | KConfigGroupSaver saver(config, configGroup); |
1176 | 1177 | ||
1177 | if ( position != d->PositionDefault ) | 1178 | if ( position != d->PositionDefault ) |
1178 | config->writeEntry("Position", position); | 1179 | config->writeEntry("Position", position); |
1179 | else | 1180 | else |
1180 | config->deleteEntry("Position"); | 1181 | config->deleteEntry("Position"); |
1181 | 1182 | ||
1182 | if ( icontext != d->IconTextDefault ) | 1183 | if ( icontext != d->IconTextDefault ) |
1183 | config->writeEntry("IconText", icontext); | 1184 | config->writeEntry("IconText", icontext); |
1184 | else | 1185 | else |
1185 | config->deleteEntry("IconText"); | 1186 | config->deleteEntry("IconText"); |
1186 | 1187 | ||
1187 | if ( iconSize() != d->IconSizeDefault ) | 1188 | if ( iconSize() != d->IconSizeDefault ) |
1188 | config->writeEntry("IconSize", iconSize()); | 1189 | config->writeEntry("IconSize", iconSize()); |
1189 | else | 1190 | else |
1190 | config->deleteEntry("IconSize"); | 1191 | config->deleteEntry("IconSize"); |
1191 | 1192 | ||
1192 | if ( isHidden() != d->HiddenDefault ) | 1193 | if ( isHidden() != d->HiddenDefault ) |
1193 | config->writeEntry("Hidden", isHidden()); | 1194 | config->writeEntry("Hidden", isHidden()); |
1194 | else | 1195 | else |
1195 | config->deleteEntry("Hidden"); | 1196 | config->deleteEntry("Hidden"); |
1196 | 1197 | ||
1197 | if ( index != d->IndexDefault ) | 1198 | if ( index != d->IndexDefault ) |
1198 | config->writeEntry( "Index", index ); | 1199 | config->writeEntry( "Index", index ); |
1199 | else | 1200 | else |
1200 | config->deleteEntry("Index"); | 1201 | config->deleteEntry("Index"); |
1201 | //US the older version of KDE (used on the Zaurus) has no Offset property | 1202 | //US the older version of KDE (used on the Zaurus) has no Offset property |
1202 | /* if ( offset() != d->OffsetDefault ) | 1203 | /* if ( offset() != d->OffsetDefault ) |
1203 | config->writeEntry( "Offset", offset() ); | 1204 | config->writeEntry( "Offset", offset() ); |
1204 | else | 1205 | else |
1205 | */ | 1206 | */ |
1206 | config->deleteEntry("Offset"); | 1207 | config->deleteEntry("Offset"); |
1207 | 1208 | ||
1208 | //US the older version of KDE (used on the Zaurus) has no NewLine property | 1209 | //US the older version of KDE (used on the Zaurus) has no NewLine property |
1209 | /* | 1210 | /* |
1210 | if ( newLine() != d->NewLineDefault ) | 1211 | if ( newLine() != d->NewLineDefault ) |
1211 | config->writeEntry( "NewLine", newLine() ); | 1212 | config->writeEntry( "NewLine", newLine() ); |
1212 | else | 1213 | else |
1213 | */ | 1214 | */ |
1214 | config->deleteEntry("NewLine"); | 1215 | config->deleteEntry("NewLine"); |
1215 | } | 1216 | } |
1216 | 1217 | ||
1217 | void KToolBar::setXMLGUIClient( KXMLGUIClient *client ) | 1218 | void KToolBar::setXMLGUIClient( KXMLGUIClient *client ) |
1218 | { | 1219 | { |
1219 | d->m_xmlguiClient = client; | 1220 | d->m_xmlguiClient = client; |
1220 | } | 1221 | } |
1221 | 1222 | ||
1222 | void KToolBar::setText( const QString & txt ) | 1223 | void KToolBar::setText( const QString & txt ) |
1223 | { | 1224 | { |
1224 | //US setLabel( txt + " ( " + kapp->caption() + " ) " ); | 1225 | //US setLabel( txt + " ( " + kapp->caption() + " ) " ); |
1225 | setLabel( txt + " ( " + KGlobal::getAppName() + " ) " ); | 1226 | setLabel( txt + " ( " + KGlobal::getAppName() + " ) " ); |
1226 | } | 1227 | } |
1227 | 1228 | ||
1228 | 1229 | ||
1229 | QString KToolBar::text() const | 1230 | QString KToolBar::text() const |
1230 | { | 1231 | { |
1231 | return label(); | 1232 | return label(); |
1232 | } | 1233 | } |
1233 | 1234 | ||
1234 | 1235 | ||
1235 | void KToolBar::doConnections( KToolBarButton *button ) | 1236 | void KToolBar::doConnections( KToolBarButton *button ) |
1236 | { | 1237 | { |
1237 | connect(button, SIGNAL(clicked(int)), this, SIGNAL( clicked( int ) ) ); | 1238 | connect(button, SIGNAL(clicked(int)), this, SIGNAL( clicked( int ) ) ); |
1238 | connect(button, SIGNAL(doubleClicked(int)), this, SIGNAL( doubleClicked( int ) ) ); | 1239 | connect(button, SIGNAL(doubleClicked(int)), this, SIGNAL( doubleClicked( int ) ) ); |
1239 | connect(button, SIGNAL(released(int)), this, SIGNAL( released( int ) ) ); | 1240 | connect(button, SIGNAL(released(int)), this, SIGNAL( released( int ) ) ); |
1240 | connect(button, SIGNAL(pressed(int)), this, SIGNAL( pressed( int ) ) ); | 1241 | connect(button, SIGNAL(pressed(int)), this, SIGNAL( pressed( int ) ) ); |
1241 | connect(button, SIGNAL(toggled(int)), this, SIGNAL( toggled( int ) ) ); | 1242 | connect(button, SIGNAL(toggled(int)), this, SIGNAL( toggled( int ) ) ); |
1242 | connect(button, SIGNAL(highlighted(int, bool)), this, SIGNAL( highlighted( int, bool ) ) ); | 1243 | connect(button, SIGNAL(highlighted(int, bool)), this, SIGNAL( highlighted( int, bool ) ) ); |
1243 | } | 1244 | } |
1244 | 1245 | ||
1245 | void KToolBar::mousePressEvent ( QMouseEvent *m ) | 1246 | void KToolBar::mousePressEvent ( QMouseEvent *m ) |
1246 | { | 1247 | { |
1247 | if ( !mainWindow() ) | 1248 | if ( !mainWindow() ) |
1248 | return; | 1249 | return; |
1249 | QMainWindow *mw = mainWindow(); | 1250 | QMainWindow *mw = mainWindow(); |
1250 | if ( mw->toolBarsMovable() && d->m_enableContext ) { | 1251 | if ( mw->toolBarsMovable() && d->m_enableContext ) { |
1251 | if ( m->button() == RightButton ) { | 1252 | if ( m->button() == RightButton ) { |
1252 | int i = contextMenu()->exec( m->globalPos(), 0 ); | 1253 | int i = contextMenu()->exec( m->globalPos(), 0 ); |
1253 | switch ( i ) { | 1254 | switch ( i ) { |
1254 | case -1: | 1255 | case -1: |
1255 | return; // popup cancelled | 1256 | return; // popup cancelled |
1256 | case CONTEXT_LEFT: | 1257 | case CONTEXT_LEFT: |
1257 | //US mw->moveDockWindow( this, DockLeft ); | 1258 | //US mw->moveDockWindow( this, DockLeft ); |
1258 | mw->moveToolBar( this, QMainWindow::Left ); | 1259 | mw->moveToolBar( this, QMainWindow::Left ); |
1259 | break; | 1260 | break; |
1260 | case CONTEXT_RIGHT: | 1261 | case CONTEXT_RIGHT: |
1261 | //US mw->moveDockWindow( this, DockRight ); | 1262 | //US mw->moveDockWindow( this, DockRight ); |
1262 | mw->moveToolBar( this, QMainWindow::Right ); | 1263 | mw->moveToolBar( this, QMainWindow::Right ); |
1263 | break; | 1264 | break; |
1264 | case CONTEXT_TOP: | 1265 | case CONTEXT_TOP: |
1265 | //US mw->moveDockWindow( this, DockTop ); | 1266 | //US mw->moveDockWindow( this, DockTop ); |
1266 | mw->moveToolBar( this, QMainWindow::Top ); | 1267 | mw->moveToolBar( this, QMainWindow::Top ); |
1267 | break; | 1268 | break; |
1268 | case CONTEXT_BOTTOM: | 1269 | case CONTEXT_BOTTOM: |
1269 | //US mw->moveDockWindow( this, DockBottom ); | 1270 | //US mw->moveDockWindow( this, DockBottom ); |
1270 | mw->moveToolBar( this, QMainWindow::Bottom ); | 1271 | mw->moveToolBar( this, QMainWindow::Bottom ); |
1271 | break; | 1272 | break; |
1272 | case CONTEXT_FLOAT: | 1273 | case CONTEXT_FLOAT: |
1273 | break; | 1274 | break; |
1274 | case CONTEXT_FLAT: | 1275 | case CONTEXT_FLAT: |
1275 | //US mw->moveDockWindow( this, DockMinimized ); | 1276 | //US mw->moveDockWindow( this, DockMinimized ); |
1276 | mw->moveToolBar( this, QMainWindow::Minimized ); | 1277 | mw->moveToolBar( this, QMainWindow::Minimized ); |
1277 | break; | 1278 | break; |
1278 | case CONTEXT_ICONS: | 1279 | case CONTEXT_ICONS: |
1279 | setIconText( IconOnly ); | 1280 | setIconText( IconOnly ); |
1280 | break; | 1281 | break; |
1281 | case CONTEXT_TEXTRIGHT: | 1282 | case CONTEXT_TEXTRIGHT: |
1282 | setIconText( IconTextRight ); | 1283 | setIconText( IconTextRight ); |
1283 | break; | 1284 | break; |
1284 | case CONTEXT_TEXT: | 1285 | case CONTEXT_TEXT: |
1285 | setIconText( TextOnly ); | 1286 | setIconText( TextOnly ); |
1286 | break; | 1287 | break; |
1287 | case CONTEXT_TEXTUNDER: | 1288 | case CONTEXT_TEXTUNDER: |
1288 | setIconText( IconTextBottom ); | 1289 | setIconText( IconTextBottom ); |
1289 | break; | 1290 | break; |
1290 | default: | 1291 | default: |
1291 | if ( i >= CONTEXT_ICONSIZES ) | 1292 | if ( i >= CONTEXT_ICONSIZES ) |
1292 | setIconSize( i - CONTEXT_ICONSIZES ); | 1293 | setIconSize( i - CONTEXT_ICONSIZES ); |
1293 | else | 1294 | else |
1294 | return; // assume this was an action handled elsewhere, no need for setSettingsDirty() | 1295 | return; // assume this was an action handled elsewhere, no need for setSettingsDirty() |
1295 | } | 1296 | } |
1296 | /*US | 1297 | /*US |
1297 | if ( mw->inherits("KMainWindow") ) | 1298 | if ( mw->inherits("KMainWindow") ) |
1298 | static_cast<KMainWindow *>(mw)->setSettingsDirty(); | 1299 | static_cast<KMainWindow *>(mw)->setSettingsDirty(); |
1299 | */ | 1300 | */ |
1300 | } | 1301 | } |
1301 | } | 1302 | } |
1302 | } | 1303 | } |
1303 | 1304 | ||
1304 | 1305 | ||
1305 | void KToolBar::rebuildLayout() | 1306 | void KToolBar::rebuildLayout() |
1306 | { | 1307 | { |
1307 | 1308 | ||
1308 | for(QWidget *w=d->idleButtons.first(); w; w=d->idleButtons.next()) | 1309 | for(QWidget *w=d->idleButtons.first(); w; w=d->idleButtons.next()) |
1309 | w->blockSignals(false); | 1310 | w->blockSignals(false); |
1310 | d->idleButtons.clear(); | 1311 | d->idleButtons.clear(); |
1311 | 1312 | ||
1312 | layoutTimer->stop(); | 1313 | layoutTimer->stop(); |
1313 | QApplication::sendPostedEvents( this, QEvent::ChildInserted ); | 1314 | QApplication::sendPostedEvents( this, QEvent::ChildInserted ); |
1314 | QBoxLayout *l = boxLayout(); | 1315 | QBoxLayout *l = boxLayout(); |
1315 | l->setMargin( 1 ); | 1316 | l->setMargin( 1 ); |
1316 | // clear the old layout | 1317 | // clear the old layout |
1317 | QLayoutIterator it = l->iterator(); | 1318 | QLayoutIterator it = l->iterator(); |
1318 | 1319 | ||
1319 | while ( it.current() ) { | 1320 | while ( it.current() ) { |
1320 | it.deleteCurrent(); | 1321 | it.deleteCurrent(); |
1321 | } | 1322 | } |
1322 | for ( QWidget *w = widgets.first(); w; w = widgets.next() ) { | 1323 | for ( QWidget *w = widgets.first(); w; w = widgets.next() ) { |
1323 | if ( w == rightAligned ) { | 1324 | if ( w == rightAligned ) { |
1324 | continue; | 1325 | continue; |
1325 | } | 1326 | } |
1326 | if ( w->inherits( "KToolBarSeparator" ) && | 1327 | if ( w->inherits( "KToolBarSeparator" ) && |
1327 | !( (KToolBarSeparator*)w )->showLine() ) { | 1328 | !( (KToolBarSeparator*)w )->showLine() ) { |
1328 | l->addSpacing( 6 ); | 1329 | l->addSpacing( 6 ); |
1329 | w->hide(); | 1330 | w->hide(); |
1330 | continue; | 1331 | continue; |
1331 | } | 1332 | } |
1332 | if ( w->inherits( "QPopupMenu" ) ) | 1333 | if ( w->inherits( "QPopupMenu" ) ) |
1333 | continue; | 1334 | continue; |
1334 | l->addWidget( w ); | 1335 | l->addWidget( w ); |
1335 | w->show(); | 1336 | w->show(); |
1336 | } | 1337 | } |
1337 | if ( rightAligned ) { | 1338 | if ( rightAligned ) { |
1338 | l->addStretch(); | 1339 | l->addStretch(); |
1339 | l->addWidget( rightAligned ); | 1340 | l->addWidget( rightAligned ); |
1340 | rightAligned->show(); | 1341 | rightAligned->show(); |
1341 | } | 1342 | } |
1342 | 1343 | ||
1343 | if ( fullSize() ) { | 1344 | if ( fullSize() ) { |
1344 | // This code sucks. It makes the last combo in a toolbar VERY big (e.g. zoom combo in kword). | 1345 | // This code sucks. It makes the last combo in a toolbar VERY big (e.g. zoom combo in kword). |
1345 | //if ( !stretchableWidget && widgets.last() && | 1346 | //if ( !stretchableWidget && widgets.last() && |
1346 | // !widgets.last()->inherits( "QButton" ) && !widgets.last()->inherits( "KAnimWidget" ) ) | 1347 | // !widgets.last()->inherits( "QButton" ) && !widgets.last()->inherits( "KAnimWidget" ) ) |
1347 | // setStretchableWidget( widgets.last() ); | 1348 | // setStretchableWidget( widgets.last() ); |
1348 | if ( !rightAligned ) | 1349 | if ( !rightAligned ) |
1349 | l->addStretch(); | 1350 | l->addStretch(); |
1350 | if ( stretchableWidget ) | 1351 | if ( stretchableWidget ) |
1351 | l->setStretchFactor( stretchableWidget, 10 ); | 1352 | l->setStretchFactor( stretchableWidget, 10 ); |
1352 | } | 1353 | } |
1353 | l->invalidate(); | 1354 | l->invalidate(); |
1354 | QApplication::postEvent( this, new QEvent( QEvent::LayoutHint ) ); | 1355 | QApplication::postEvent( this, new QEvent( QEvent::LayoutHint ) ); |
1355 | //#endif //DESKTOP_VERSION | 1356 | //#endif //DESKTOP_VERSION |
1356 | } | 1357 | } |
1357 | 1358 | ||
1358 | void KToolBar::childEvent( QChildEvent *e ) | 1359 | void KToolBar::childEvent( QChildEvent *e ) |
1359 | { | 1360 | { |
1360 | 1361 | ||
1361 | if ( e->child()->isWidgetType() ) { | 1362 | if ( e->child()->isWidgetType() ) { |
1362 | QWidget * w = (QWidget*)e->child(); | 1363 | QWidget * w = (QWidget*)e->child(); |
1363 | if ( e->type() == QEvent::ChildInserted ) { | 1364 | if ( e->type() == QEvent::ChildInserted ) { |
1364 | if ( !e->child()->inherits( "QPopupMenu" ) && | 1365 | if ( !e->child()->inherits( "QPopupMenu" ) && |
1365 | ::qstrcmp( "qt_dockwidget_internal", e->child()->name() ) != 0 ) { | 1366 | ::qstrcmp( "qt_dockwidget_internal", e->child()->name() ) != 0 ) { |
1366 | 1367 | ||
1367 | // prevent items that have been explicitly inserted by insert*() from | 1368 | // prevent items that have been explicitly inserted by insert*() from |
1368 | // being inserted again | 1369 | // being inserted again |
1369 | if ( !widget2id.contains( w ) ) | 1370 | if ( !widget2id.contains( w ) ) |
1370 | { | 1371 | { |
1371 | int dummy = -1; | 1372 | int dummy = -1; |
1372 | insertWidgetInternal( w, dummy, -1 ); | 1373 | insertWidgetInternal( w, dummy, -1 ); |
1373 | } | 1374 | } |
1374 | } | 1375 | } |
1375 | } else { | 1376 | } else { |
1376 | removeWidgetInternal( w ); | 1377 | removeWidgetInternal( w ); |
1377 | } | 1378 | } |
1378 | if ( isVisibleTo( 0 ) ) | 1379 | if ( isVisibleTo( 0 ) ) |
1379 | { | 1380 | { |
1380 | QBoxLayout *l = boxLayout(); | 1381 | QBoxLayout *l = boxLayout(); |
1381 | // QLayout *l = layout(); | 1382 | // QLayout *l = layout(); |
1382 | 1383 | ||
1383 | // clear the old layout so that we don't get unnecassery layout | 1384 | // clear the old layout so that we don't get unnecassery layout |
1384 | // changes till we have rebuild the thing | 1385 | // changes till we have rebuild the thing |
1385 | QLayoutIterator it = l->iterator(); | 1386 | QLayoutIterator it = l->iterator(); |
1386 | while ( it.current() ) { | 1387 | while ( it.current() ) { |
1387 | it.deleteCurrent(); | 1388 | it.deleteCurrent(); |
1388 | } | 1389 | } |
1389 | layoutTimer->start( 50, TRUE ); | 1390 | layoutTimer->start( 50, TRUE ); |
1390 | } | 1391 | } |
1391 | } | 1392 | } |
1392 | QToolBar::childEvent( e ); | 1393 | QToolBar::childEvent( e ); |
1393 | } | 1394 | } |
1394 | 1395 | ||
1395 | void KToolBar::insertWidgetInternal( QWidget *w, int &index, int id ) | 1396 | void KToolBar::insertWidgetInternal( QWidget *w, int &index, int id ) |
1396 | { | 1397 | { |
1397 | // we can't have it in widgets, or something is really wrong | 1398 | // we can't have it in widgets, or something is really wrong |
1398 | //widgets.removeRef( w ); | 1399 | //widgets.removeRef( w ); |
1399 | 1400 | ||
1400 | connect( w, SIGNAL( destroyed() ), | 1401 | connect( w, SIGNAL( destroyed() ), |
1401 | this, SLOT( widgetDestroyed() ) ); | 1402 | this, SLOT( widgetDestroyed() ) ); |
1402 | if ( index == -1 || index > (int)widgets.count() ) { | 1403 | if ( index == -1 || index > (int)widgets.count() ) { |
1403 | widgets.append( w ); | 1404 | widgets.append( w ); |
1404 | index = (int)widgets.count(); | 1405 | index = (int)widgets.count(); |
1405 | } | 1406 | } |
1406 | else | 1407 | else |
1407 | widgets.insert( index, w ); | 1408 | widgets.insert( index, w ); |
1408 | if ( id == -1 ) | 1409 | if ( id == -1 ) |
1409 | id = id2widget.count(); | 1410 | id = id2widget.count(); |
1410 | id2widget.insert( id, w ); | 1411 | id2widget.insert( id, w ); |
1411 | widget2id.insert( w, id ); | 1412 | widget2id.insert( w, id ); |
1412 | } | 1413 | } |
1413 | void KToolBar::repaintMe() | 1414 | void KToolBar::repaintMe() |
1414 | { | 1415 | { |
1415 | setUpdatesEnabled( true ); | 1416 | setUpdatesEnabled( true ); |
1416 | QToolBar::repaint( true ); | 1417 | QToolBar::repaint( true ); |
1417 | //qDebug(" KToolBar::repaintMe() "); | 1418 | //qDebug(" KToolBar::repaintMe() "); |
1418 | } | 1419 | } |
1419 | 1420 | ||
1420 | void KToolBar::showEvent( QShowEvent *e ) | 1421 | void KToolBar::showEvent( QShowEvent *e ) |
1421 | { | 1422 | { |
1422 | QToolBar::showEvent( e ); | 1423 | QToolBar::showEvent( e ); |
1423 | rebuildLayout(); | 1424 | rebuildLayout(); |
1424 | } | 1425 | } |
1425 | 1426 | ||
1426 | void KToolBar::setStretchableWidget( QWidget *w ) | 1427 | void KToolBar::setStretchableWidget( QWidget *w ) |
1427 | { | 1428 | { |
1428 | QToolBar::setStretchableWidget( w ); | 1429 | QToolBar::setStretchableWidget( w ); |
1429 | stretchableWidget = w; | 1430 | stretchableWidget = w; |
1430 | } | 1431 | } |
1431 | 1432 | ||
1432 | QSizePolicy KToolBar::sizePolicy() const | 1433 | QSizePolicy KToolBar::sizePolicy() const |
1433 | { | 1434 | { |
1434 | if ( orientation() == Horizontal ) | 1435 | if ( orientation() == Horizontal ) |
1435 | return QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ); | 1436 | return QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ); |
1436 | else | 1437 | else |
1437 | return QSizePolicy( QSizePolicy::Fixed, QSizePolicy::Expanding ); | 1438 | return QSizePolicy( QSizePolicy::Fixed, QSizePolicy::Expanding ); |
1438 | } | 1439 | } |
1439 | 1440 | ||
1440 | QSize KToolBar::sizeHint() const | 1441 | QSize KToolBar::sizeHint() const |
1441 | { | 1442 | { |
1442 | return QToolBar::sizeHint(); | 1443 | return QToolBar::sizeHint(); |
1443 | #if 0 | 1444 | #if 0 |
1444 | QWidget::polish(); | 1445 | QWidget::polish(); |
1445 | static int iii = 0; | 1446 | static int iii = 0; |
1446 | ++iii; | 1447 | ++iii; |
1447 | qDebug("++++++++ KToolBar::sizeHint() %d ", iii ); | 1448 | qDebug("++++++++ KToolBar::sizeHint() %d ", iii ); |
1448 | int margin = static_cast<QWidget*>(ncThis)->layout()->margin(); | 1449 | int margin = static_cast<QWidget*>(ncThis)->layout()->margin(); |
1449 | switch( barPos() ) | 1450 | switch( barPos() ) |
1450 | { | 1451 | { |
1451 | case KToolBar::Top: | 1452 | case KToolBar::Top: |
1452 | case KToolBar::Bottom: | 1453 | case KToolBar::Bottom: |
1453 | for ( QWidget *w = widgets.first(); w; w =widgets.next() ) | 1454 | for ( QWidget *w = widgets.first(); w; w =widgets.next() ) |
1454 | { | 1455 | { |
1455 | if ( w->inherits( "KToolBarSeparator" ) && | 1456 | if ( w->inherits( "KToolBarSeparator" ) && |
1456 | !( static_cast<KToolBarSeparator*>(w)->showLine() ) ) | 1457 | !( static_cast<KToolBarSeparator*>(w)->showLine() ) ) |
1457 | { | 1458 | { |
1458 | minSize += QSize(6, 0); | 1459 | minSize += QSize(6, 0); |
1459 | } | 1460 | } |
1460 | else | 1461 | else |
1461 | { | 1462 | { |
1462 | QSize sh = w->sizeHint(); | 1463 | QSize sh = w->sizeHint(); |
1463 | if (!sh.isValid()) | 1464 | if (!sh.isValid()) |
1464 | sh = w->minimumSize(); | 1465 | sh = w->minimumSize(); |
1465 | minSize = minSize.expandedTo(QSize(0, sh.height())); | 1466 | minSize = minSize.expandedTo(QSize(0, sh.height())); |
1466 | minSize += QSize(sh.width()+1, 0); | 1467 | minSize += QSize(sh.width()+1, 0); |
1467 | } | 1468 | } |
1468 | } | 1469 | } |
1469 | /*US | 1470 | /*US |
1470 | minSize += QSize(QApplication::style().pixelMetric( QStyle::PM_DockWindowHandleExtent ), 0); | 1471 | minSize += QSize(QApplication::style().pixelMetric( QStyle::PM_DockWindowHandleExtent ), 0); |
1471 | */ | 1472 | */ |
1472 | minSize += QSize(margin*2, margin*2); | 1473 | minSize += QSize(margin*2, margin*2); |
1473 | break; | 1474 | break; |
1474 | 1475 | ||
1475 | case KToolBar::Left: | 1476 | case KToolBar::Left: |
1476 | case KToolBar::Right: | 1477 | case KToolBar::Right: |
1477 | for ( QWidget *w = widgets.first(); w; w = widgets.next() ) | 1478 | for ( QWidget *w = widgets.first(); w; w = widgets.next() ) |
1478 | { | 1479 | { |
1479 | if ( w->inherits( "KToolBarSeparator" ) && | 1480 | if ( w->inherits( "KToolBarSeparator" ) && |
1480 | !( static_cast<KToolBarSeparator*>(w)->showLine() ) ) | 1481 | !( static_cast<KToolBarSeparator*>(w)->showLine() ) ) |
1481 | { | 1482 | { |
1482 | minSize += QSize(0, 6); | 1483 | minSize += QSize(0, 6); |
1483 | } | 1484 | } |
1484 | else | 1485 | else |
1485 | { | 1486 | { |
1486 | QSize sh = w->sizeHint(); | 1487 | QSize sh = w->sizeHint(); |
1487 | if (!sh.isValid()) | 1488 | if (!sh.isValid()) |
1488 | sh = w->minimumSize(); | 1489 | sh = w->minimumSize(); |
1489 | minSize = minSize.expandedTo(QSize(sh.width(), 0)); | 1490 | minSize = minSize.expandedTo(QSize(sh.width(), 0)); |
1490 | minSize += QSize(0, sh.height()+1); | 1491 | minSize += QSize(0, sh.height()+1); |
1491 | } | 1492 | } |
1492 | } | 1493 | } |
1493 | /*US | 1494 | /*US |
1494 | minSize += QSize(0, QApplication::style().pixelMetric( QStyle::PM_DockWindowHandleExtent )); | 1495 | minSize += QSize(0, QApplication::style().pixelMetric( QStyle::PM_DockWindowHandleExtent )); |
1495 | */ | 1496 | */ |
1496 | minSize += QSize(margin*2, margin*2); | 1497 | minSize += QSize(margin*2, margin*2); |
1497 | break; | 1498 | break; |
1498 | 1499 | ||
1499 | default: | 1500 | default: |
1500 | minSize = QToolBar::sizeHint(); | 1501 | minSize = QToolBar::sizeHint(); |
1501 | break; | 1502 | break; |
1502 | } | 1503 | } |
1503 | return minSize; | 1504 | return minSize; |
1504 | #endif | 1505 | #endif |
1505 | } | 1506 | } |
1506 | 1507 | ||
1507 | QSize KToolBar::minimumSize() const | 1508 | QSize KToolBar::minimumSize() const |
1508 | { | 1509 | { |
1509 | return minimumSizeHint(); | 1510 | return minimumSizeHint(); |
1510 | } | 1511 | } |
1511 | 1512 | ||
1512 | QSize KToolBar::minimumSizeHint() const | 1513 | QSize KToolBar::minimumSizeHint() const |
1513 | { | 1514 | { |
1514 | return sizeHint(); | 1515 | return sizeHint(); |
1515 | } | 1516 | } |
1516 | 1517 | ||
1517 | bool KToolBar::highlight() const | 1518 | bool KToolBar::highlight() const |
1518 | { | 1519 | { |
1519 | return d->m_highlight; | 1520 | return d->m_highlight; |
1520 | } | 1521 | } |
1521 | 1522 | ||
1522 | void KToolBar::hide() | 1523 | void KToolBar::hide() |
1523 | { | 1524 | { |
1524 | QToolBar::hide(); | 1525 | QToolBar::hide(); |
1525 | } | 1526 | } |
1526 | 1527 | ||
1527 | void KToolBar::show() | 1528 | void KToolBar::show() |
1528 | { | 1529 | { |
1529 | QToolBar::show(); | 1530 | QToolBar::show(); |
1530 | } | 1531 | } |
1531 | 1532 | ||
1532 | void KToolBar::resizeEvent( QResizeEvent *e ) | 1533 | void KToolBar::resizeEvent( QResizeEvent *e ) |
1533 | { | 1534 | { |
1534 | bool b = isUpdatesEnabled(); | 1535 | bool b = isUpdatesEnabled(); |
1535 | setUpdatesEnabled( FALSE ); | 1536 | setUpdatesEnabled( FALSE ); |
1536 | QToolBar::resizeEvent( e ); | 1537 | QToolBar::resizeEvent( e ); |
1537 | if (b) | 1538 | if (b) |
1538 | d->repaintTimer.start( 100, true ); | 1539 | d->repaintTimer.start( 100, true ); |
1539 | } | 1540 | } |
1540 | 1541 | ||
1541 | void KToolBar::slotIconChanged(int group) | 1542 | void KToolBar::slotIconChanged(int group) |
1542 | { | 1543 | { |
1543 | if ((group != KIcon::Toolbar) && (group != KIcon::MainToolbar)) | 1544 | if ((group != KIcon::Toolbar) && (group != KIcon::MainToolbar)) |
1544 | return; | 1545 | return; |
1545 | if ((group == KIcon::MainToolbar) != !::qstrcmp(name(), "mainToolBar")) | 1546 | if ((group == KIcon::MainToolbar) != !::qstrcmp(name(), "mainToolBar")) |
1546 | return; | 1547 | return; |
1547 | 1548 | ||
1548 | emit modechange(); | 1549 | emit modechange(); |
1549 | if (isVisible()) | 1550 | if (isVisible()) |
1550 | updateGeometry(); | 1551 | updateGeometry(); |
1551 | } | 1552 | } |
1552 | 1553 | ||
1553 | void KToolBar::slotReadConfig() | 1554 | void KToolBar::slotReadConfig() |
1554 | { | 1555 | { |
1555 | //kdDebug(220) << "KToolBar::slotReadConfig" << endl; | 1556 | //kdDebug(220) << "KToolBar::slotReadConfig" << endl; |
1556 | // Read appearance settings (hmm, we used to do both here, | 1557 | // Read appearance settings (hmm, we used to do both here, |
1557 | // but a well behaved application will call applyMainWindowSettings | 1558 | // but a well behaved application will call applyMainWindowSettings |
1558 | // anyway, right ?) | 1559 | // anyway, right ?) |
1559 | applyAppearanceSettings(KGlobal::config(), QString::null ); | 1560 | applyAppearanceSettings(KGlobal::config(), QString::null ); |
1560 | } | 1561 | } |
1561 | 1562 | ||
1562 | void KToolBar::slotAppearanceChanged() | 1563 | void KToolBar::slotAppearanceChanged() |
1563 | { | 1564 | { |
1564 | // Read appearance settings from global file. | 1565 | // Read appearance settings from global file. |
1565 | applyAppearanceSettings(KGlobal::config(), QString::null, true /* lose local settings */ ); | 1566 | applyAppearanceSettings(KGlobal::config(), QString::null, true /* lose local settings */ ); |
1566 | // And remember to save the new look later | 1567 | // And remember to save the new look later |
1567 | /*US | 1568 | /*US |
1568 | if ( mainWindow() && mainWindow()->inherits( "KMainWindow" ) ) | 1569 | if ( mainWindow() && mainWindow()->inherits( "KMainWindow" ) ) |
1569 | static_cast<KMainWindow *>(mainWindow())->setSettingsDirty(); | 1570 | static_cast<KMainWindow *>(mainWindow())->setSettingsDirty(); |
1570 | */ | 1571 | */ |
1571 | } | 1572 | } |
1572 | 1573 | ||
1573 | //static | 1574 | //static |
1574 | bool KToolBar::highlightSetting() | 1575 | bool KToolBar::highlightSetting() |
1575 | { | 1576 | { |
1576 | QString grpToolbar(QString::fromLatin1("Toolbar style")); | 1577 | QString grpToolbar(QString::fromLatin1("Toolbar style")); |
1577 | KConfigGroupSaver saver(KGlobal::config(), grpToolbar); | 1578 | KConfigGroupSaver saver(KGlobal::config(), grpToolbar); |
1578 | return KGlobal::config()->readBoolEntry(QString::fromLatin1("Highlighting"),true); | 1579 | return KGlobal::config()->readBoolEntry(QString::fromLatin1("Highlighting"),true); |
1579 | } | 1580 | } |
1580 | 1581 | ||
1581 | //static | 1582 | //static |
1582 | bool KToolBar::transparentSetting() | 1583 | bool KToolBar::transparentSetting() |
1583 | { | 1584 | { |
1584 | QString grpToolbar(QString::fromLatin1("Toolbar style")); | 1585 | QString grpToolbar(QString::fromLatin1("Toolbar style")); |
1585 | KConfigGroupSaver saver(KGlobal::config(), grpToolbar); | 1586 | KConfigGroupSaver saver(KGlobal::config(), grpToolbar); |
1586 | return KGlobal::config()->readBoolEntry(QString::fromLatin1("TransparentMoving"),true); | 1587 | return KGlobal::config()->readBoolEntry(QString::fromLatin1("TransparentMoving"),true); |
1587 | } | 1588 | } |
1588 | 1589 | ||
1589 | //static | 1590 | //static |
1590 | KToolBar::IconText KToolBar::iconTextSetting() | 1591 | KToolBar::IconText KToolBar::iconTextSetting() |
1591 | { | 1592 | { |
1592 | QString grpToolbar(QString::fromLatin1("Toolbar style")); | 1593 | QString grpToolbar(QString::fromLatin1("Toolbar style")); |
1593 | KConfigGroupSaver saver(KGlobal::config(), grpToolbar); | 1594 | KConfigGroupSaver saver(KGlobal::config(), grpToolbar); |
1594 | QString icontext = KGlobal::config()->readEntry(QString::fromLatin1("IconText"),QString::fromLatin1("IconOnly")); | 1595 | QString icontext = KGlobal::config()->readEntry(QString::fromLatin1("IconText"),QString::fromLatin1("IconOnly")); |
1595 | if ( icontext == "IconTextRight" ) | 1596 | if ( icontext == "IconTextRight" ) |
1596 | return IconTextRight; | 1597 | return IconTextRight; |
1597 | else if ( icontext == "IconTextBottom" ) | 1598 | else if ( icontext == "IconTextBottom" ) |
1598 | return IconTextBottom; | 1599 | return IconTextBottom; |
1599 | else if ( icontext == "TextOnly" ) | 1600 | else if ( icontext == "TextOnly" ) |
1600 | return TextOnly; | 1601 | return TextOnly; |
1601 | else | 1602 | else |
1602 | return IconOnly; | 1603 | return IconOnly; |
1603 | } | 1604 | } |
1604 | 1605 | ||
1605 | void KToolBar::applyAppearanceSettings(KConfig *config, const QString &_configGroup, bool forceGlobal) | 1606 | void KToolBar::applyAppearanceSettings(KConfig *config, const QString &_configGroup, bool forceGlobal) |
1606 | { | 1607 | { |
1608 | return; | ||
1607 | QString configGroup = _configGroup.isEmpty() ? settingsGroup() : _configGroup; | 1609 | QString configGroup = _configGroup.isEmpty() ? settingsGroup() : _configGroup; |
1608 | //kdDebug(220) << "KToolBar::applyAppearanceSettings: configGroup=" << configGroup << endl; | 1610 | //kdDebug(220) << "KToolBar::applyAppearanceSettings: configGroup=" << configGroup << endl; |
1609 | // We have application-specific settings in the XML file, | 1611 | // We have application-specific settings in the XML file, |
1610 | // and nothing in the application's config file | 1612 | // and nothing in the application's config file |
1611 | // -> don't apply the global defaults, the XML ones are preferred | 1613 | // -> don't apply the global defaults, the XML ones are preferred |
1612 | // See applySettings for a full explanation | 1614 | // See applySettings for a full explanation |
1613 | /*US :we do not support xml files | 1615 | /*US :we do not support xml files |
1614 | if ( d->m_xmlguiClient && !d->m_xmlguiClient->xmlFile().isEmpty() && | 1616 | if ( d->m_xmlguiClient && !d->m_xmlguiClient->xmlFile().isEmpty() && |
1615 | !config->hasGroup(configGroup) ) | 1617 | !config->hasGroup(configGroup) ) |
1616 | { | 1618 | { |
1617 | //kdDebug(220) << "skipping global defaults, using XML ones instead" << endl; | 1619 | //kdDebug(220) << "skipping global defaults, using XML ones instead" << endl; |
1618 | return; | 1620 | return; |
1619 | } | 1621 | } |
1620 | */ | 1622 | */ |
1621 | if ( !config->hasGroup(configGroup) ) | 1623 | if ( !config->hasGroup(configGroup) ) |
1622 | { | 1624 | { |
1623 | //kdDebug(220) << "skipping global defaults, using XML ones instead" << endl; | 1625 | //kdDebug(220) << "skipping global defaults, using XML ones instead" << endl; |
1624 | return; | 1626 | return; |
1625 | } | 1627 | } |
1626 | 1628 | ||
1627 | 1629 | ||
1628 | KConfig *gconfig = KGlobal::config(); | 1630 | KConfig *gconfig = KGlobal::config(); |
1629 | /*US | 1631 | /*US |
1630 | static const QString &attrIconText = KGlobal::staticQString("IconText"); | 1632 | static const QString &attrIconText = KGlobal::staticQString("IconText"); |
1631 | static const QString &attrHighlight = KGlobal::staticQString("Highlighting"); | 1633 | static const QString &attrHighlight = KGlobal::staticQString("Highlighting"); |
1632 | static const QString &attrTrans = KGlobal::staticQString("TransparentMoving"); | 1634 | static const QString &attrTrans = KGlobal::staticQString("TransparentMoving"); |
1633 | static const QString &attrSize = KGlobal::staticQString("IconSize"); | 1635 | static const QString &attrSize = KGlobal::staticQString("IconSize"); |
1634 | */ | 1636 | */ |
1635 | // we actually do this in two steps. | 1637 | // we actually do this in two steps. |
1636 | // First, we read in the global styles [Toolbar style] (from the KControl module). | 1638 | // First, we read in the global styles [Toolbar style] (from the KControl module). |
1637 | // Then, if the toolbar is NOT 'mainToolBar', we will also try to read in [barname Toolbar style] | 1639 | // Then, if the toolbar is NOT 'mainToolBar', we will also try to read in [barname Toolbar style] |
1638 | bool highlight; | 1640 | bool highlight; |
1639 | int transparent; | 1641 | int transparent; |
1640 | QString icontext; | 1642 | QString icontext; |
1641 | int iconsize = 0; | 1643 | int iconsize = 0; |
1642 | 1644 | ||
1643 | // this is the first iteration | 1645 | // this is the first iteration |
1644 | QString grpToolbar(QString::fromLatin1("Toolbar style")); | 1646 | QString grpToolbar(QString::fromLatin1("Toolbar style")); |
1645 | { // start block for KConfigGroupSaver | 1647 | { // start block for KConfigGroupSaver |
1646 | KConfigGroupSaver saver(gconfig, grpToolbar); | 1648 | KConfigGroupSaver saver(gconfig, grpToolbar); |
1647 | 1649 | ||
1648 | // first, get the generic settings | 1650 | // first, get the generic settings |
1649 | //US highlight = gconfig->readBoolEntry(attrHighlight, true); | 1651 | //US highlight = gconfig->readBoolEntry(attrHighlight, true); |
1650 | highlight = gconfig->readBoolEntry("Highlighting", true); | 1652 | highlight = gconfig->readBoolEntry("Highlighting", true); |
1651 | //US transparent = gconfig->readBoolEntry(attrTrans, true); | 1653 | //US transparent = gconfig->readBoolEntry(attrTrans, true); |
1652 | transparent = gconfig->readBoolEntry("TransparentMoving", true); | 1654 | transparent = gconfig->readBoolEntry("TransparentMoving", true); |
1653 | 1655 | ||
1654 | // we read in the IconText property *only* if we intend on actually | 1656 | // we read in the IconText property *only* if we intend on actually |
1655 | // honoring it | 1657 | // honoring it |
1656 | if (d->m_honorStyle) | 1658 | if (d->m_honorStyle) |
1657 | //US d->IconTextDefault = gconfig->readEntry(attrIconText, d->IconTextDefault); | 1659 | //US d->IconTextDefault = gconfig->readEntry(attrIconText, d->IconTextDefault); |
1658 | d->IconTextDefault = gconfig->readEntry("IconText", d->IconTextDefault); | 1660 | d->IconTextDefault = gconfig->readEntry("IconText", d->IconTextDefault); |
1659 | else | 1661 | else |
1660 | d->IconTextDefault = "IconOnly"; | 1662 | d->IconTextDefault = "IconOnly"; |
1661 | 1663 | ||
1662 | // Use the default icon size for toolbar icons. | 1664 | // Use the default icon size for toolbar icons. |
1663 | //US d->IconSizeDefault = gconfig->readNumEntry(attrSize, d->IconSizeDefault); | 1665 | //US d->IconSizeDefault = gconfig->readNumEntry(attrSize, d->IconSizeDefault); |
1664 | d->IconSizeDefault = gconfig->readNumEntry("IconSize", d->IconSizeDefault); | 1666 | d->IconSizeDefault = gconfig->readNumEntry("IconSize", d->IconSizeDefault); |
1665 | 1667 | ||
1666 | if ( !forceGlobal && config->hasGroup(configGroup) ) | 1668 | if ( !forceGlobal && config->hasGroup(configGroup) ) |
1667 | { | 1669 | { |
1668 | config->setGroup(configGroup); | 1670 | config->setGroup(configGroup); |
1669 | 1671 | ||
1670 | // first, get the generic settings | 1672 | // first, get the generic settings |
1671 | //US highlight = config->readBoolEntry(attrHighlight, highlight); | 1673 | //US highlight = config->readBoolEntry(attrHighlight, highlight); |
1672 | highlight = config->readBoolEntry("Highlighting", highlight); | 1674 | highlight = config->readBoolEntry("Highlighting", highlight); |
1673 | //US transparent = config->readBoolEntry(attrTrans, transparent); | 1675 | //US transparent = config->readBoolEntry(attrTrans, transparent); |
1674 | transparent = config->readBoolEntry("TransparentMoving", transparent); | 1676 | transparent = config->readBoolEntry("TransparentMoving", transparent); |
1675 | // now we always read in the IconText property | 1677 | // now we always read in the IconText property |
1676 | //US icontext = config->readEntry(attrIconText, d->IconTextDefault); | 1678 | //US icontext = config->readEntry(attrIconText, d->IconTextDefault); |
1677 | icontext = config->readEntry("IconText", d->IconTextDefault); | 1679 | icontext = config->readEntry("IconText", d->IconTextDefault); |
1678 | 1680 | ||
1679 | // now get the size | 1681 | // now get the size |
1680 | //US iconsize = config->readNumEntry(attrSize, d->IconSizeDefault); | 1682 | //US iconsize = config->readNumEntry(attrSize, d->IconSizeDefault); |
1681 | iconsize = config->readNumEntry("IconSize", d->IconSizeDefault); | 1683 | iconsize = config->readNumEntry("IconSize", d->IconSizeDefault); |
1682 | } | 1684 | } |
1683 | else | 1685 | else |
1684 | { | 1686 | { |
1685 | iconsize = d->IconSizeDefault; | 1687 | iconsize = d->IconSizeDefault; |
1686 | icontext = d->IconTextDefault; | 1688 | icontext = d->IconTextDefault; |
1687 | } | 1689 | } |
1688 | 1690 | ||
1689 | // revert back to the old group | 1691 | // revert back to the old group |
1690 | } // end block for KConfigGroupSaver | 1692 | } // end block for KConfigGroupSaver |
1691 | 1693 | ||
1692 | bool doUpdate = false; | 1694 | bool doUpdate = false; |
1693 | 1695 | ||
1694 | IconText icon_text; | 1696 | IconText icon_text; |
1695 | if ( icontext == "IconTextRight" ) | 1697 | if ( icontext == "IconTextRight" ) |
1696 | icon_text = IconTextRight; | 1698 | icon_text = IconTextRight; |
1697 | else if ( icontext == "IconTextBottom" ) | 1699 | else if ( icontext == "IconTextBottom" ) |
1698 | icon_text = IconTextBottom; | 1700 | icon_text = IconTextBottom; |
1699 | else if ( icontext == "TextOnly" ) | 1701 | else if ( icontext == "TextOnly" ) |
1700 | icon_text = TextOnly; | 1702 | icon_text = TextOnly; |
1701 | else | 1703 | else |
1702 | icon_text = IconOnly; | 1704 | icon_text = IconOnly; |
1703 | 1705 | ||
1704 | // check if the icon/text has changed | 1706 | // check if the icon/text has changed |
1705 | if (icon_text != d->m_iconText) { | 1707 | if (icon_text != d->m_iconText) { |
1706 | //kdDebug(220) << "KToolBar::applyAppearanceSettings setIconText " << icon_text << endl; | 1708 | //kdDebug(220) << "KToolBar::applyAppearanceSettings setIconText " << icon_text << endl; |
1707 | setIconText(icon_text, false); | 1709 | setIconText(icon_text, false); |
1708 | doUpdate = true; | 1710 | doUpdate = true; |
1709 | } | 1711 | } |
1710 | 1712 | ||
1711 | // ...and check if the icon size has changed | 1713 | // ...and check if the icon size has changed |
1712 | if (iconsize != d->m_iconSize) { | 1714 | if (iconsize != d->m_iconSize) { |
1713 | setIconSize(iconsize, false); | 1715 | setIconSize(iconsize, false); |
1714 | doUpdate = true; | 1716 | doUpdate = true; |
1715 | } | 1717 | } |
1716 | 1718 | ||
1717 | QMainWindow *mw = mainWindow(); | 1719 | QMainWindow *mw = mainWindow(); |
1718 | 1720 | ||
1719 | // ...and if we should highlight | 1721 | // ...and if we should highlight |
1720 | if ( highlight != d->m_highlight ) { | 1722 | if ( highlight != d->m_highlight ) { |
1721 | d->m_highlight = highlight; | 1723 | d->m_highlight = highlight; |
1722 | doUpdate = true; | 1724 | doUpdate = true; |
1723 | } | 1725 | } |
1724 | 1726 | ||
1725 | // ...and if we should move transparently | 1727 | // ...and if we should move transparently |
1726 | if ( mw && transparent != (!mw->opaqueMoving()) ) { | 1728 | if ( mw && transparent != (!mw->opaqueMoving()) ) { |
1727 | mw->setOpaqueMoving( !transparent ); | 1729 | mw->setOpaqueMoving( !transparent ); |
1728 | } | 1730 | } |
1729 | 1731 | ||
1730 | if (doUpdate) | 1732 | if (doUpdate) |
1731 | emit modechange(); // tell buttons what happened | 1733 | emit modechange(); // tell buttons what happened |
1732 | if (isVisible ()) | 1734 | if (isVisible ()) |
1733 | updateGeometry(); | 1735 | updateGeometry(); |
1734 | } | 1736 | } |
1735 | 1737 | ||
1736 | void KToolBar::applySettings(KConfig *config, const QString &_configGroup) | 1738 | void KToolBar::applySettings(KConfig *config, const QString &_configGroup) |
1737 | { | 1739 | { |
1738 | //kdDebug(220) << "KToolBar::applySettings group=" << _configGroup << endl; | 1740 | //kdDebug(220) << "KToolBar::applySettings group=" << _configGroup << endl; |
1739 | 1741 | ||
1740 | QString configGroup = _configGroup.isEmpty() ? settingsGroup() : _configGroup; | 1742 | QString configGroup = _configGroup.isEmpty() ? settingsGroup() : _configGroup; |
1741 | 1743 | ||
1742 | /* | 1744 | /* |
1743 | Let's explain this a bit more in details. | 1745 | Let's explain this a bit more in details. |
1744 | The order in which we apply settings is : | 1746 | The order in which we apply settings is : |
1745 | Global config / <appnamerc> user settings if no XMLGUI is used | 1747 | Global config / <appnamerc> user settings if no XMLGUI is used |
1746 | Global config / App-XML attributes / <appnamerc> user settings if XMLGUI is used | 1748 | Global config / App-XML attributes / <appnamerc> user settings if XMLGUI is used |
1747 | 1749 | ||
1748 | So in the first case, we simply read everything from KConfig as below, | 1750 | So in the first case, we simply read everything from KConfig as below, |
1749 | but in the second case we don't do anything here if there is no app-specific config, | 1751 | but in the second case we don't do anything here if there is no app-specific config, |
1750 | and the XMLGUI uses the static methods of this class to get the global defaults. | 1752 | and the XMLGUI uses the static methods of this class to get the global defaults. |
1751 | 1753 | ||
1752 | Global config doesn't include position (index, offset, newline and hidden/shown). | 1754 | Global config doesn't include position (index, offset, newline and hidden/shown). |
1753 | */ | 1755 | */ |
1754 | 1756 | ||
1755 | // First the appearance stuff - the one which has a global config | 1757 | // First the appearance stuff - the one which has a global config |
1756 | applyAppearanceSettings( config, _configGroup ); | 1758 | applyAppearanceSettings( config, _configGroup ); |
1757 | 1759 | ||
1758 | // ...and now the position stuff | 1760 | // ...and now the position stuff |
1759 | if ( config->hasGroup(configGroup) ) | 1761 | if ( config->hasGroup(configGroup) ) |
1760 | { | 1762 | { |
1761 | KConfigGroupSaver cgs(config, configGroup); | 1763 | KConfigGroupSaver cgs(config, configGroup); |
1762 | /*US | 1764 | /*US |
1763 | static const QString &attrPosition = KGlobal::staticQString("Position"); | 1765 | static const QString &attrPosition = KGlobal::staticQString("Position"); |
1764 | static const QString &attrIndex = KGlobal::staticQString("Index"); | 1766 | static const QString &attrIndex = KGlobal::staticQString("Index"); |
1765 | static const QString &attrOffset = KGlobal::staticQString("Offset"); | 1767 | static const QString &attrOffset = KGlobal::staticQString("Offset"); |
1766 | static const QString &attrNewLine = KGlobal::staticQString("NewLine"); | 1768 | static const QString &attrNewLine = KGlobal::staticQString("NewLine"); |
1767 | static const QString &attrHidden = KGlobal::staticQString("Hidden"); | 1769 | static const QString &attrHidden = KGlobal::staticQString("Hidden"); |
1768 | 1770 | ||
1769 | QString position = config->readEntry(attrPosition, d->PositionDefault); | 1771 | QString position = config->readEntry(attrPosition, d->PositionDefault); |
1770 | int index = config->readNumEntry(attrIndex, d->IndexDefault); | 1772 | int index = config->readNumEntry(attrIndex, d->IndexDefault); |
1771 | int offset = config->readNumEntry(attrOffset, d->OffsetDefault); | 1773 | int offset = config->readNumEntry(attrOffset, d->OffsetDefault); |
1772 | bool newLine = config->readBoolEntry(attrNewLine, d->NewLineDefault); | 1774 | bool newLine = config->readBoolEntry(attrNewLine, d->NewLineDefault); |
1773 | bool hidden = config->readBoolEntry(attrHidden, d->HiddenDefault); | 1775 | bool hidden = config->readBoolEntry(attrHidden, d->HiddenDefault); |
1774 | */ | 1776 | */ |
1775 | 1777 | ||
1776 | QString position = config->readEntry("Position", d->PositionDefault); | 1778 | QString position = config->readEntry("Position", d->PositionDefault); |
1777 | int index = config->readNumEntry("Index", d->IndexDefault); | 1779 | int index = config->readNumEntry("Index", d->IndexDefault); |
1778 | int offset = config->readNumEntry("Offset", d->OffsetDefault); | 1780 | int offset = config->readNumEntry("Offset", d->OffsetDefault); |
1779 | bool newLine = config->readBoolEntry("NewLine", d->NewLineDefault); | 1781 | bool newLine = config->readBoolEntry("NewLine", d->NewLineDefault); |
1780 | bool hidden = config->readBoolEntry("Hidden", d->HiddenDefault); | 1782 | bool hidden = config->readBoolEntry("Hidden", d->HiddenDefault); |
1781 | 1783 | ||
1782 | /*US Dock pos(DockTop); | 1784 | /*US Dock pos(DockTop); |
1783 | if ( position == "Top" ) | 1785 | if ( position == "Top" ) |
1784 | pos = DockTop; | 1786 | pos = DockTop; |
1785 | else if ( position == "Bottom" ) | 1787 | else if ( position == "Bottom" ) |
1786 | pos = DockBottom; | 1788 | pos = DockBottom; |
1787 | else if ( position == "Left" ) | 1789 | else if ( position == "Left" ) |
1788 | pos = DockLeft; | 1790 | pos = DockLeft; |
1789 | else if ( position == "Right" ) | 1791 | else if ( position == "Right" ) |
1790 | pos = DockRight; | 1792 | pos = DockRight; |
1791 | else if ( position == "Floating" ) | 1793 | else if ( position == "Floating" ) |
1792 | pos = DockTornOff; | 1794 | pos = DockTornOff; |
1793 | else if ( position == "Flat" ) | 1795 | else if ( position == "Flat" ) |
1794 | pos = DockMinimized; | 1796 | pos = DockMinimized; |
1795 | */ | 1797 | */ |
1796 | QMainWindow::ToolBarDock pos(QMainWindow::Top); | 1798 | QMainWindow::ToolBarDock pos(QMainWindow::Top); |
1797 | if ( position == "Top" ) | 1799 | if ( position == "Top" ) |
1798 | pos = QMainWindow::Top; | 1800 | pos = QMainWindow::Top; |
1799 | else if ( position == "Bottom" ) | 1801 | else if ( position == "Bottom" ) |
1800 | pos = QMainWindow::Bottom; | 1802 | pos = QMainWindow::Bottom; |
1801 | else if ( position == "Left" ) | 1803 | else if ( position == "Left" ) |
1802 | pos = QMainWindow::Left; | 1804 | pos = QMainWindow::Left; |
1803 | else if ( position == "Right" ) | 1805 | else if ( position == "Right" ) |
1804 | pos = QMainWindow::Right; | 1806 | pos = QMainWindow::Right; |
1805 | else if ( position == "Floating" ) | 1807 | else if ( position == "Floating" ) |
1806 | pos = QMainWindow::TornOff; | 1808 | pos = QMainWindow::TornOff; |
1807 | else if ( position == "Flat" ) | 1809 | else if ( position == "Flat" ) |
1808 | pos = QMainWindow::Minimized; | 1810 | pos = QMainWindow::Minimized; |
1809 | 1811 | ||
1810 | //kdDebug(220) << "KToolBar::applySettings hidden=" << hidden << endl; | 1812 | //kdDebug(220) << "KToolBar::applySettings hidden=" << hidden << endl; |
1811 | if (hidden) | 1813 | if (hidden) |
1812 | hide(); | 1814 | hide(); |
1813 | else | 1815 | else |
1814 | show(); | 1816 | show(); |
1815 | 1817 | ||
1816 | if ( mainWindow() ) | 1818 | if ( mainWindow() ) |
1817 | { | 1819 | { |
1818 | QMainWindow *mw = mainWindow(); | 1820 | QMainWindow *mw = mainWindow(); |
1819 | 1821 | ||
1820 | //kdDebug(220) << "KToolBar::applySettings updating ToolbarInfo" << endl; | 1822 | //kdDebug(220) << "KToolBar::applySettings updating ToolbarInfo" << endl; |
1821 | d->toolBarInfo = KToolBarPrivate::ToolBarInfo( pos, index, newLine, offset ); | 1823 | d->toolBarInfo = KToolBarPrivate::ToolBarInfo( pos, index, newLine, offset ); |
1822 | 1824 | ||
1823 | // moveDockWindow calls QDockArea which does a reparent() on us with | 1825 | // moveDockWindow calls QDockArea which does a reparent() on us with |
1824 | // showIt = true, so we loose our visibility status | 1826 | // showIt = true, so we loose our visibility status |
1825 | bool doHide = isHidden(); | 1827 | bool doHide = isHidden(); |
1826 | 1828 | ||
1827 | //US mw->moveDockWindow( this, pos, newLine, index, offset ); | 1829 | //US mw->moveDockWindow( this, pos, newLine, index, offset ); |
1828 | mw->moveToolBar( this, pos, newLine, index, offset ); | 1830 | mw->moveToolBar( this, pos, newLine, index, offset ); |
1829 | 1831 | ||
1830 | //kdDebug(220) << "KToolBar::applySettings " << name() << " moveDockWindow with pos=" << pos << " newLine=" << newLine << " idx=" << index << " offs=" << offset << endl; | 1832 | //kdDebug(220) << "KToolBar::applySettings " << name() << " moveDockWindow with pos=" << pos << " newLine=" << newLine << " idx=" << index << " offs=" << offset << endl; |
1831 | if ( doHide ) | 1833 | if ( doHide ) |
1832 | hide(); | 1834 | hide(); |
1833 | } | 1835 | } |
1834 | if (isVisible ()) | 1836 | if (isVisible ()) |
1835 | updateGeometry(); | 1837 | updateGeometry(); |
1836 | } | 1838 | } |
1837 | } | 1839 | } |
1838 | 1840 | ||
1839 | bool KToolBar::event( QEvent *e ) | 1841 | bool KToolBar::event( QEvent *e ) |
1840 | { | 1842 | { |
1841 | if ( (e->type() == QEvent::LayoutHint) && isUpdatesEnabled() ) | 1843 | if ( (e->type() == QEvent::LayoutHint) && isUpdatesEnabled() ) |
1842 | d->repaintTimer.start( 100, true ); | 1844 | d->repaintTimer.start( 100, true ); |
1843 | 1845 | ||
1844 | if (e->type() == QEvent::ChildInserted ) | 1846 | if (e->type() == QEvent::ChildInserted ) |
1845 | { | 1847 | { |
1846 | // By pass QToolBar::event, | 1848 | // By pass QToolBar::event, |
1847 | // it will show() the inserted child and we don't want to | 1849 | // it will show() the inserted child and we don't want to |
1848 | // do that until we have rebuild the layout. | 1850 | // do that until we have rebuild the layout. |
1849 | childEvent((QChildEvent *)e); | 1851 | childEvent((QChildEvent *)e); |
1850 | return true; | 1852 | return true; |
1851 | } | 1853 | } |
1852 | 1854 | ||
1853 | return QToolBar::event( e ); | 1855 | return QToolBar::event( e ); |
1854 | } | 1856 | } |
1855 | 1857 | ||
1856 | void KToolBar::slotRepaint() | 1858 | void KToolBar::slotRepaint() |
1857 | { | 1859 | { |
1858 | setUpdatesEnabled( FALSE ); | 1860 | setUpdatesEnabled( FALSE ); |
1859 | // Send a resizeEvent to update the "toolbar extension arrow" | 1861 | // Send a resizeEvent to update the "toolbar extension arrow" |
1860 | // (The button you get when your toolbar-items don't fit in | 1862 | // (The button you get when your toolbar-items don't fit in |
1861 | // the available space) | 1863 | // the available space) |
1862 | QResizeEvent ev(size(), size()); | 1864 | QResizeEvent ev(size(), size()); |