Sophie

Sophie

distrib > Mandriva > 2006.0 > i586 > media > main-src > by-pkgid > a6bc312ce50b5c8d0c51736e58ac32bc > files > 97

kdebase-3.4.2-55mdk.src.rpm

--- kdebase/kcontrol/kdm/kdm-appear.h--	2003-02-20 18:29:40.000000000 +0100
+++ kdebase/kcontrol/kdm/kdm-appear.h	2003-02-20 18:31:31.000000000 +0100
@@ -15,7 +15,7 @@
     along with this library; see the file COPYING.LIB.  If not, write to
     the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
     Boston, MA 02111-1307, USA.
-*/  
+*/
 
 
 #ifndef __KDMAPPEAR_H__
@@ -67,13 +67,14 @@ protected:
 	void iconLoaderDragEnterEvent(QDragEnterEvent *event);
 	void iconLoaderDropEvent(QDropEvent *event);
 	bool setLogo(QString logo);
+    static QStringList sortStringList(QStringList list);
 
 private slots:
 	void slotAreaRadioClicked(int id);
 	void slotPosRadioClicked(int id);
 	void slotLogoButtonClicked();
 	void changed();
- 
+
 private:
 	enum { KdmNone, KdmClock, KdmLogo };
 	QLabel      *logoLabel;
--- kdebase/kcontrol/kdm/kdm-appear.cpp--	2003-02-20 18:29:37.000000000 +0100
+++ kdebase/kcontrol/kdm/kdm-appear.cpp	2003-02-20 18:31:34.000000000 +0100
@@ -192,7 +192,10 @@ KDMAppearanceWidget::KDMAppearanceWidget
   hglay->setColStretch(3, 1);
 
   guicombo = new KComboBox(false, hlp);
-  guicombo->insertStringList(QStyleFactory::keys());
+  QStringList list = QStyleFactory::keys();
+  list = KDMAppearanceWidget::sortStringList(list);
+  guicombo->insertStringList(list);
+
   label = new QLabel(guicombo, i18n("GUI s&tyle:"), hlp);
   connect(guicombo, SIGNAL(activated(int)), SLOT(changed()));
   hglay->addWidget(label, 0, 0);
@@ -301,7 +304,8 @@ void KDMAppearanceWidget::loadColorSchem
   QStringList list = KGlobal::dirs()->findAllResources("data",
        "kdisplay/color-schemes/*.kcsrc", false, true);
 
-  combo->insertItem("Default");
+  QStringList tmp;
+  tmp.append( "Default");
   for (QStringList::ConstIterator it = list.begin(); it != list.end(); it++) {
     KSimpleConfig *config = new KSimpleConfig(*it, true);
     config->setGroup("Color Scheme");
@@ -309,10 +313,11 @@ void KDMAppearanceWidget::loadColorSchem
     QString str;
     if (!(str = config->readEntry("Name")).isEmpty() ||
 	!(str = config->readEntry("name")).isEmpty())
-	combo->insertItem(str);
-
+        tmp.append( str );
     delete config;
   }
+  tmp = KDMAppearanceWidget::sortStringList(tmp);
+  combo->insertStringList(tmp);
 }
 
 bool KDMAppearanceWidget::setLogo(QString logo)
@@ -530,4 +535,21 @@ void KDMAppearanceWidget::changed()
   emit changed(true);
 }
 
+QStringList KDMAppearanceWidget::sortStringList(QStringList list)
+{
+    QStringList lst;
+    QStringList tmp(list);
+    QMap<QString,  QString> map;
+    for ( QStringList::Iterator it = tmp.begin(); it != tmp.end(); ++it )
+    {
+        lst<<(*it).lower();
+        map.insert((*it).lower(), *it);
+    }
+    lst.sort();
+    tmp.clear();
+    for ( QStringList::Iterator it = lst.begin(); it != lst.end(); ++it )
+        tmp<<map.find(*it).data();
+    return tmp;
+}
+
 #include "kdm-appear.moc"