diff -Naur kdebase-3.5.8.orig/kicker/applets/lockout/lockout.cpp kdebase-3.5.8/kicker/applets/lockout/lockout.cpp
--- kdebase-3.5.8.orig/kicker/applets/lockout/lockout.cpp	2007-10-08 15:58:46.000000000 +0200
+++ kdebase-3.5.8/kicker/applets/lockout/lockout.cpp	2007-11-20 14:13:51.000000000 +0100
@@ -31,6 +31,7 @@
 #include <qtoolbutton.h>
 #include <qstyle.h>
 #include <qtooltip.h>
+#include <qobjectlist.h>
 
 #include <dcopclient.h>
 
@@ -54,7 +55,7 @@
 }
 
 Lockout::Lockout( const QString& configFile, QWidget *parent, const char *name)
-    : KPanelApplet( configFile, KPanelApplet::Normal, 0, parent, name ), bTransparent( false )
+    : KPanelApplet( configFile, KPanelApplet::Normal, 0, parent, name ), bTransparent( false ), bAlternateButtonOrder( false )
 {
     KConfig *conf = config();
     conf->setGroup("lockout");
@@ -71,8 +72,16 @@
     layout->setMargin( 0 );
     layout->setSpacing( 0 );
 
-    lockButton = new QToolButton( this, "lock");
-    logoutButton = new QToolButton( this, "logout");
+    bAlternateButtonOrder = !conf->readBoolEntry( "OriginalLayout",false );
+
+    if (bAlternateButtonOrder) {
+        lockButton = new QToolButton( this, "lock");
+        logoutButton = new QToolButton( this, "logout");
+    }
+    else {
+        logoutButton = new QToolButton( this, "logout");
+        lockButton = new QToolButton( this, "lock");
+    }
 
     lockButton->setBackgroundMode(X11ParentRelative);
     logoutButton->setBackgroundMode(X11ParentRelative);
@@ -212,11 +221,14 @@
                 popup->insertItem( SmallIcon( "lock" ), i18n("Lock Session"),
                                    this, SLOT( lock() ) );
                 popup->insertSeparator();
+                popup->insertItem( i18n( "&Alternate Button Order" ), 90 );
                 popup->insertItem( i18n( "&Transparent" ), 100 );
                 popup->insertItem( SmallIcon( "configure" ),
                                    i18n( "&Configure Screen Saver..." ),
                                    this, SLOT( slotLockPrefs() ) );
 
+                popup->setItemChecked( 90, bAlternateButtonOrder );
+                popup->connectItem(90, this, SLOT( slotButtonOrder() ) );
                 popup->setItemChecked( 100, bTransparent );
                 popup->connectItem(100, this, SLOT( slotTransparent() ) );
                 if (conf->entryIsImmutable( "Transparent" ))
@@ -233,11 +245,14 @@
                 popup->insertItem( SmallIcon( "exit" ), i18n("&Log Out..."),
                                    this, SLOT( logout() ) );
                 popup->insertSeparator();
+                popup->insertItem( i18n( "&Alternate Button Order" ), 90 );
                 popup->insertItem( i18n( "&Transparent" ), 100 );
                 popup->insertItem( SmallIcon( "configure" ),
                                    i18n( "&Configure Session Manager..." ),
                                    this, SLOT( slotLogoutPrefs() ) );
 
+                popup->setItemChecked( 90, bAlternateButtonOrder );
+                popup->connectItem(90, this, SLOT( slotButtonOrder() ) );
                 popup->setItemChecked( 100, bTransparent );
                 popup->connectItem(100, this, SLOT( slotTransparent() ) );
                 if (conf->entryIsImmutable( "Transparent" ))
@@ -272,6 +287,27 @@
     conf->sync();
 }
 
+void Lockout::slotButtonOrder()
+{
+    QObject* child = children()->getFirst();
+
+    if (bAlternateButtonOrder)
+      child = lockButton;
+    else
+      child = logoutButton;
+
+    removeChild(child);
+    insertChild(child);
+    update();
+
+    bAlternateButtonOrder = !bAlternateButtonOrder;
+
+    KConfig* conf = config();
+    conf->setGroup("lockout");
+    conf->writeEntry( "OriginalLayout", !bAlternateButtonOrder );
+    conf->sync();
+}
+
 void Lockout::slotLogoutPrefs()
 {
     // Run the logout settings.
diff -Naur kdebase-3.5.8.orig/kicker/applets/lockout/lockout.h kdebase-3.5.8/kicker/applets/lockout/lockout.h
--- kdebase-3.5.8.orig/kicker/applets/lockout/lockout.h	2007-10-08 15:58:46.000000000 +0200
+++ kdebase-3.5.8/kicker/applets/lockout/lockout.h	2007-11-20 14:13:51.000000000 +0100
@@ -35,6 +35,7 @@
 
     void slotLockPrefs();
     void slotLogoutPrefs();
+    void slotButtonOrder();
     void slotTransparent();
     void slotIconChanged();
 
@@ -46,6 +47,7 @@
     QBoxLayout *layout;
 
     bool bTransparent;
+    bool bAlternateButtonOrder;
 };
 
 #endif // LOCKOUT_H
