summaryrefslogtreecommitdiffabout
path: root/microkde
authorzautrix <zautrix>2005-08-23 21:48:53 (UTC)
committer zautrix <zautrix>2005-08-23 21:48:53 (UTC)
commit2acca9aff5bd651923b5d728712a0fd80b3d54e9 (patch) (unidiff)
treec2113d441908520d86902a8a9fade08eb05ee0d0 /microkde
parent6f5464760f5fb1e4c13027464cfe4943b85d29a0 (diff)
downloadkdepimpi-2acca9aff5bd651923b5d728712a0fd80b3d54e9.zip
kdepimpi-2acca9aff5bd651923b5d728712a0fd80b3d54e9.tar.gz
kdepimpi-2acca9aff5bd651923b5d728712a0fd80b3d54e9.tar.bz2
fastload fixes
Diffstat (limited to 'microkde') (more/less context) (ignore whitespace changes)
-rw-r--r--microkde/kdeui/ktoolbar.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/microkde/kdeui/ktoolbar.cpp b/microkde/kdeui/ktoolbar.cpp
index 36ede81..df2aad8 100644
--- a/microkde/kdeui/ktoolbar.cpp
+++ b/microkde/kdeui/ktoolbar.cpp
@@ -650,1543 +650,1543 @@ void KToolBar::insertComboItem (int id, const QString& text, int index)
650 if ( it == id2widget.end() ) 650 if ( it == id2widget.end() )
651 return; 651 return;
652//US QComboBox * comboBox = dynamic_cast<QComboBox *>( *it ); 652//US QComboBox * comboBox = dynamic_cast<QComboBox *>( *it );
653 QComboBox * comboBox = (QComboBox *)( *it ); 653 QComboBox * comboBox = (QComboBox *)( *it );
654 if (comboBox) 654 if (comboBox)
655 comboBox->insertItem( text, index ); 655 comboBox->insertItem( text, index );
656} 656}
657 657
658void KToolBar::insertComboList (int id, const QStringList &list, int index) 658void KToolBar::insertComboList (int id, const QStringList &list, int index)
659{ 659{
660 Id2WidgetMap::Iterator it = id2widget.find( id ); 660 Id2WidgetMap::Iterator it = id2widget.find( id );
661 if ( it == id2widget.end() ) 661 if ( it == id2widget.end() )
662 return; 662 return;
663//US QComboBox * comboBox = dynamic_cast<QComboBox *>( *it ); 663//US QComboBox * comboBox = dynamic_cast<QComboBox *>( *it );
664 QComboBox * comboBox = (QComboBox *)( *it ); 664 QComboBox * comboBox = (QComboBox *)( *it );
665 if (comboBox) 665 if (comboBox)
666 comboBox->insertStringList( list, index ); 666 comboBox->insertStringList( list, index );
667} 667}
668 668
669 669
670void KToolBar::removeComboItem (int id, int index) 670void KToolBar::removeComboItem (int id, int index)
671{ 671{
672 Id2WidgetMap::Iterator it = id2widget.find( id ); 672 Id2WidgetMap::Iterator it = id2widget.find( id );
673 if ( it == id2widget.end() ) 673 if ( it == id2widget.end() )
674 return; 674 return;
675//US QComboBox * comboBox = dynamic_cast<QComboBox *>( *it ); 675//US QComboBox * comboBox = dynamic_cast<QComboBox *>( *it );
676 QComboBox * comboBox = (QComboBox *)( *it ); 676 QComboBox * comboBox = (QComboBox *)( *it );
677 if (comboBox) 677 if (comboBox)
678 comboBox->removeItem( index ); 678 comboBox->removeItem( index );
679} 679}
680 680
681 681
682void KToolBar::setCurrentComboItem (int id, int index) 682void KToolBar::setCurrentComboItem (int id, int index)
683{ 683{
684 Id2WidgetMap::Iterator it = id2widget.find( id ); 684 Id2WidgetMap::Iterator it = id2widget.find( id );
685 if ( it == id2widget.end() ) 685 if ( it == id2widget.end() )
686 return; 686 return;
687//US QComboBox * comboBox = dynamic_cast<QComboBox *>( *it ); 687//US QComboBox * comboBox = dynamic_cast<QComboBox *>( *it );
688 QComboBox * comboBox = (QComboBox *)( *it ); 688 QComboBox * comboBox = (QComboBox *)( *it );
689 if (comboBox) 689 if (comboBox)
690 comboBox->setCurrentItem( index ); 690 comboBox->setCurrentItem( index );
691} 691}
692 692
693 693
694void KToolBar::changeComboItem (int id, const QString& text, int index) 694void KToolBar::changeComboItem (int id, const QString& text, int index)
695{ 695{
696 Id2WidgetMap::Iterator it = id2widget.find( id ); 696 Id2WidgetMap::Iterator it = id2widget.find( id );
697 if ( it == id2widget.end() ) 697 if ( it == id2widget.end() )
698 return; 698 return;
699//US QComboBox * comboBox = dynamic_cast<QComboBox *>( *it ); 699//US QComboBox * comboBox = dynamic_cast<QComboBox *>( *it );
700 QComboBox * comboBox = (QComboBox *)( *it ); 700 QComboBox * comboBox = (QComboBox *)( *it );
701 if (comboBox) 701 if (comboBox)
702 comboBox->changeItem( text, index ); 702 comboBox->changeItem( text, index );
703} 703}
704 704
705 705
706void KToolBar::clearCombo (int id) 706void KToolBar::clearCombo (int id)
707{ 707{
708 Id2WidgetMap::Iterator it = id2widget.find( id ); 708 Id2WidgetMap::Iterator it = id2widget.find( id );
709 if ( it == id2widget.end() ) 709 if ( it == id2widget.end() )
710 return; 710 return;
711//US QComboBox * comboBox = dynamic_cast<QComboBox *>( *it ); 711//US QComboBox * comboBox = dynamic_cast<QComboBox *>( *it );
712 QComboBox * comboBox = (QComboBox *)( *it ); 712 QComboBox * comboBox = (QComboBox *)( *it );
713 if (comboBox) 713 if (comboBox)
714 comboBox->clear(); 714 comboBox->clear();
715} 715}
716 716
717 717
718QString KToolBar::getComboItem (int id, int index) const 718QString KToolBar::getComboItem (int id, int index) const
719{ 719{
720 Id2WidgetMap::ConstIterator it = id2widget.find( id ); 720 Id2WidgetMap::ConstIterator it = id2widget.find( id );
721 if ( it == id2widget.end() ) 721 if ( it == id2widget.end() )
722 return QString::null; 722 return QString::null;
723//US QComboBox * comboBox = dynamic_cast<QComboBox *>( *it ); 723//US QComboBox * comboBox = dynamic_cast<QComboBox *>( *it );
724 QComboBox * comboBox = (QComboBox *)( *it ); 724 QComboBox * comboBox = (QComboBox *)( *it );
725 return comboBox ? comboBox->text( index ) : QString::null; 725 return comboBox ? comboBox->text( index ) : QString::null;
726} 726}
727 727
728 728
729KComboBox * KToolBar::getCombo(int id) 729KComboBox * KToolBar::getCombo(int id)
730{ 730{
731 Id2WidgetMap::Iterator it = id2widget.find( id ); 731 Id2WidgetMap::Iterator it = id2widget.find( id );
732 if ( it == id2widget.end() ) 732 if ( it == id2widget.end() )
733 return 0; 733 return 0;
734//US return dynamic_cast<KComboBox *>( *it ); 734//US return dynamic_cast<KComboBox *>( *it );
735 return (KComboBox *)( *it ); 735 return (KComboBox *)( *it );
736} 736}
737 737
738 738
739KLineEdit * KToolBar::getLined (int id) 739KLineEdit * KToolBar::getLined (int id)
740{ 740{
741 Id2WidgetMap::Iterator it = id2widget.find( id ); 741 Id2WidgetMap::Iterator it = id2widget.find( id );
742 if ( it == id2widget.end() ) 742 if ( it == id2widget.end() )
743 return 0; 743 return 0;
744//US return dynamic_cast<KLineEdit *>( *it ); 744//US return dynamic_cast<KLineEdit *>( *it );
745 return (KLineEdit *)( *it ); 745 return (KLineEdit *)( *it );
746} 746}
747 747
748 748
749KToolBarButton * KToolBar::getButton (int id) 749KToolBarButton * KToolBar::getButton (int id)
750{ 750{
751 Id2WidgetMap::Iterator it = id2widget.find( id ); 751 Id2WidgetMap::Iterator it = id2widget.find( id );
752 if ( it == id2widget.end() ) 752 if ( it == id2widget.end() )
753 return 0; 753 return 0;
754//US return dynamic_cast<KToolBarButton *>( *it ); 754//US return dynamic_cast<KToolBarButton *>( *it );
755 return (KToolBarButton *)( *it ); 755 return (KToolBarButton *)( *it );
756} 756}
757 757
758 758
759void KToolBar::alignItemRight (int id, bool right ) 759void KToolBar::alignItemRight (int id, bool right )
760{ 760{
761 Id2WidgetMap::Iterator it = id2widget.find( id ); 761 Id2WidgetMap::Iterator it = id2widget.find( id );
762 if ( it == id2widget.end() ) 762 if ( it == id2widget.end() )
763 return; 763 return;
764 if ( rightAligned && !right && (*it) == rightAligned ) 764 if ( rightAligned && !right && (*it) == rightAligned )
765 rightAligned = 0; 765 rightAligned = 0;
766 if ( (*it) && right ) 766 if ( (*it) && right )
767 rightAligned = (*it); 767 rightAligned = (*it);
768} 768}
769 769
770 770
771QWidget *KToolBar::getWidget (int id) 771QWidget *KToolBar::getWidget (int id)
772{ 772{
773 Id2WidgetMap::Iterator it = id2widget.find( id ); 773 Id2WidgetMap::Iterator it = id2widget.find( id );
774 return ( it == id2widget.end() ) ? 0 : (*it); 774 return ( it == id2widget.end() ) ? 0 : (*it);
775} 775}
776 776
777 777
778void KToolBar::setItemAutoSized (int id, bool yes ) 778void KToolBar::setItemAutoSized (int id, bool yes )
779{ 779{
780 QWidget *w = getWidget(id); 780 QWidget *w = getWidget(id);
781 if ( w && yes ) 781 if ( w && yes )
782 setStretchableWidget( w ); 782 setStretchableWidget( w );
783} 783}
784 784
785 785
786void KToolBar::clear () 786void KToolBar::clear ()
787{ 787{
788 QToolBar::clear(); 788 QToolBar::clear();
789 widget2id.clear(); 789 widget2id.clear();
790 id2widget.clear(); 790 id2widget.clear();
791} 791}
792 792
793 793
794void KToolBar::removeItem(int id) 794void KToolBar::removeItem(int id)
795{ 795{
796 Id2WidgetMap::Iterator it = id2widget.find( id ); 796 Id2WidgetMap::Iterator it = id2widget.find( id );
797 if ( it == id2widget.end() ) 797 if ( it == id2widget.end() )
798 { 798 {
799 kdDebug(220) << "KToolBar::removeItem item " << id << " not found" << endl; 799 kdDebug(220) << "KToolBar::removeItem item " << id << " not found" << endl;
800 return; 800 return;
801 } 801 }
802 QWidget * w = (*it); 802 QWidget * w = (*it);
803 id2widget.remove( id ); 803 id2widget.remove( id );
804 widget2id.remove( w ); 804 widget2id.remove( w );
805 widgets.removeRef( w ); 805 widgets.removeRef( w );
806 delete w; 806 delete w;
807} 807}
808 808
809 809
810void KToolBar::removeItemDelayed(int id) 810void KToolBar::removeItemDelayed(int id)
811{ 811{
812 Id2WidgetMap::Iterator it = id2widget.find( id ); 812 Id2WidgetMap::Iterator it = id2widget.find( id );
813 if ( it == id2widget.end() ) 813 if ( it == id2widget.end() )
814 { 814 {
815 kdDebug(220) << "KToolBar::removeItem item " << id << " not found" << endl; 815 kdDebug(220) << "KToolBar::removeItem item " << id << " not found" << endl;
816 return; 816 return;
817 } 817 }
818 QWidget * w = (*it); 818 QWidget * w = (*it);
819 id2widget.remove( id ); 819 id2widget.remove( id );
820 widget2id.remove( w ); 820 widget2id.remove( w );
821 widgets.removeRef( w ); 821 widgets.removeRef( w );
822 822
823 w->blockSignals(true); 823 w->blockSignals(true);
824 d->idleButtons.append(w); 824 d->idleButtons.append(w);
825 layoutTimer->start( 50, TRUE ); 825 layoutTimer->start( 50, TRUE );
826} 826}
827 827
828 828
829void KToolBar::hideItem (int id) 829void KToolBar::hideItem (int id)
830{ 830{
831 QWidget *w = getWidget(id); 831 QWidget *w = getWidget(id);
832 if ( w ) 832 if ( w )
833 w->hide(); 833 w->hide();
834} 834}
835 835
836 836
837void KToolBar::showItem (int id) 837void KToolBar::showItem (int id)
838{ 838{
839 QWidget *w = getWidget(id); 839 QWidget *w = getWidget(id);
840 if ( w ) 840 if ( w )
841 w->show(); 841 w->show();
842} 842}
843 843
844 844
845int KToolBar::itemIndex (int id) 845int KToolBar::itemIndex (int id)
846{ 846{
847 QWidget *w = getWidget(id); 847 QWidget *w = getWidget(id);
848 return w ? widgets.findRef(w) : -1; 848 return w ? widgets.findRef(w) : -1;
849} 849}
850 850
851 851
852void KToolBar::setFullSize(bool flag ) 852void KToolBar::setFullSize(bool flag )
853{ 853{
854 setHorizontalStretchable( flag ); 854 setHorizontalStretchable( flag );
855 setVerticalStretchable( flag ); 855 setVerticalStretchable( flag );
856} 856}
857 857
858 858
859bool KToolBar::fullSize() const 859bool KToolBar::fullSize() const
860{ 860{
861 return isHorizontalStretchable() || isVerticalStretchable(); 861 return isHorizontalStretchable() || isVerticalStretchable();
862} 862}
863 863
864 864
865void KToolBar::enableMoving(bool flag ) 865void KToolBar::enableMoving(bool flag )
866{ 866{
867//US setMovingEnabled(flag); 867//US setMovingEnabled(flag);
868 this->mainWindow()->setToolBarsMovable(flag); 868 this->mainWindow()->setToolBarsMovable(flag);
869} 869}
870 870
871 871
872void KToolBar::setBarPos (BarPosition bpos) 872void KToolBar::setBarPos (BarPosition bpos)
873{ 873{
874 if ( !mainWindow() ) 874 if ( !mainWindow() )
875 return; 875 return;
876//US mainWindow()->moveDockWindow( this, (Dock)bpos ); 876//US mainWindow()->moveDockWindow( this, (Dock)bpos );
877 mainWindow()->moveToolBar( this, (QMainWindow::ToolBarDock)bpos ); 877 mainWindow()->moveToolBar( this, (QMainWindow::ToolBarDock)bpos );
878} 878}
879 879
880 880
881const KToolBar::BarPosition KToolBar::barPos() 881const KToolBar::BarPosition KToolBar::barPos()
882{ 882{
883 if ( !(QMainWindow*)mainWindow() ) 883 if ( !(QMainWindow*)mainWindow() )
884 return KToolBar::Top; 884 return KToolBar::Top;
885//US Dock dock; 885//US Dock dock;
886 QMainWindow::ToolBarDock dock; 886 QMainWindow::ToolBarDock dock;
887 int dm1, dm2; 887 int dm1, dm2;
888 bool dm3; 888 bool dm3;
889 ((QMainWindow*)mainWindow())->getLocation( (QToolBar*)this, dock, dm1, dm3, dm2 ); 889 ((QMainWindow*)mainWindow())->getLocation( (QToolBar*)this, dock, dm1, dm3, dm2 );
890//US if ( dock == DockUnmanaged ) { 890//US if ( dock == DockUnmanaged ) {
891 if ( dock == QMainWindow::Unmanaged ) { 891 if ( dock == QMainWindow::Unmanaged ) {
892 return (KToolBar::BarPosition)Top; 892 return (KToolBar::BarPosition)Top;
893 } 893 }
894 return (BarPosition)dock; 894 return (BarPosition)dock;
895} 895}
896 896
897 897
898bool KToolBar::enable(BarStatus stat) 898bool KToolBar::enable(BarStatus stat)
899{ 899{
900 bool mystat = isVisible(); 900 bool mystat = isVisible();
901 901
902 if ( (stat == Toggle && mystat) || stat == Hide ) 902 if ( (stat == Toggle && mystat) || stat == Hide )
903 hide(); 903 hide();
904 else 904 else
905 show(); 905 show();
906 906
907 return isVisible() == mystat; 907 return isVisible() == mystat;
908} 908}
909 909
910 910
911void KToolBar::setMaxHeight ( int h ) 911void KToolBar::setMaxHeight ( int h )
912{ 912{
913 setMaximumHeight( h ); 913 setMaximumHeight( h );
914} 914}
915 915
916int KToolBar::maxHeight() 916int KToolBar::maxHeight()
917{ 917{
918 return maximumHeight(); 918 return maximumHeight();
919} 919}
920 920
921 921
922void KToolBar::setMaxWidth (int dw) 922void KToolBar::setMaxWidth (int dw)
923{ 923{
924 setMaximumWidth( dw ); 924 setMaximumWidth( dw );
925} 925}
926 926
927 927
928int KToolBar::maxWidth() 928int KToolBar::maxWidth()
929{ 929{
930 return maximumWidth(); 930 return maximumWidth();
931} 931}
932 932
933 933
934void KToolBar::setTitle (const QString& _title) 934void KToolBar::setTitle (const QString& _title)
935{ 935{
936 setLabel( _title ); 936 setLabel( _title );
937} 937}
938 938
939 939
940void KToolBar::enableFloating (bool ) 940void KToolBar::enableFloating (bool )
941{ 941{
942} 942}
943 943
944 944
945void KToolBar::setIconText(IconText it) 945void KToolBar::setIconText(IconText it)
946{ 946{
947 setIconText( it, true ); 947 setIconText( it, true );
948} 948}
949 949
950 950
951void KToolBar::setIconText(IconText icontext, bool update) 951void 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
977KToolBar::IconText KToolBar::iconText() const 977KToolBar::IconText KToolBar::iconText() const
978{ 978{
979 return d->m_iconText; 979 return d->m_iconText;
980} 980}
981 981
982 982
983void KToolBar::setIconSize(int size) 983void KToolBar::setIconSize(int size)
984{ 984{
985 setIconSize( size, true ); 985 setIconSize( size, true );
986} 986}
987 987
988void KToolBar::setIconSize(int size, bool update) 988void 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
1014int KToolBar::iconSize() const 1014int 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
1033void KToolBar::setEnableContextMenu(bool enable ) 1033void KToolBar::setEnableContextMenu(bool enable )
1034{ 1034{
1035 d->m_enableContext = enable; 1035 d->m_enableContext = enable;
1036} 1036}
1037 1037
1038 1038
1039bool KToolBar::contextMenuEnabled() const 1039bool KToolBar::contextMenuEnabled() const
1040{ 1040{
1041 return d->m_enableContext; 1041 return d->m_enableContext;
1042} 1042}
1043 1043
1044 1044
1045void KToolBar::setItemNoStyle(int id, bool no_style ) 1045void 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
1057void KToolBar::setFlat (bool flag) 1057void 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
1075int KToolBar::count() const 1075int KToolBar::count() const
1076{ 1076{
1077 return id2widget.count(); 1077 return id2widget.count();
1078} 1078}
1079 1079
1080 1080
1081void KToolBar::saveState() 1081void 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
1147QString KToolBar::settingsGroup() 1147QString 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
1162void KToolBar::saveSettings(KConfig *config, const QString &_configGroup) 1162void KToolBar::saveSettings(KConfig *config, const QString &_configGroup)
1163{ 1163{
1164 return; 1164 return;
1165 QString configGroup = _configGroup; 1165 QString configGroup = _configGroup;
1166 if (configGroup.isEmpty()) 1166 if (configGroup.isEmpty())
1167 configGroup = settingsGroup(); 1167 configGroup = settingsGroup();
1168 //kdDebug(220) << "KToolBar::saveSettings group=" << _configGroup << " -> " << configGroup << endl; 1168 //kdDebug(220) << "KToolBar::saveSettings group=" << _configGroup << " -> " << configGroup << endl;
1169 1169
1170 QString position, icontext; 1170 QString position, icontext;
1171 int index; 1171 int index;
1172 getAttributes( position, icontext, index ); 1172 getAttributes( position, icontext, index );
1173 1173
1174 //kdDebug(220) << "KToolBar::saveSettings " << name() << " newLine=" << newLine << endl; 1174 //kdDebug(220) << "KToolBar::saveSettings " << name() << " newLine=" << newLine << endl;
1175 1175
1176 KConfigGroupSaver saver(config, configGroup); 1176 KConfigGroupSaver saver(config, configGroup);
1177 1177
1178 if ( position != d->PositionDefault ) 1178 if ( position != d->PositionDefault )
1179 config->writeEntry("Position", position); 1179 config->writeEntry("Position", position);
1180 else 1180 else
1181 config->deleteEntry("Position"); 1181 config->deleteEntry("Position");
1182 1182
1183 if ( icontext != d->IconTextDefault ) 1183 if ( icontext != d->IconTextDefault )
1184 config->writeEntry("IconText", icontext); 1184 config->writeEntry("IconText", icontext);
1185 else 1185 else
1186 config->deleteEntry("IconText"); 1186 config->deleteEntry("IconText");
1187 1187
1188 if ( iconSize() != d->IconSizeDefault ) 1188 if ( iconSize() != d->IconSizeDefault )
1189 config->writeEntry("IconSize", iconSize()); 1189 config->writeEntry("IconSize", iconSize());
1190 else 1190 else
1191 config->deleteEntry("IconSize"); 1191 config->deleteEntry("IconSize");
1192 1192
1193 if ( isHidden() != d->HiddenDefault ) 1193 if ( isHidden() != d->HiddenDefault )
1194 config->writeEntry("Hidden", isHidden()); 1194 config->writeEntry("Hidden", isHidden());
1195 else 1195 else
1196 config->deleteEntry("Hidden"); 1196 config->deleteEntry("Hidden");
1197 1197
1198 if ( index != d->IndexDefault ) 1198 if ( index != d->IndexDefault )
1199 config->writeEntry( "Index", index ); 1199 config->writeEntry( "Index", index );
1200 else 1200 else
1201 config->deleteEntry("Index"); 1201 config->deleteEntry("Index");
1202//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
1203/* if ( offset() != d->OffsetDefault ) 1203/* if ( offset() != d->OffsetDefault )
1204 config->writeEntry( "Offset", offset() ); 1204 config->writeEntry( "Offset", offset() );
1205 else 1205 else
1206*/ 1206*/
1207 config->deleteEntry("Offset"); 1207 config->deleteEntry("Offset");
1208 1208
1209//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
1210/* 1210/*
1211 if ( newLine() != d->NewLineDefault ) 1211 if ( newLine() != d->NewLineDefault )
1212 config->writeEntry( "NewLine", newLine() ); 1212 config->writeEntry( "NewLine", newLine() );
1213 else 1213 else
1214*/ 1214*/
1215 config->deleteEntry("NewLine"); 1215 config->deleteEntry("NewLine");
1216} 1216}
1217 1217
1218void KToolBar::setXMLGUIClient( KXMLGUIClient *client ) 1218void KToolBar::setXMLGUIClient( KXMLGUIClient *client )
1219{ 1219{
1220 d->m_xmlguiClient = client; 1220 d->m_xmlguiClient = client;
1221} 1221}
1222 1222
1223void KToolBar::setText( const QString & txt ) 1223void KToolBar::setText( const QString & txt )
1224{ 1224{
1225//US setLabel( txt + " ( " + kapp->caption() + " ) " ); 1225//US setLabel( txt + " ( " + kapp->caption() + " ) " );
1226 setLabel( txt + " ( " + KGlobal::getAppName() + " ) " ); 1226 setLabel( txt + " ( " + KGlobal::getAppName() + " ) " );
1227} 1227}
1228 1228
1229 1229
1230QString KToolBar::text() const 1230QString KToolBar::text() const
1231{ 1231{
1232 return label(); 1232 return label();
1233} 1233}
1234 1234
1235 1235
1236void KToolBar::doConnections( KToolBarButton *button ) 1236void KToolBar::doConnections( KToolBarButton *button )
1237{ 1237{
1238 connect(button, SIGNAL(clicked(int)), this, SIGNAL( clicked( int ) ) ); 1238 connect(button, SIGNAL(clicked(int)), this, SIGNAL( clicked( int ) ) );
1239 connect(button, SIGNAL(doubleClicked(int)), this, SIGNAL( doubleClicked( int ) ) ); 1239 connect(button, SIGNAL(doubleClicked(int)), this, SIGNAL( doubleClicked( int ) ) );
1240 connect(button, SIGNAL(released(int)), this, SIGNAL( released( int ) ) ); 1240 connect(button, SIGNAL(released(int)), this, SIGNAL( released( int ) ) );
1241 connect(button, SIGNAL(pressed(int)), this, SIGNAL( pressed( int ) ) ); 1241 connect(button, SIGNAL(pressed(int)), this, SIGNAL( pressed( int ) ) );
1242 connect(button, SIGNAL(toggled(int)), this, SIGNAL( toggled( int ) ) ); 1242 connect(button, SIGNAL(toggled(int)), this, SIGNAL( toggled( int ) ) );
1243 connect(button, SIGNAL(highlighted(int, bool)), this, SIGNAL( highlighted( int, bool ) ) ); 1243 connect(button, SIGNAL(highlighted(int, bool)), this, SIGNAL( highlighted( int, bool ) ) );
1244} 1244}
1245 1245
1246void KToolBar::mousePressEvent ( QMouseEvent *m ) 1246void KToolBar::mousePressEvent ( QMouseEvent *m )
1247{ 1247{
1248 if ( !mainWindow() ) 1248 if ( !mainWindow() )
1249 return; 1249 return;
1250 QMainWindow *mw = mainWindow(); 1250 QMainWindow *mw = mainWindow();
1251 if ( mw->toolBarsMovable() && d->m_enableContext ) { 1251 if ( mw->toolBarsMovable() && d->m_enableContext ) {
1252 if ( m->button() == RightButton ) { 1252 if ( m->button() == RightButton ) {
1253 int i = contextMenu()->exec( m->globalPos(), 0 ); 1253 int i = contextMenu()->exec( m->globalPos(), 0 );
1254 switch ( i ) { 1254 switch ( i ) {
1255 case -1: 1255 case -1:
1256 return; // popup cancelled 1256 return; // popup cancelled
1257 case CONTEXT_LEFT: 1257 case CONTEXT_LEFT:
1258//US mw->moveDockWindow( this, DockLeft ); 1258//US mw->moveDockWindow( this, DockLeft );
1259 mw->moveToolBar( this, QMainWindow::Left ); 1259 mw->moveToolBar( this, QMainWindow::Left );
1260 break; 1260 break;
1261 case CONTEXT_RIGHT: 1261 case CONTEXT_RIGHT:
1262//US mw->moveDockWindow( this, DockRight ); 1262//US mw->moveDockWindow( this, DockRight );
1263 mw->moveToolBar( this, QMainWindow::Right ); 1263 mw->moveToolBar( this, QMainWindow::Right );
1264 break; 1264 break;
1265 case CONTEXT_TOP: 1265 case CONTEXT_TOP:
1266//US mw->moveDockWindow( this, DockTop ); 1266//US mw->moveDockWindow( this, DockTop );
1267 mw->moveToolBar( this, QMainWindow::Top ); 1267 mw->moveToolBar( this, QMainWindow::Top );
1268 break; 1268 break;
1269 case CONTEXT_BOTTOM: 1269 case CONTEXT_BOTTOM:
1270//US mw->moveDockWindow( this, DockBottom ); 1270//US mw->moveDockWindow( this, DockBottom );
1271 mw->moveToolBar( this, QMainWindow::Bottom ); 1271 mw->moveToolBar( this, QMainWindow::Bottom );
1272 break; 1272 break;
1273 case CONTEXT_FLOAT: 1273 case CONTEXT_FLOAT:
1274 break; 1274 break;
1275 case CONTEXT_FLAT: 1275 case CONTEXT_FLAT:
1276//US mw->moveDockWindow( this, DockMinimized ); 1276//US mw->moveDockWindow( this, DockMinimized );
1277 mw->moveToolBar( this, QMainWindow::Minimized ); 1277 mw->moveToolBar( this, QMainWindow::Minimized );
1278 break; 1278 break;
1279 case CONTEXT_ICONS: 1279 case CONTEXT_ICONS:
1280 setIconText( IconOnly ); 1280 setIconText( IconOnly );
1281 break; 1281 break;
1282 case CONTEXT_TEXTRIGHT: 1282 case CONTEXT_TEXTRIGHT:
1283 setIconText( IconTextRight ); 1283 setIconText( IconTextRight );
1284 break; 1284 break;
1285 case CONTEXT_TEXT: 1285 case CONTEXT_TEXT:
1286 setIconText( TextOnly ); 1286 setIconText( TextOnly );
1287 break; 1287 break;
1288 case CONTEXT_TEXTUNDER: 1288 case CONTEXT_TEXTUNDER:
1289 setIconText( IconTextBottom ); 1289 setIconText( IconTextBottom );
1290 break; 1290 break;
1291 default: 1291 default:
1292 if ( i >= CONTEXT_ICONSIZES ) 1292 if ( i >= CONTEXT_ICONSIZES )
1293 setIconSize( i - CONTEXT_ICONSIZES ); 1293 setIconSize( i - CONTEXT_ICONSIZES );
1294 else 1294 else
1295 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()
1296 } 1296 }
1297/*US 1297/*US
1298 if ( mw->inherits("KMainWindow") ) 1298 if ( mw->inherits("KMainWindow") )
1299 static_cast<KMainWindow *>(mw)->setSettingsDirty(); 1299 static_cast<KMainWindow *>(mw)->setSettingsDirty();
1300*/ 1300*/
1301 } 1301 }
1302 } 1302 }
1303} 1303}
1304 1304
1305 1305
1306void KToolBar::rebuildLayout() 1306void KToolBar::rebuildLayout()
1307{ 1307{
1308 1308
1309 for(QWidget *w=d->idleButtons.first(); w; w=d->idleButtons.next()) 1309 for(QWidget *w=d->idleButtons.first(); w; w=d->idleButtons.next())
1310 w->blockSignals(false); 1310 w->blockSignals(false);
1311 d->idleButtons.clear(); 1311 d->idleButtons.clear();
1312 1312
1313 layoutTimer->stop(); 1313 layoutTimer->stop();
1314 QApplication::sendPostedEvents( this, QEvent::ChildInserted ); 1314 QApplication::sendPostedEvents( this, QEvent::ChildInserted );
1315 QBoxLayout *l = boxLayout(); 1315 QBoxLayout *l = boxLayout();
1316 l->setMargin( 1 ); 1316 l->setMargin( 1 );
1317 // clear the old layout 1317 // clear the old layout
1318 QLayoutIterator it = l->iterator(); 1318 QLayoutIterator it = l->iterator();
1319 1319
1320 while ( it.current() ) { 1320 while ( it.current() ) {
1321 it.deleteCurrent(); 1321 it.deleteCurrent();
1322 } 1322 }
1323 for ( QWidget *w = widgets.first(); w; w = widgets.next() ) { 1323 for ( QWidget *w = widgets.first(); w; w = widgets.next() ) {
1324 if ( w == rightAligned ) { 1324 if ( w == rightAligned ) {
1325 continue; 1325 continue;
1326 } 1326 }
1327 if ( w->inherits( "KToolBarSeparator" ) && 1327 if ( w->inherits( "KToolBarSeparator" ) &&
1328 !( (KToolBarSeparator*)w )->showLine() ) { 1328 !( (KToolBarSeparator*)w )->showLine() ) {
1329 l->addSpacing( 6 ); 1329 l->addSpacing( 6 );
1330 w->hide(); 1330 w->hide();
1331 continue; 1331 continue;
1332 } 1332 }
1333 if ( w->inherits( "QPopupMenu" ) ) 1333 if ( w->inherits( "QPopupMenu" ) )
1334 continue; 1334 continue;
1335 l->addWidget( w ); 1335 l->addWidget( w );
1336 w->show(); 1336 w->show();
1337 } 1337 }
1338 if ( rightAligned ) { 1338 if ( rightAligned ) {
1339 l->addStretch(); 1339 l->addStretch();
1340 l->addWidget( rightAligned ); 1340 l->addWidget( rightAligned );
1341 rightAligned->show(); 1341 rightAligned->show();
1342 } 1342 }
1343 1343
1344 if ( fullSize() ) { 1344 if ( fullSize() ) {
1345 // 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).
1346 //if ( !stretchableWidget && widgets.last() && 1346 //if ( !stretchableWidget && widgets.last() &&
1347 // !widgets.last()->inherits( "QButton" ) && !widgets.last()->inherits( "KAnimWidget" ) ) 1347 // !widgets.last()->inherits( "QButton" ) && !widgets.last()->inherits( "KAnimWidget" ) )
1348 // setStretchableWidget( widgets.last() ); 1348 // setStretchableWidget( widgets.last() );
1349 if ( !rightAligned ) 1349 if ( !rightAligned )
1350 l->addStretch(); 1350 l->addStretch();
1351 if ( stretchableWidget ) 1351 if ( stretchableWidget )
1352 l->setStretchFactor( stretchableWidget, 10 ); 1352 l->setStretchFactor( stretchableWidget, 10 );
1353 } 1353 }
1354 l->invalidate(); 1354 l->invalidate();
1355 QApplication::postEvent( this, new QEvent( QEvent::LayoutHint ) ); 1355 QApplication::postEvent( this, new QEvent( QEvent::LayoutHint ) );
1356 //#endif //DESKTOP_VERSION 1356 //#endif //DESKTOP_VERSION
1357} 1357}
1358 1358
1359void KToolBar::childEvent( QChildEvent *e ) 1359void KToolBar::childEvent( QChildEvent *e )
1360{ 1360{
1361 1361
1362 if ( e->child()->isWidgetType() ) { 1362 if ( e->child()->isWidgetType() ) {
1363 QWidget * w = (QWidget*)e->child(); 1363 QWidget * w = (QWidget*)e->child();
1364 if ( e->type() == QEvent::ChildInserted ) { 1364 if ( e->type() == QEvent::ChildInserted ) {
1365 if ( !e->child()->inherits( "QPopupMenu" ) && 1365 if ( !e->child()->inherits( "QPopupMenu" ) &&
1366 ::qstrcmp( "qt_dockwidget_internal", e->child()->name() ) != 0 ) { 1366 ::qstrcmp( "qt_dockwidget_internal", e->child()->name() ) != 0 ) {
1367 1367
1368 // prevent items that have been explicitly inserted by insert*() from 1368 // prevent items that have been explicitly inserted by insert*() from
1369 // being inserted again 1369 // being inserted again
1370 if ( !widget2id.contains( w ) ) 1370 if ( !widget2id.contains( w ) )
1371 { 1371 {
1372 int dummy = -1; 1372 int dummy = -1;
1373 insertWidgetInternal( w, dummy, -1 ); 1373 insertWidgetInternal( w, dummy, -1 );
1374 } 1374 }
1375 } 1375 }
1376 } else { 1376 } else {
1377 removeWidgetInternal( w ); 1377 removeWidgetInternal( w );
1378 } 1378 }
1379 if ( isVisibleTo( 0 ) ) 1379 if ( isVisibleTo( 0 ) )
1380 { 1380 {
1381 QBoxLayout *l = boxLayout(); 1381 QBoxLayout *l = boxLayout();
1382 // QLayout *l = layout(); 1382 // QLayout *l = layout();
1383 1383
1384 // 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
1385 // changes till we have rebuild the thing 1385 // changes till we have rebuild the thing
1386 QLayoutIterator it = l->iterator(); 1386 QLayoutIterator it = l->iterator();
1387 while ( it.current() ) { 1387 while ( it.current() ) {
1388 it.deleteCurrent(); 1388 it.deleteCurrent();
1389 } 1389 }
1390 layoutTimer->start( 50, TRUE ); 1390 layoutTimer->start( 50, TRUE );
1391 } 1391 }
1392 } 1392 }
1393 QToolBar::childEvent( e ); 1393 QToolBar::childEvent( e );
1394} 1394}
1395 1395
1396void KToolBar::insertWidgetInternal( QWidget *w, int &index, int id ) 1396void KToolBar::insertWidgetInternal( QWidget *w, int &index, int id )
1397{ 1397{
1398 // 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
1399 //widgets.removeRef( w ); 1399 //widgets.removeRef( w );
1400 1400
1401 connect( w, SIGNAL( destroyed() ), 1401 connect( w, SIGNAL( destroyed() ),
1402 this, SLOT( widgetDestroyed() ) ); 1402 this, SLOT( widgetDestroyed() ) );
1403 if ( index == -1 || index > (int)widgets.count() ) { 1403 if ( index == -1 || index > (int)widgets.count() ) {
1404 widgets.append( w ); 1404 widgets.append( w );
1405 index = (int)widgets.count(); 1405 index = (int)widgets.count();
1406 } 1406 }
1407 else 1407 else
1408 widgets.insert( index, w ); 1408 widgets.insert( index, w );
1409 if ( id == -1 ) 1409 if ( id == -1 )
1410 id = id2widget.count(); 1410 id = id2widget.count();
1411 id2widget.insert( id, w ); 1411 id2widget.insert( id, w );
1412 widget2id.insert( w, id ); 1412 widget2id.insert( w, id );
1413} 1413}
1414void KToolBar::repaintMe() 1414void KToolBar::repaintMe()
1415{ 1415{
1416 setUpdatesEnabled( true ); 1416 setUpdatesEnabled( true );
1417 QToolBar::repaint( true ); 1417 QToolBar::repaint( true );
1418 //qDebug(" KToolBar::repaintMe() "); 1418 qDebug(" KToolBar::repaintMe() ");
1419} 1419}
1420 1420
1421void KToolBar::showEvent( QShowEvent *e ) 1421void KToolBar::showEvent( QShowEvent *e )
1422{ 1422{
1423 QToolBar::showEvent( e );
1424 rebuildLayout(); 1423 rebuildLayout();
1424 QToolBar::showEvent( e );
1425} 1425}
1426 1426
1427void KToolBar::setStretchableWidget( QWidget *w ) 1427void KToolBar::setStretchableWidget( QWidget *w )
1428{ 1428{
1429 QToolBar::setStretchableWidget( w ); 1429 QToolBar::setStretchableWidget( w );
1430 stretchableWidget = w; 1430 stretchableWidget = w;
1431} 1431}
1432 1432
1433QSizePolicy KToolBar::sizePolicy() const 1433QSizePolicy KToolBar::sizePolicy() const
1434{ 1434{
1435 if ( orientation() == Horizontal ) 1435 if ( orientation() == Horizontal )
1436 return QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ); 1436 return QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed );
1437 else 1437 else
1438 return QSizePolicy( QSizePolicy::Fixed, QSizePolicy::Expanding ); 1438 return QSizePolicy( QSizePolicy::Fixed, QSizePolicy::Expanding );
1439} 1439}
1440 1440
1441QSize KToolBar::sizeHint() const 1441QSize KToolBar::sizeHint() const
1442{ 1442{
1443 return QToolBar::sizeHint(); 1443 return QToolBar::sizeHint();
1444#if 0 1444#if 0
1445 QWidget::polish(); 1445 QWidget::polish();
1446 static int iii = 0; 1446 static int iii = 0;
1447 ++iii; 1447 ++iii;
1448 qDebug("++++++++ KToolBar::sizeHint() %d ", iii ); 1448 qDebug("++++++++ KToolBar::sizeHint() %d ", iii );
1449 int margin = static_cast<QWidget*>(ncThis)->layout()->margin(); 1449 int margin = static_cast<QWidget*>(ncThis)->layout()->margin();
1450 switch( barPos() ) 1450 switch( barPos() )
1451 { 1451 {
1452 case KToolBar::Top: 1452 case KToolBar::Top:
1453 case KToolBar::Bottom: 1453 case KToolBar::Bottom:
1454 for ( QWidget *w = widgets.first(); w; w =widgets.next() ) 1454 for ( QWidget *w = widgets.first(); w; w =widgets.next() )
1455 { 1455 {
1456 if ( w->inherits( "KToolBarSeparator" ) && 1456 if ( w->inherits( "KToolBarSeparator" ) &&
1457 !( static_cast<KToolBarSeparator*>(w)->showLine() ) ) 1457 !( static_cast<KToolBarSeparator*>(w)->showLine() ) )
1458 { 1458 {
1459 minSize += QSize(6, 0); 1459 minSize += QSize(6, 0);
1460 } 1460 }
1461 else 1461 else
1462 { 1462 {
1463 QSize sh = w->sizeHint(); 1463 QSize sh = w->sizeHint();
1464 if (!sh.isValid()) 1464 if (!sh.isValid())
1465 sh = w->minimumSize(); 1465 sh = w->minimumSize();
1466 minSize = minSize.expandedTo(QSize(0, sh.height())); 1466 minSize = minSize.expandedTo(QSize(0, sh.height()));
1467 minSize += QSize(sh.width()+1, 0); 1467 minSize += QSize(sh.width()+1, 0);
1468 } 1468 }
1469 } 1469 }
1470/*US 1470/*US
1471 minSize += QSize(QApplication::style().pixelMetric( QStyle::PM_DockWindowHandleExtent ), 0); 1471 minSize += QSize(QApplication::style().pixelMetric( QStyle::PM_DockWindowHandleExtent ), 0);
1472*/ 1472*/
1473 minSize += QSize(margin*2, margin*2); 1473 minSize += QSize(margin*2, margin*2);
1474 break; 1474 break;
1475 1475
1476 case KToolBar::Left: 1476 case KToolBar::Left:
1477 case KToolBar::Right: 1477 case KToolBar::Right:
1478 for ( QWidget *w = widgets.first(); w; w = widgets.next() ) 1478 for ( QWidget *w = widgets.first(); w; w = widgets.next() )
1479 { 1479 {
1480 if ( w->inherits( "KToolBarSeparator" ) && 1480 if ( w->inherits( "KToolBarSeparator" ) &&
1481 !( static_cast<KToolBarSeparator*>(w)->showLine() ) ) 1481 !( static_cast<KToolBarSeparator*>(w)->showLine() ) )
1482 { 1482 {
1483 minSize += QSize(0, 6); 1483 minSize += QSize(0, 6);
1484 } 1484 }
1485 else 1485 else
1486 { 1486 {
1487 QSize sh = w->sizeHint(); 1487 QSize sh = w->sizeHint();
1488 if (!sh.isValid()) 1488 if (!sh.isValid())
1489 sh = w->minimumSize(); 1489 sh = w->minimumSize();
1490 minSize = minSize.expandedTo(QSize(sh.width(), 0)); 1490 minSize = minSize.expandedTo(QSize(sh.width(), 0));
1491 minSize += QSize(0, sh.height()+1); 1491 minSize += QSize(0, sh.height()+1);
1492 } 1492 }
1493 } 1493 }
1494/*US 1494/*US
1495 minSize += QSize(0, QApplication::style().pixelMetric( QStyle::PM_DockWindowHandleExtent )); 1495 minSize += QSize(0, QApplication::style().pixelMetric( QStyle::PM_DockWindowHandleExtent ));
1496*/ 1496*/
1497 minSize += QSize(margin*2, margin*2); 1497 minSize += QSize(margin*2, margin*2);
1498 break; 1498 break;
1499 1499
1500 default: 1500 default:
1501 minSize = QToolBar::sizeHint(); 1501 minSize = QToolBar::sizeHint();
1502 break; 1502 break;
1503 } 1503 }
1504 return minSize; 1504 return minSize;
1505#endif 1505#endif
1506} 1506}
1507 1507
1508QSize KToolBar::minimumSize() const 1508QSize KToolBar::minimumSize() const
1509{ 1509{
1510 return minimumSizeHint(); 1510 return minimumSizeHint();
1511} 1511}
1512 1512
1513QSize KToolBar::minimumSizeHint() const 1513QSize KToolBar::minimumSizeHint() const
1514{ 1514{
1515 return sizeHint(); 1515 return sizeHint();
1516} 1516}
1517 1517
1518bool KToolBar::highlight() const 1518bool KToolBar::highlight() const
1519{ 1519{
1520 return d->m_highlight; 1520 return d->m_highlight;
1521} 1521}
1522 1522
1523void KToolBar::hide() 1523void KToolBar::hide()
1524{ 1524{
1525 QToolBar::hide(); 1525 QToolBar::hide();
1526} 1526}
1527 1527
1528void KToolBar::show() 1528void KToolBar::show()
1529{ 1529{
1530 QToolBar::show(); 1530 QToolBar::show();
1531} 1531}
1532 1532
1533void KToolBar::resizeEvent( QResizeEvent *e ) 1533void KToolBar::resizeEvent( QResizeEvent *e )
1534{ 1534{
1535 bool b = isUpdatesEnabled(); 1535 bool b = isUpdatesEnabled();
1536 setUpdatesEnabled( FALSE ); 1536 setUpdatesEnabled( FALSE );
1537 QToolBar::resizeEvent( e ); 1537 QToolBar::resizeEvent( e );
1538 if (b) 1538 if (b)
1539 d->repaintTimer.start( 100, true ); 1539 d->repaintTimer.start( 100, true );
1540} 1540}
1541 1541
1542void KToolBar::slotIconChanged(int group) 1542void KToolBar::slotIconChanged(int group)
1543{ 1543{
1544 if ((group != KIcon::Toolbar) && (group != KIcon::MainToolbar)) 1544 if ((group != KIcon::Toolbar) && (group != KIcon::MainToolbar))
1545 return; 1545 return;
1546 if ((group == KIcon::MainToolbar) != !::qstrcmp(name(), "mainToolBar")) 1546 if ((group == KIcon::MainToolbar) != !::qstrcmp(name(), "mainToolBar"))
1547 return; 1547 return;
1548 1548
1549 emit modechange(); 1549 emit modechange();
1550 if (isVisible()) 1550 if (isVisible())
1551 updateGeometry(); 1551 updateGeometry();
1552} 1552}
1553 1553
1554void KToolBar::slotReadConfig() 1554void KToolBar::slotReadConfig()
1555{ 1555{
1556 //kdDebug(220) << "KToolBar::slotReadConfig" << endl; 1556 //kdDebug(220) << "KToolBar::slotReadConfig" << endl;
1557 // Read appearance settings (hmm, we used to do both here, 1557 // Read appearance settings (hmm, we used to do both here,
1558 // but a well behaved application will call applyMainWindowSettings 1558 // but a well behaved application will call applyMainWindowSettings
1559 // anyway, right ?) 1559 // anyway, right ?)
1560 applyAppearanceSettings(KGlobal::config(), QString::null ); 1560 applyAppearanceSettings(KGlobal::config(), QString::null );
1561} 1561}
1562 1562
1563void KToolBar::slotAppearanceChanged() 1563void KToolBar::slotAppearanceChanged()
1564{ 1564{
1565 // Read appearance settings from global file. 1565 // Read appearance settings from global file.
1566 applyAppearanceSettings(KGlobal::config(), QString::null, true /* lose local settings */ ); 1566 applyAppearanceSettings(KGlobal::config(), QString::null, true /* lose local settings */ );
1567 // And remember to save the new look later 1567 // And remember to save the new look later
1568/*US 1568/*US
1569 if ( mainWindow() && mainWindow()->inherits( "KMainWindow" ) ) 1569 if ( mainWindow() && mainWindow()->inherits( "KMainWindow" ) )
1570 static_cast<KMainWindow *>(mainWindow())->setSettingsDirty(); 1570 static_cast<KMainWindow *>(mainWindow())->setSettingsDirty();
1571*/ 1571*/
1572} 1572}
1573 1573
1574//static 1574//static
1575bool KToolBar::highlightSetting() 1575bool KToolBar::highlightSetting()
1576{ 1576{
1577 QString grpToolbar(QString::fromLatin1("Toolbar style")); 1577 QString grpToolbar(QString::fromLatin1("Toolbar style"));
1578 KConfigGroupSaver saver(KGlobal::config(), grpToolbar); 1578 KConfigGroupSaver saver(KGlobal::config(), grpToolbar);
1579 return KGlobal::config()->readBoolEntry(QString::fromLatin1("Highlighting"),true); 1579 return KGlobal::config()->readBoolEntry(QString::fromLatin1("Highlighting"),true);
1580} 1580}
1581 1581
1582//static 1582//static
1583bool KToolBar::transparentSetting() 1583bool KToolBar::transparentSetting()
1584{ 1584{
1585 QString grpToolbar(QString::fromLatin1("Toolbar style")); 1585 QString grpToolbar(QString::fromLatin1("Toolbar style"));
1586 KConfigGroupSaver saver(KGlobal::config(), grpToolbar); 1586 KConfigGroupSaver saver(KGlobal::config(), grpToolbar);
1587 return KGlobal::config()->readBoolEntry(QString::fromLatin1("TransparentMoving"),true); 1587 return KGlobal::config()->readBoolEntry(QString::fromLatin1("TransparentMoving"),true);
1588} 1588}
1589 1589
1590//static 1590//static
1591KToolBar::IconText KToolBar::iconTextSetting() 1591KToolBar::IconText KToolBar::iconTextSetting()
1592{ 1592{
1593 QString grpToolbar(QString::fromLatin1("Toolbar style")); 1593 QString grpToolbar(QString::fromLatin1("Toolbar style"));
1594 KConfigGroupSaver saver(KGlobal::config(), grpToolbar); 1594 KConfigGroupSaver saver(KGlobal::config(), grpToolbar);
1595 QString icontext = KGlobal::config()->readEntry(QString::fromLatin1("IconText"),QString::fromLatin1("IconOnly")); 1595 QString icontext = KGlobal::config()->readEntry(QString::fromLatin1("IconText"),QString::fromLatin1("IconOnly"));
1596 if ( icontext == "IconTextRight" ) 1596 if ( icontext == "IconTextRight" )
1597 return IconTextRight; 1597 return IconTextRight;
1598 else if ( icontext == "IconTextBottom" ) 1598 else if ( icontext == "IconTextBottom" )
1599 return IconTextBottom; 1599 return IconTextBottom;
1600 else if ( icontext == "TextOnly" ) 1600 else if ( icontext == "TextOnly" )
1601 return TextOnly; 1601 return TextOnly;
1602 else 1602 else
1603 return IconOnly; 1603 return IconOnly;
1604} 1604}
1605 1605
1606void KToolBar::applyAppearanceSettings(KConfig *config, const QString &_configGroup, bool forceGlobal) 1606void KToolBar::applyAppearanceSettings(KConfig *config, const QString &_configGroup, bool forceGlobal)
1607{ 1607{
1608 return; 1608 return;
1609 QString configGroup = _configGroup.isEmpty() ? settingsGroup() : _configGroup; 1609 QString configGroup = _configGroup.isEmpty() ? settingsGroup() : _configGroup;
1610 //kdDebug(220) << "KToolBar::applyAppearanceSettings: configGroup=" << configGroup << endl; 1610 //kdDebug(220) << "KToolBar::applyAppearanceSettings: configGroup=" << configGroup << endl;
1611 // We have application-specific settings in the XML file, 1611 // We have application-specific settings in the XML file,
1612 // and nothing in the application's config file 1612 // and nothing in the application's config file
1613 // -> don't apply the global defaults, the XML ones are preferred 1613 // -> don't apply the global defaults, the XML ones are preferred
1614 // See applySettings for a full explanation 1614 // See applySettings for a full explanation
1615/*US :we do not support xml files 1615/*US :we do not support xml files
1616 if ( d->m_xmlguiClient && !d->m_xmlguiClient->xmlFile().isEmpty() && 1616 if ( d->m_xmlguiClient && !d->m_xmlguiClient->xmlFile().isEmpty() &&
1617 !config->hasGroup(configGroup) ) 1617 !config->hasGroup(configGroup) )
1618 { 1618 {
1619 //kdDebug(220) << "skipping global defaults, using XML ones instead" << endl; 1619 //kdDebug(220) << "skipping global defaults, using XML ones instead" << endl;
1620 return; 1620 return;
1621 } 1621 }
1622*/ 1622*/
1623 if ( !config->hasGroup(configGroup) ) 1623 if ( !config->hasGroup(configGroup) )
1624 { 1624 {
1625 //kdDebug(220) << "skipping global defaults, using XML ones instead" << endl; 1625 //kdDebug(220) << "skipping global defaults, using XML ones instead" << endl;
1626 return; 1626 return;
1627 } 1627 }
1628 1628
1629 1629
1630 KConfig *gconfig = KGlobal::config(); 1630 KConfig *gconfig = KGlobal::config();
1631/*US 1631/*US
1632 static const QString &attrIconText = KGlobal::staticQString("IconText"); 1632 static const QString &attrIconText = KGlobal::staticQString("IconText");
1633 static const QString &attrHighlight = KGlobal::staticQString("Highlighting"); 1633 static const QString &attrHighlight = KGlobal::staticQString("Highlighting");
1634 static const QString &attrTrans = KGlobal::staticQString("TransparentMoving"); 1634 static const QString &attrTrans = KGlobal::staticQString("TransparentMoving");
1635 static const QString &attrSize = KGlobal::staticQString("IconSize"); 1635 static const QString &attrSize = KGlobal::staticQString("IconSize");
1636*/ 1636*/
1637 // we actually do this in two steps. 1637 // we actually do this in two steps.
1638 // 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).
1639 // 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]
1640 bool highlight; 1640 bool highlight;
1641 int transparent; 1641 int transparent;
1642 QString icontext; 1642 QString icontext;
1643 int iconsize = 0; 1643 int iconsize = 0;
1644 1644
1645 // this is the first iteration 1645 // this is the first iteration
1646 QString grpToolbar(QString::fromLatin1("Toolbar style")); 1646 QString grpToolbar(QString::fromLatin1("Toolbar style"));
1647 { // start block for KConfigGroupSaver 1647 { // start block for KConfigGroupSaver
1648 KConfigGroupSaver saver(gconfig, grpToolbar); 1648 KConfigGroupSaver saver(gconfig, grpToolbar);
1649 1649
1650 // first, get the generic settings 1650 // first, get the generic settings
1651//US highlight = gconfig->readBoolEntry(attrHighlight, true); 1651//US highlight = gconfig->readBoolEntry(attrHighlight, true);
1652 highlight = gconfig->readBoolEntry("Highlighting", true); 1652 highlight = gconfig->readBoolEntry("Highlighting", true);
1653//US transparent = gconfig->readBoolEntry(attrTrans, true); 1653//US transparent = gconfig->readBoolEntry(attrTrans, true);
1654 transparent = gconfig->readBoolEntry("TransparentMoving", true); 1654 transparent = gconfig->readBoolEntry("TransparentMoving", true);
1655 1655
1656 // 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
1657 // honoring it 1657 // honoring it
1658 if (d->m_honorStyle) 1658 if (d->m_honorStyle)
1659//US d->IconTextDefault = gconfig->readEntry(attrIconText, d->IconTextDefault); 1659//US d->IconTextDefault = gconfig->readEntry(attrIconText, d->IconTextDefault);
1660 d->IconTextDefault = gconfig->readEntry("IconText", d->IconTextDefault); 1660 d->IconTextDefault = gconfig->readEntry("IconText", d->IconTextDefault);
1661 else 1661 else
1662 d->IconTextDefault = "IconOnly"; 1662 d->IconTextDefault = "IconOnly";
1663 1663
1664 // Use the default icon size for toolbar icons. 1664 // Use the default icon size for toolbar icons.
1665//US d->IconSizeDefault = gconfig->readNumEntry(attrSize, d->IconSizeDefault); 1665//US d->IconSizeDefault = gconfig->readNumEntry(attrSize, d->IconSizeDefault);
1666 d->IconSizeDefault = gconfig->readNumEntry("IconSize", d->IconSizeDefault); 1666 d->IconSizeDefault = gconfig->readNumEntry("IconSize", d->IconSizeDefault);
1667 1667
1668 if ( !forceGlobal && config->hasGroup(configGroup) ) 1668 if ( !forceGlobal && config->hasGroup(configGroup) )
1669 { 1669 {
1670 config->setGroup(configGroup); 1670 config->setGroup(configGroup);
1671 1671
1672 // first, get the generic settings 1672 // first, get the generic settings
1673//US highlight = config->readBoolEntry(attrHighlight, highlight); 1673//US highlight = config->readBoolEntry(attrHighlight, highlight);
1674 highlight = config->readBoolEntry("Highlighting", highlight); 1674 highlight = config->readBoolEntry("Highlighting", highlight);
1675//US transparent = config->readBoolEntry(attrTrans, transparent); 1675//US transparent = config->readBoolEntry(attrTrans, transparent);
1676 transparent = config->readBoolEntry("TransparentMoving", transparent); 1676 transparent = config->readBoolEntry("TransparentMoving", transparent);
1677 // now we always read in the IconText property 1677 // now we always read in the IconText property
1678//US icontext = config->readEntry(attrIconText, d->IconTextDefault); 1678//US icontext = config->readEntry(attrIconText, d->IconTextDefault);
1679 icontext = config->readEntry("IconText", d->IconTextDefault); 1679 icontext = config->readEntry("IconText", d->IconTextDefault);
1680 1680
1681 // now get the size 1681 // now get the size
1682//US iconsize = config->readNumEntry(attrSize, d->IconSizeDefault); 1682//US iconsize = config->readNumEntry(attrSize, d->IconSizeDefault);
1683 iconsize = config->readNumEntry("IconSize", d->IconSizeDefault); 1683 iconsize = config->readNumEntry("IconSize", d->IconSizeDefault);
1684 } 1684 }
1685 else 1685 else
1686 { 1686 {
1687 iconsize = d->IconSizeDefault; 1687 iconsize = d->IconSizeDefault;
1688 icontext = d->IconTextDefault; 1688 icontext = d->IconTextDefault;
1689 } 1689 }
1690 1690
1691 // revert back to the old group 1691 // revert back to the old group
1692 } // end block for KConfigGroupSaver 1692 } // end block for KConfigGroupSaver
1693 1693
1694 bool doUpdate = false; 1694 bool doUpdate = false;
1695 1695
1696 IconText icon_text; 1696 IconText icon_text;
1697 if ( icontext == "IconTextRight" ) 1697 if ( icontext == "IconTextRight" )
1698 icon_text = IconTextRight; 1698 icon_text = IconTextRight;
1699 else if ( icontext == "IconTextBottom" ) 1699 else if ( icontext == "IconTextBottom" )
1700 icon_text = IconTextBottom; 1700 icon_text = IconTextBottom;
1701 else if ( icontext == "TextOnly" ) 1701 else if ( icontext == "TextOnly" )
1702 icon_text = TextOnly; 1702 icon_text = TextOnly;
1703 else 1703 else
1704 icon_text = IconOnly; 1704 icon_text = IconOnly;
1705 1705
1706 // check if the icon/text has changed 1706 // check if the icon/text has changed
1707 if (icon_text != d->m_iconText) { 1707 if (icon_text != d->m_iconText) {
1708 //kdDebug(220) << "KToolBar::applyAppearanceSettings setIconText " << icon_text << endl; 1708 //kdDebug(220) << "KToolBar::applyAppearanceSettings setIconText " << icon_text << endl;
1709 setIconText(icon_text, false); 1709 setIconText(icon_text, false);
1710 doUpdate = true; 1710 doUpdate = true;
1711 } 1711 }
1712 1712
1713 // ...and check if the icon size has changed 1713 // ...and check if the icon size has changed
1714 if (iconsize != d->m_iconSize) { 1714 if (iconsize != d->m_iconSize) {
1715 setIconSize(iconsize, false); 1715 setIconSize(iconsize, false);
1716 doUpdate = true; 1716 doUpdate = true;
1717 } 1717 }
1718 1718
1719 QMainWindow *mw = mainWindow(); 1719 QMainWindow *mw = mainWindow();
1720 1720
1721 // ...and if we should highlight 1721 // ...and if we should highlight
1722 if ( highlight != d->m_highlight ) { 1722 if ( highlight != d->m_highlight ) {
1723 d->m_highlight = highlight; 1723 d->m_highlight = highlight;
1724 doUpdate = true; 1724 doUpdate = true;
1725 } 1725 }
1726 1726
1727 // ...and if we should move transparently 1727 // ...and if we should move transparently
1728 if ( mw && transparent != (!mw->opaqueMoving()) ) { 1728 if ( mw && transparent != (!mw->opaqueMoving()) ) {
1729 mw->setOpaqueMoving( !transparent ); 1729 mw->setOpaqueMoving( !transparent );
1730 } 1730 }
1731 1731
1732 if (doUpdate) 1732 if (doUpdate)
1733 emit modechange(); // tell buttons what happened 1733 emit modechange(); // tell buttons what happened
1734 if (isVisible ()) 1734 if (isVisible ())
1735 updateGeometry(); 1735 updateGeometry();
1736} 1736}
1737 1737
1738void KToolBar::applySettings(KConfig *config, const QString &_configGroup) 1738void KToolBar::applySettings(KConfig *config, const QString &_configGroup)
1739{ 1739{
1740 //kdDebug(220) << "KToolBar::applySettings group=" << _configGroup << endl; 1740 //kdDebug(220) << "KToolBar::applySettings group=" << _configGroup << endl;
1741 1741
1742 QString configGroup = _configGroup.isEmpty() ? settingsGroup() : _configGroup; 1742 QString configGroup = _configGroup.isEmpty() ? settingsGroup() : _configGroup;
1743 1743
1744 /* 1744 /*
1745 Let's explain this a bit more in details. 1745 Let's explain this a bit more in details.
1746 The order in which we apply settings is : 1746 The order in which we apply settings is :
1747 Global config / <appnamerc> user settings if no XMLGUI is used 1747 Global config / <appnamerc> user settings if no XMLGUI is used
1748 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
1749 1749
1750 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,
1751 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,
1752 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.
1753 1753
1754 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).
1755 */ 1755 */
1756 1756
1757 // First the appearance stuff - the one which has a global config 1757 // First the appearance stuff - the one which has a global config
1758 applyAppearanceSettings( config, _configGroup ); 1758 applyAppearanceSettings( config, _configGroup );
1759 1759
1760 // ...and now the position stuff 1760 // ...and now the position stuff
1761 if ( config->hasGroup(configGroup) ) 1761 if ( config->hasGroup(configGroup) )
1762 { 1762 {
1763 KConfigGroupSaver cgs(config, configGroup); 1763 KConfigGroupSaver cgs(config, configGroup);
1764/*US 1764/*US
1765 static const QString &attrPosition = KGlobal::staticQString("Position"); 1765 static const QString &attrPosition = KGlobal::staticQString("Position");
1766 static const QString &attrIndex = KGlobal::staticQString("Index"); 1766 static const QString &attrIndex = KGlobal::staticQString("Index");
1767 static const QString &attrOffset = KGlobal::staticQString("Offset"); 1767 static const QString &attrOffset = KGlobal::staticQString("Offset");
1768 static const QString &attrNewLine = KGlobal::staticQString("NewLine"); 1768 static const QString &attrNewLine = KGlobal::staticQString("NewLine");
1769 static const QString &attrHidden = KGlobal::staticQString("Hidden"); 1769 static const QString &attrHidden = KGlobal::staticQString("Hidden");
1770 1770
1771 QString position = config->readEntry(attrPosition, d->PositionDefault); 1771 QString position = config->readEntry(attrPosition, d->PositionDefault);
1772 int index = config->readNumEntry(attrIndex, d->IndexDefault); 1772 int index = config->readNumEntry(attrIndex, d->IndexDefault);
1773 int offset = config->readNumEntry(attrOffset, d->OffsetDefault); 1773 int offset = config->readNumEntry(attrOffset, d->OffsetDefault);
1774 bool newLine = config->readBoolEntry(attrNewLine, d->NewLineDefault); 1774 bool newLine = config->readBoolEntry(attrNewLine, d->NewLineDefault);
1775 bool hidden = config->readBoolEntry(attrHidden, d->HiddenDefault); 1775 bool hidden = config->readBoolEntry(attrHidden, d->HiddenDefault);
1776*/ 1776*/
1777 1777
1778 QString position = config->readEntry("Position", d->PositionDefault); 1778 QString position = config->readEntry("Position", d->PositionDefault);
1779 int index = config->readNumEntry("Index", d->IndexDefault); 1779 int index = config->readNumEntry("Index", d->IndexDefault);
1780 int offset = config->readNumEntry("Offset", d->OffsetDefault); 1780 int offset = config->readNumEntry("Offset", d->OffsetDefault);
1781 bool newLine = config->readBoolEntry("NewLine", d->NewLineDefault); 1781 bool newLine = config->readBoolEntry("NewLine", d->NewLineDefault);
1782 bool hidden = config->readBoolEntry("Hidden", d->HiddenDefault); 1782 bool hidden = config->readBoolEntry("Hidden", d->HiddenDefault);
1783 1783
1784/*US Dock pos(DockTop); 1784/*US Dock pos(DockTop);
1785 if ( position == "Top" ) 1785 if ( position == "Top" )
1786 pos = DockTop; 1786 pos = DockTop;
1787 else if ( position == "Bottom" ) 1787 else if ( position == "Bottom" )
1788 pos = DockBottom; 1788 pos = DockBottom;
1789 else if ( position == "Left" ) 1789 else if ( position == "Left" )
1790 pos = DockLeft; 1790 pos = DockLeft;
1791 else if ( position == "Right" ) 1791 else if ( position == "Right" )
1792 pos = DockRight; 1792 pos = DockRight;
1793 else if ( position == "Floating" ) 1793 else if ( position == "Floating" )
1794 pos = DockTornOff; 1794 pos = DockTornOff;
1795 else if ( position == "Flat" ) 1795 else if ( position == "Flat" )
1796 pos = DockMinimized; 1796 pos = DockMinimized;
1797*/ 1797*/
1798 QMainWindow::ToolBarDock pos(QMainWindow::Top); 1798 QMainWindow::ToolBarDock pos(QMainWindow::Top);
1799 if ( position == "Top" ) 1799 if ( position == "Top" )
1800 pos = QMainWindow::Top; 1800 pos = QMainWindow::Top;
1801 else if ( position == "Bottom" ) 1801 else if ( position == "Bottom" )
1802 pos = QMainWindow::Bottom; 1802 pos = QMainWindow::Bottom;
1803 else if ( position == "Left" ) 1803 else if ( position == "Left" )
1804 pos = QMainWindow::Left; 1804 pos = QMainWindow::Left;
1805 else if ( position == "Right" ) 1805 else if ( position == "Right" )
1806 pos = QMainWindow::Right; 1806 pos = QMainWindow::Right;
1807 else if ( position == "Floating" ) 1807 else if ( position == "Floating" )
1808 pos = QMainWindow::TornOff; 1808 pos = QMainWindow::TornOff;
1809 else if ( position == "Flat" ) 1809 else if ( position == "Flat" )
1810 pos = QMainWindow::Minimized; 1810 pos = QMainWindow::Minimized;
1811 1811
1812 //kdDebug(220) << "KToolBar::applySettings hidden=" << hidden << endl; 1812 //kdDebug(220) << "KToolBar::applySettings hidden=" << hidden << endl;
1813 if (hidden) 1813 if (hidden)
1814 hide(); 1814 hide();
1815 else 1815 else
1816 show(); 1816 show();
1817 1817
1818 if ( mainWindow() ) 1818 if ( mainWindow() )
1819 { 1819 {
1820 QMainWindow *mw = mainWindow(); 1820 QMainWindow *mw = mainWindow();
1821 1821
1822 //kdDebug(220) << "KToolBar::applySettings updating ToolbarInfo" << endl; 1822 //kdDebug(220) << "KToolBar::applySettings updating ToolbarInfo" << endl;
1823 d->toolBarInfo = KToolBarPrivate::ToolBarInfo( pos, index, newLine, offset ); 1823 d->toolBarInfo = KToolBarPrivate::ToolBarInfo( pos, index, newLine, offset );
1824 1824
1825 // moveDockWindow calls QDockArea which does a reparent() on us with 1825 // moveDockWindow calls QDockArea which does a reparent() on us with
1826 // showIt = true, so we loose our visibility status 1826 // showIt = true, so we loose our visibility status
1827 bool doHide = isHidden(); 1827 bool doHide = isHidden();
1828 1828
1829//US mw->moveDockWindow( this, pos, newLine, index, offset ); 1829//US mw->moveDockWindow( this, pos, newLine, index, offset );
1830 mw->moveToolBar( this, pos, newLine, index, offset ); 1830 mw->moveToolBar( this, pos, newLine, index, offset );
1831 1831
1832 //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;
1833 if ( doHide ) 1833 if ( doHide )
1834 hide(); 1834 hide();
1835 } 1835 }
1836 if (isVisible ()) 1836 if (isVisible ())
1837 updateGeometry(); 1837 updateGeometry();
1838 } 1838 }
1839} 1839}
1840 1840
1841bool KToolBar::event( QEvent *e ) 1841bool KToolBar::event( QEvent *e )
1842{ 1842{
1843 if ( (e->type() == QEvent::LayoutHint) && isUpdatesEnabled() ) 1843 if ( (e->type() == QEvent::LayoutHint) && isUpdatesEnabled() )
1844 d->repaintTimer.start( 100, true ); 1844 d->repaintTimer.start( 100, true );
1845 1845
1846 if (e->type() == QEvent::ChildInserted ) 1846 if (e->type() == QEvent::ChildInserted )
1847 { 1847 {
1848 // By pass QToolBar::event, 1848 // By pass QToolBar::event,
1849 // 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
1850 // do that until we have rebuild the layout. 1850 // do that until we have rebuild the layout.
1851 childEvent((QChildEvent *)e); 1851 childEvent((QChildEvent *)e);
1852 return true; 1852 return true;
1853 } 1853 }
1854 1854
1855 return QToolBar::event( e ); 1855 return QToolBar::event( e );
1856} 1856}
1857 1857
1858void KToolBar::slotRepaint() 1858void KToolBar::slotRepaint()
1859{ 1859{
1860 setUpdatesEnabled( FALSE ); 1860 setUpdatesEnabled( FALSE );
1861 // Send a resizeEvent to update the "toolbar extension arrow" 1861 // Send a resizeEvent to update the "toolbar extension arrow"
1862 // (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
1863 // the available space) 1863 // the available space)
1864 QResizeEvent ev(size(), size()); 1864 QResizeEvent ev(size(), size());
1865 resizeEvent(&ev); 1865 resizeEvent(&ev);
1866 //#ifdef DESKTOP_VERSION 1866 //#ifdef DESKTOP_VERSION
1867 QApplication::sendPostedEvents( this, QEvent::LayoutHint ); 1867 QApplication::sendPostedEvents( this, QEvent::LayoutHint );
1868 //#endif //DESKTOP_VERSION 1868 //#endif //DESKTOP_VERSION
1869 setUpdatesEnabled( TRUE ); 1869 setUpdatesEnabled( TRUE );
1870 repaint( TRUE ); 1870 repaint( TRUE );
1871} 1871}
1872 1872
1873void KToolBar::toolBarPosChanged( QToolBar *tb ) 1873void KToolBar::toolBarPosChanged( QToolBar *tb )
1874{ 1874{
1875 if ( tb != this ) 1875 if ( tb != this )
1876 return; 1876 return;
1877//US if ( d->oldPos == DockMinimized ) 1877//US if ( d->oldPos == DockMinimized )
1878 if ( d->oldPos == QMainWindow::Minimized ) 1878 if ( d->oldPos == QMainWindow::Minimized )
1879 rebuildLayout(); 1879 rebuildLayout();
1880 d->oldPos = (QMainWindow::ToolBarDock)barPos(); 1880 d->oldPos = (QMainWindow::ToolBarDock)barPos();
1881/*US 1881/*US
1882 if ( mainWindow() && mainWindow()->inherits( "KMainWindow" ) ) 1882 if ( mainWindow() && mainWindow()->inherits( "KMainWindow" ) )
1883 static_cast<KMainWindow *>(mainWindow())->setSettingsDirty(); 1883 static_cast<KMainWindow *>(mainWindow())->setSettingsDirty();
1884*/ 1884*/
1885} 1885}
1886 1886
1887/*US 1887/*US
1888void KToolBar::loadState( const QDomElement &element ) 1888void KToolBar::loadState( const QDomElement &element )
1889{ 1889{
1890 //kdDebug(220) << "KToolBar::loadState " << this << endl; 1890 //kdDebug(220) << "KToolBar::loadState " << this << endl;
1891 if ( !mainWindow() ) 1891 if ( !mainWindow() )
1892 return; 1892 return;
1893 1893
1894 { 1894 {
1895 QCString text = element.namedItem( "text" ).toElement().text().utf8(); 1895 QCString text = element.namedItem( "text" ).toElement().text().utf8();
1896 if ( text.isEmpty() ) 1896 if ( text.isEmpty() )
1897 text = element.namedItem( "Text" ).toElement().text().utf8(); 1897 text = element.namedItem( "Text" ).toElement().text().utf8();
1898 if ( !text.isEmpty() ) 1898 if ( !text.isEmpty() )
1899 setText( i18n( text ) ); 1899 setText( i18n( text ) );
1900 } 1900 }
1901 1901
1902 { 1902 {
1903 QCString attrFullWidth = element.attribute( "fullWidth" ).lower().latin1(); 1903 QCString attrFullWidth = element.attribute( "fullWidth" ).lower().latin1();
1904 if ( !attrFullWidth.isEmpty() ) 1904 if ( !attrFullWidth.isEmpty() )
1905 setFullSize( attrFullWidth == "true" ); 1905 setFullSize( attrFullWidth == "true" );
1906 } 1906 }
1907 1907
1908 Dock dock = DockTop; 1908 Dock dock = DockTop;
1909 { 1909 {
1910 QCString attrPosition = element.attribute( "position" ).lower().latin1(); 1910 QCString attrPosition = element.attribute( "position" ).lower().latin1();
1911 //kdDebug(220) << "KToolBar::loadState attrPosition=" << attrPosition << endl; 1911 //kdDebug(220) << "KToolBar::loadState attrPosition=" << attrPosition << endl;
1912 if ( !attrPosition.isEmpty() ) { 1912 if ( !attrPosition.isEmpty() ) {
1913 if ( attrPosition == "top" ) 1913 if ( attrPosition == "top" )
1914 dock = DockTop; 1914 dock = DockTop;
1915 else if ( attrPosition == "left" ) 1915 else if ( attrPosition == "left" )
1916 dock = DockLeft; 1916 dock = DockLeft;
1917 else if ( attrPosition == "right" ) 1917 else if ( attrPosition == "right" )
1918 dock = DockRight; 1918 dock = DockRight;
1919 else if ( attrPosition == "bottom" ) 1919 else if ( attrPosition == "bottom" )
1920 dock = DockBottom; 1920 dock = DockBottom;
1921 else if ( attrPosition == "floating" ) 1921 else if ( attrPosition == "floating" )
1922 dock = DockTornOff; 1922 dock = DockTornOff;
1923 else if ( attrPosition == "flat" ) 1923 else if ( attrPosition == "flat" )
1924 dock = DockMinimized; 1924 dock = DockMinimized;
1925 } 1925 }
1926 } 1926 }
1927 1927
1928 { 1928 {
1929 QCString attrIconText = element.attribute( "iconText" ).lower().latin1(); 1929 QCString attrIconText = element.attribute( "iconText" ).lower().latin1();
1930 if ( !attrIconText.isEmpty() ) { 1930 if ( !attrIconText.isEmpty() ) {
1931 //kdDebug(220) << "KToolBar::loadState attrIconText=" << attrIconText << endl; 1931 //kdDebug(220) << "KToolBar::loadState attrIconText=" << attrIconText << endl;
1932 if ( attrIconText == "icontextright" ) 1932 if ( attrIconText == "icontextright" )
1933 setIconText( KToolBar::IconTextRight ); 1933 setIconText( KToolBar::IconTextRight );
1934 else if ( attrIconText == "textonly" ) 1934 else if ( attrIconText == "textonly" )
1935 setIconText( KToolBar::TextOnly ); 1935 setIconText( KToolBar::TextOnly );
1936 else if ( attrIconText == "icontextbottom" ) 1936 else if ( attrIconText == "icontextbottom" )
1937 setIconText( KToolBar::IconTextBottom ); 1937 setIconText( KToolBar::IconTextBottom );
1938 else if ( attrIconText == "icononly" ) 1938 else if ( attrIconText == "icononly" )
1939 setIconText( KToolBar::IconOnly ); 1939 setIconText( KToolBar::IconOnly );
1940 } else 1940 } else
1941 // Use global setting 1941 // Use global setting
1942 setIconText( iconTextSetting() ); 1942 setIconText( iconTextSetting() );
1943 } 1943 }
1944 1944
1945 { 1945 {
1946 QString attrIconSize = element.attribute( "iconSize" ).lower(); 1946 QString attrIconSize = element.attribute( "iconSize" ).lower();
1947 if ( !attrIconSize.isEmpty() ) 1947 if ( !attrIconSize.isEmpty() )
1948 d->IconSizeDefault = attrIconSize.toInt(); 1948 d->IconSizeDefault = attrIconSize.toInt();
1949 setIconSize( d->IconSizeDefault ); 1949 setIconSize( d->IconSizeDefault );
1950 } 1950 }
1951 1951
1952 { 1952 {
1953 QString attrIndex = element.attribute( "index" ).lower(); 1953 QString attrIndex = element.attribute( "index" ).lower();
1954 if ( !attrIndex.isEmpty() ) 1954 if ( !attrIndex.isEmpty() )
1955 d->IndexDefault = attrIndex.toInt(); 1955 d->IndexDefault = attrIndex.toInt();
1956 } 1956 }
1957 1957
1958 { 1958 {
1959 QString attrOffset = element.attribute( "offset" ).lower(); 1959 QString attrOffset = element.attribute( "offset" ).lower();
1960 if ( !attrOffset.isEmpty() ) 1960 if ( !attrOffset.isEmpty() )
1961 d->OffsetDefault = attrOffset.toInt(); 1961 d->OffsetDefault = attrOffset.toInt();
1962 } 1962 }
1963 1963
1964 { 1964 {
1965 QString attrNewLine = element.attribute( "newline" ).lower(); 1965 QString attrNewLine = element.attribute( "newline" ).lower();
1966 if ( !attrNewLine.isEmpty() ) 1966 if ( !attrNewLine.isEmpty() )
1967 d->NewLineDefault = attrNewLine == "true"; 1967 d->NewLineDefault = attrNewLine == "true";
1968 } 1968 }
1969 1969
1970 { 1970 {
1971 QString attrHidden = element.attribute( "hidden" ).lower(); 1971 QString attrHidden = element.attribute( "hidden" ).lower();
1972 if ( !attrHidden.isEmpty() ) 1972 if ( !attrHidden.isEmpty() )
1973 d->HiddenDefault = attrHidden == "true"; 1973 d->HiddenDefault = attrHidden == "true";
1974 } 1974 }
1975 1975
1976 d->toolBarInfo = KToolBarPrivate::ToolBarInfo( dock, d->IndexDefault, d->NewLineDefault, d->OffsetDefault ); 1976 d->toolBarInfo = KToolBarPrivate::ToolBarInfo( dock, d->IndexDefault, d->NewLineDefault, d->OffsetDefault );
1977 mainWindow()->addDockWindow( this, dock, d->NewLineDefault ); 1977 mainWindow()->addDockWindow( this, dock, d->NewLineDefault );
1978//US mainWindow()->moveDockWindow( this, dock, d->NewLineDefault, d->IndexDefault, d->OffsetDefault ); 1978//US mainWindow()->moveDockWindow( this, dock, d->NewLineDefault, d->IndexDefault, d->OffsetDefault );
1979 mainWindow()->moveToolBar( this, dock, d->NewLineDefault, d->IndexDefault, d->OffsetDefault ); 1979 mainWindow()->moveToolBar( this, dock, d->NewLineDefault, d->IndexDefault, d->OffsetDefault );
1980 1980
1981 // Apply the highlight button setting 1981 // Apply the highlight button setting
1982 d->m_highlight = highlightSetting(); 1982 d->m_highlight = highlightSetting();
1983 1983
1984 // Apply transparent-toolbar-moving setting (ok, this is global to the mainwindow, 1984 // Apply transparent-toolbar-moving setting (ok, this is global to the mainwindow,
1985 // but we do it only if there are toolbars...) 1985 // but we do it only if there are toolbars...)
1986 if ( transparentSetting() != !mainWindow()->opaqueMoving() ) 1986 if ( transparentSetting() != !mainWindow()->opaqueMoving() )
1987 mainWindow()->setOpaqueMoving( !transparentSetting() ); 1987 mainWindow()->setOpaqueMoving( !transparentSetting() );
1988 1988
1989 if ( d->HiddenDefault ) 1989 if ( d->HiddenDefault )
1990 hide(); 1990 hide();
1991 else 1991 else
1992 show(); 1992 show();
1993 1993
1994 getAttributes( d->PositionDefault, d->IconTextDefault, d->IndexDefault ); 1994 getAttributes( d->PositionDefault, d->IconTextDefault, d->IndexDefault );
1995} 1995}
1996*/ 1996*/
1997 1997
1998void KToolBar::getAttributes( QString &position, QString &icontext, int &index ) 1998void KToolBar::getAttributes( QString &position, QString &icontext, int &index )
1999{ 1999{
2000 // get all of the stuff to save 2000 // get all of the stuff to save
2001 switch ( barPos() ) { 2001 switch ( barPos() ) {
2002 case KToolBar::Flat: 2002 case KToolBar::Flat:
2003 position = "Flat"; 2003 position = "Flat";
2004 break; 2004 break;
2005 case KToolBar::Bottom: 2005 case KToolBar::Bottom:
2006 position = "Bottom"; 2006 position = "Bottom";
2007 break; 2007 break;
2008 case KToolBar::Left: 2008 case KToolBar::Left:
2009 position = "Left"; 2009 position = "Left";
2010 break; 2010 break;
2011 case KToolBar::Right: 2011 case KToolBar::Right:
2012 position = "Right"; 2012 position = "Right";
2013 break; 2013 break;
2014 case KToolBar::Floating: 2014 case KToolBar::Floating:
2015 position = "Floating"; 2015 position = "Floating";
2016 break; 2016 break;
2017 case KToolBar::Top: 2017 case KToolBar::Top:
2018 default: 2018 default:
2019 position = "Top"; 2019 position = "Top";
2020 break; 2020 break;
2021 } 2021 }
2022 2022
2023 if ( mainWindow() ) { 2023 if ( mainWindow() ) {
2024 QMainWindow::ToolBarDock dock; 2024 QMainWindow::ToolBarDock dock;
2025 bool newLine; 2025 bool newLine;
2026 int offset; 2026 int offset;
2027 mainWindow()->getLocation( this, dock, index, newLine, offset ); 2027 mainWindow()->getLocation( this, dock, index, newLine, offset );
2028 } 2028 }
2029 2029
2030 switch (d->m_iconText) { 2030 switch (d->m_iconText) {
2031 case KToolBar::IconTextRight: 2031 case KToolBar::IconTextRight:
2032 icontext = "IconTextRight"; 2032 icontext = "IconTextRight";
2033 break; 2033 break;
2034 case KToolBar::IconTextBottom: 2034 case KToolBar::IconTextBottom:
2035 icontext = "IconTextBottom"; 2035 icontext = "IconTextBottom";
2036 break; 2036 break;
2037 case KToolBar::TextOnly: 2037 case KToolBar::TextOnly:
2038 icontext = "TextOnly"; 2038 icontext = "TextOnly";
2039 break; 2039 break;
2040 case KToolBar::IconOnly: 2040 case KToolBar::IconOnly:
2041 default: 2041 default:
2042 icontext = "IconOnly"; 2042 icontext = "IconOnly";
2043 break; 2043 break;
2044 } 2044 }
2045} 2045}
2046/*US 2046/*US
2047void KToolBar::saveState( QDomElement &current ) 2047void KToolBar::saveState( QDomElement &current )
2048{ 2048{
2049 QString position, icontext; 2049 QString position, icontext;
2050 int index = -1; 2050 int index = -1;
2051 getAttributes( position, icontext, index ); 2051 getAttributes( position, icontext, index );
2052 2052
2053 current.setAttribute( "noMerge", "1" ); 2053 current.setAttribute( "noMerge", "1" );
2054 current.setAttribute( "position", position ); 2054 current.setAttribute( "position", position );
2055 current.setAttribute( "iconText", icontext ); 2055 current.setAttribute( "iconText", icontext );
2056 current.setAttribute( "index", index ); 2056 current.setAttribute( "index", index );
2057 current.setAttribute( "offset", offset() ); 2057 current.setAttribute( "offset", offset() );
2058 current.setAttribute( "newline", newLine() ); 2058 current.setAttribute( "newline", newLine() );
2059 if ( isHidden() ) 2059 if ( isHidden() )
2060 current.setAttribute( "hidden", "true" ); 2060 current.setAttribute( "hidden", "true" );
2061 d->modified = true; 2061 d->modified = true;
2062} 2062}
2063*/ 2063*/
2064 2064
2065void KToolBar::positionYourself( bool force ) 2065void KToolBar::positionYourself( bool force )
2066{ 2066{
2067 if (force) 2067 if (force)
2068 d->positioned = false; 2068 d->positioned = false;
2069 2069
2070 if ( d->positioned || !mainWindow() ) 2070 if ( d->positioned || !mainWindow() )
2071 { 2071 {
2072 //kdDebug(220) << "KToolBar::positionYourself d->positioned=true ALREADY DONE" << endl; 2072 //kdDebug(220) << "KToolBar::positionYourself d->positioned=true ALREADY DONE" << endl;
2073 return; 2073 return;
2074 } 2074 }
2075 // we can't test for ForceHide after moveDockWindow because QDockArea 2075 // we can't test for ForceHide after moveDockWindow because QDockArea
2076 // does a reparent() with showIt == true 2076 // does a reparent() with showIt == true
2077 bool doHide = isHidden(); 2077 bool doHide = isHidden();
2078 //kdDebug(220) << "positionYourself " << name() << " dock=" << d->toolBarInfo.dock << " newLine=" << d->toolBarInfo.newline << " offset=" << d->toolBarInfo.offset << endl; 2078 //kdDebug(220) << "positionYourself " << name() << " dock=" << d->toolBarInfo.dock << " newLine=" << d->toolBarInfo.newline << " offset=" << d->toolBarInfo.offset << endl;
2079/*US mainWindow()->moveDockWindow( this, d->toolBarInfo.dock, 2079/*US mainWindow()->moveDockWindow( this, d->toolBarInfo.dock,
2080 d->toolBarInfo.newline, 2080 d->toolBarInfo.newline,
2081 d->toolBarInfo.index, 2081 d->toolBarInfo.index,
2082 d->toolBarInfo.offset ); 2082 d->toolBarInfo.offset );
2083*/ 2083*/
2084 mainWindow()->moveToolBar( this, d->toolBarInfo.dock, d->NewLineDefault, d->IndexDefault, d->OffsetDefault ); 2084 mainWindow()->moveToolBar( this, d->toolBarInfo.dock, d->NewLineDefault, d->IndexDefault, d->OffsetDefault );
2085 2085
2086 if ( doHide ) 2086 if ( doHide )
2087 hide(); 2087 hide();
2088 // This method can only have an effect once - unless force is set 2088 // This method can only have an effect once - unless force is set
2089 d->positioned = TRUE; 2089 d->positioned = TRUE;
2090} 2090}
2091 2091
2092//US KPopupMenu *KToolBar::contextMenu() 2092//US KPopupMenu *KToolBar::contextMenu()
2093QPopupMenu *KToolBar::contextMenu() 2093QPopupMenu *KToolBar::contextMenu()
2094{ 2094{
2095 if ( context ) 2095 if ( context )
2096 return context; 2096 return context;
2097 2097
2098 // Construct our context popup menu. Name it qt_dockwidget_internal so it 2098 // Construct our context popup menu. Name it qt_dockwidget_internal so it
2099 // won't be deleted by QToolBar::clear(). 2099 // won't be deleted by QToolBar::clear().
2100//US context = new KPopupMenu( this, "qt_dockwidget_internal" ); 2100//US context = new KPopupMenu( this, "qt_dockwidget_internal" );
2101 context = new QPopupMenu( this, "qt_dockwidget_internal" ); 2101 context = new QPopupMenu( this, "qt_dockwidget_internal" );
2102//US context->insertTitle(i18n("Toolbar Menu")); 2102//US context->insertTitle(i18n("Toolbar Menu"));
2103 2103
2104//US KPopupMenu *orient = new KPopupMenu( context, "orient" ); 2104//US KPopupMenu *orient = new KPopupMenu( context, "orient" );
2105 QPopupMenu *orient = new QPopupMenu( context, "orient" ); 2105 QPopupMenu *orient = new QPopupMenu( context, "orient" );
2106 orient->insertItem( i18n("toolbar position string","Top"), CONTEXT_TOP ); 2106 orient->insertItem( i18n("toolbar position string","Top"), CONTEXT_TOP );
2107 orient->insertItem( i18n("toolbar position string","Left"), CONTEXT_LEFT ); 2107 orient->insertItem( i18n("toolbar position string","Left"), CONTEXT_LEFT );
2108 orient->insertItem( i18n("toolbar position string","Right"), CONTEXT_RIGHT ); 2108 orient->insertItem( i18n("toolbar position string","Right"), CONTEXT_RIGHT );
2109 orient->insertItem( i18n("toolbar position string","Bottom"), CONTEXT_BOTTOM ); 2109 orient->insertItem( i18n("toolbar position string","Bottom"), CONTEXT_BOTTOM );
2110 orient->insertSeparator(-1); 2110 orient->insertSeparator(-1);
2111 //orient->insertItem( i18n("toolbar position string","Floating"), CONTEXT_FLOAT ); 2111 //orient->insertItem( i18n("toolbar position string","Floating"), CONTEXT_FLOAT );
2112 orient->insertItem( i18n("min toolbar", "Flat"), CONTEXT_FLAT ); 2112 orient->insertItem( i18n("min toolbar", "Flat"), CONTEXT_FLAT );
2113 2113
2114//US KPopupMenu *mode = new KPopupMenu( context, "mode" ); 2114//US KPopupMenu *mode = new KPopupMenu( context, "mode" );
2115 QPopupMenu *mode = new QPopupMenu( context, "mode" ); 2115 QPopupMenu *mode = new QPopupMenu( context, "mode" );
2116 mode->insertItem( i18n("Icons Only"), CONTEXT_ICONS ); 2116 mode->insertItem( i18n("Icons Only"), CONTEXT_ICONS );
2117 mode->insertItem( i18n("Text Only"), CONTEXT_TEXT ); 2117 mode->insertItem( i18n("Text Only"), CONTEXT_TEXT );
2118 mode->insertItem( i18n("Text Alongside Icons"), CONTEXT_TEXTRIGHT ); 2118 mode->insertItem( i18n("Text Alongside Icons"), CONTEXT_TEXTRIGHT );
2119 mode->insertItem( i18n("Text Under Icons"), CONTEXT_TEXTUNDER ); 2119 mode->insertItem( i18n("Text Under Icons"), CONTEXT_TEXTUNDER );
2120 2120
2121//US KPopupMenu *size = new KPopupMenu( context, "size" ); 2121//US KPopupMenu *size = new KPopupMenu( context, "size" );
2122 QPopupMenu *size = new QPopupMenu( context, "size" ); 2122 QPopupMenu *size = new QPopupMenu( context, "size" );
2123 size->insertItem( i18n("Default"), CONTEXT_ICONSIZES ); 2123 size->insertItem( i18n("Default"), CONTEXT_ICONSIZES );
2124 // Query the current theme for available sizes 2124 // Query the current theme for available sizes
2125 QValueList<int> avSizes; 2125 QValueList<int> avSizes;
2126/*US 2126/*US
2127 KIconTheme *theme = KGlobal::instance()->iconLoader()->theme(); 2127 KIconTheme *theme = KGlobal::instance()->iconLoader()->theme();
2128 if (!::qstrcmp(QObject::name(), "mainToolBar")) 2128 if (!::qstrcmp(QObject::name(), "mainToolBar"))
2129 avSizes = theme->querySizes( KIcon::MainToolbar); 2129 avSizes = theme->querySizes( KIcon::MainToolbar);
2130 else 2130 else
2131 avSizes = theme->querySizes( KIcon::Toolbar); 2131 avSizes = theme->querySizes( KIcon::Toolbar);
2132*/ 2132*/
2133 avSizes << 16; 2133 avSizes << 16;
2134 avSizes << 32; 2134 avSizes << 32;
2135 2135
2136 d->iconSizes = avSizes; 2136 d->iconSizes = avSizes;
2137 2137
2138 QValueList<int>::Iterator it; 2138 QValueList<int>::Iterator it;
2139 for (it=avSizes.begin(); it!=avSizes.end(); it++) { 2139 for (it=avSizes.begin(); it!=avSizes.end(); it++) {
2140 QString text; 2140 QString text;
2141 if ( *it < 19 ) 2141 if ( *it < 19 )
2142 text = i18n("Small (%1x%2)").arg(*it).arg(*it); 2142 text = i18n("Small (%1x%2)").arg(*it).arg(*it);
2143 else if (*it < 25) 2143 else if (*it < 25)
2144 text = i18n("Medium (%1x%2)").arg(*it).arg(*it); 2144 text = i18n("Medium (%1x%2)").arg(*it).arg(*it);
2145 else 2145 else
2146 text = i18n("Large (%1x%2)").arg(*it).arg(*it); 2146 text = i18n("Large (%1x%2)").arg(*it).arg(*it);
2147 //we use the size as an id, with an offset 2147 //we use the size as an id, with an offset
2148 size->insertItem( text, CONTEXT_ICONSIZES + *it ); 2148 size->insertItem( text, CONTEXT_ICONSIZES + *it );
2149 } 2149 }
2150 2150
2151 context->insertItem( i18n("Orientation"), orient ); 2151 context->insertItem( i18n("Orientation"), orient );
2152 orient->setItemChecked(CONTEXT_TOP, true); 2152 orient->setItemChecked(CONTEXT_TOP, true);
2153 context->insertItem( i18n("Text Position"), mode ); 2153 context->insertItem( i18n("Text Position"), mode );
2154 context->setItemChecked(CONTEXT_ICONS, true); 2154 context->setItemChecked(CONTEXT_ICONS, true);
2155 context->insertItem( i18n("Icon Size"), size ); 2155 context->insertItem( i18n("Icon Size"), size );
2156 2156
2157/*US 2157/*US
2158 if (mainWindow()->inherits("KMainWindow")) 2158 if (mainWindow()->inherits("KMainWindow"))
2159 { 2159 {
2160 if ( (static_cast<KMainWindow*>(mainWindow())->toolBarMenuAction()) && 2160 if ( (static_cast<KMainWindow*>(mainWindow())->toolBarMenuAction()) &&
2161 (static_cast<KMainWindow*>(mainWindow())->hasMenuBar()) ) 2161 (static_cast<KMainWindow*>(mainWindow())->hasMenuBar()) )
2162 2162
2163 (static_cast<KMainWindow*>(mainWindow()))->toolBarMenuAction()->plug(context); 2163 (static_cast<KMainWindow*>(mainWindow()))->toolBarMenuAction()->plug(context);
2164 } 2164 }
2165*/ 2165*/
2166 2166
2167 connect( context, SIGNAL( aboutToShow() ), this, SLOT( slotContextAboutToShow() ) ); 2167 connect( context, SIGNAL( aboutToShow() ), this, SLOT( slotContextAboutToShow() ) );
2168 return context; 2168 return context;
2169} 2169}
2170 2170
2171void KToolBar::slotContextAboutToShow() 2171void KToolBar::slotContextAboutToShow()
2172{ 2172{
2173 if (!d->m_configurePlugged) 2173 if (!d->m_configurePlugged)
2174 { 2174 {
2175 // try to find "configure toolbars" action 2175 // try to find "configure toolbars" action
2176 2176
2177 KXMLGUIClient *xmlGuiClient = d->m_xmlguiClient; 2177 KXMLGUIClient *xmlGuiClient = d->m_xmlguiClient;
2178 if ( !xmlGuiClient && mainWindow() && mainWindow()->inherits( "KMainWindow" ) ) 2178 if ( !xmlGuiClient && mainWindow() && mainWindow()->inherits( "KMainWindow" ) )
2179 xmlGuiClient = (KXMLGUIClient *)mainWindow(); 2179 xmlGuiClient = (KXMLGUIClient *)mainWindow();
2180 if ( xmlGuiClient ) 2180 if ( xmlGuiClient )
2181 { 2181 {
2182 KAction *configureAction = xmlGuiClient->actionCollection()->action(KStdAction::stdName(KStdAction::ConfigureToolbars)); 2182 KAction *configureAction = xmlGuiClient->actionCollection()->action(KStdAction::stdName(KStdAction::ConfigureToolbars));
2183 if ( configureAction ) 2183 if ( configureAction )
2184 { 2184 {
2185 configureAction->plug(context); 2185 configureAction->plug(context);
2186 d->m_configurePlugged = true; 2186 d->m_configurePlugged = true;
2187 } 2187 }
2188 } 2188 }
2189 } 2189 }
2190 2190
2191 for(int i = CONTEXT_ICONS; i <= CONTEXT_TEXTUNDER; ++i) 2191 for(int i = CONTEXT_ICONS; i <= CONTEXT_TEXTUNDER; ++i)
2192 context->setItemChecked(i, false); 2192 context->setItemChecked(i, false);