summaryrefslogtreecommitdiffstats
path: root/kdm/kfrontend/kgdialog.cpp
diff options
context:
space:
mode:
authorTimothy Pearson <[email protected]>2012-01-22 01:02:36 -0600
committerTimothy Pearson <[email protected]>2012-01-22 01:02:36 -0600
commitb81e43465b14836b17e4fe2dea91c78a2bdd29b3 (patch)
tree7815d61ce59a6ccb6e655ed44f5fea786f520985 /kdm/kfrontend/kgdialog.cpp
parent7021f40c13f949b7cb5ded32d0241d648a43bf6c (diff)
downloadtdebase-b81e43465b14836b17e4fe2dea91c78a2bdd29b3.tar.gz
tdebase-b81e43465b14836b17e4fe2dea91c78a2bdd29b3.zip
Part 2 of prior commit
Diffstat (limited to 'kdm/kfrontend/kgdialog.cpp')
-rw-r--r--kdm/kfrontend/kgdialog.cpp240
1 files changed, 0 insertions, 240 deletions
diff --git a/kdm/kfrontend/kgdialog.cpp b/kdm/kfrontend/kgdialog.cpp
deleted file mode 100644
index 667eca8e1..000000000
--- a/kdm/kfrontend/kgdialog.cpp
+++ /dev/null
@@ -1,240 +0,0 @@
-/*
-
-Base class for various tdm greeter dialogs
-
-Copyright (C) 1997, 1998 Steffen Hansen <[email protected]>
-Copyright (C) 2000-2004 Oswald Buddenhagen <[email protected]>
-
-
-This program is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
-*/
-
-#include "kgdialog.h"
-#include "kgverify.h"
-#include "kconsole.h"
-#include "tdmshutdown.h"
-#include "tdm_greet.h"
-
-#include <klocale.h>
-#include <kiconloader.h>
-
-#include <tqaccel.h>
-#include <tqlayout.h>
-#include <tqpushbutton.h>
-#include <tqpopupmenu.h>
-#include <tqapplication.h>
-
-#include <stdlib.h>
-
-KGDialog::KGDialog( bool themed ) : inherited( 0, !themed )
-{
-#ifdef WITH_TDM_XCONSOLE
- consoleView = _showLog ? new KConsole( this ) : 0;
-#endif
-
- optMenu = 0;
- verify = 0;
-}
-
-void
-#ifdef XDMCP
-KGDialog::completeMenu( int _switchIf, int _switchCode, const TQString &_switchMsg, int _switchAccel )
-#else
-KGDialog::completeMenu()
-#endif
-{
-#ifdef HAVE_VTS
- if (_isLocal) {
- dpyMenu = new TQPopupMenu( this );
- int id = inserten( i18n("Sw&itch User"), ALT+Key_I, dpyMenu );
- connect( dpyMenu, TQT_SIGNAL(activated( int )),
- TQT_SLOT(slotDisplaySelected( int )) );
- connect( dpyMenu, TQT_SIGNAL(aboutToShow()),
- TQT_SLOT(slotPopulateDisplays()) );
- TQAccel *accel = new TQAccel( this );
- accel->insertItem( ALT+CTRL+Key_Insert, id );
- connect( accel, TQT_SIGNAL(activated( int )), TQT_SLOT(slotActivateMenu( int )) );
- }
-#endif
-
- if (_allowClose)
- inserten( _isLocal ? i18n("R&estart X Server") : i18n("Clos&e Connection"),
- ALT+Key_E, TQT_SLOT(slotExit()) );
-
-#ifdef XDMCP
- if (_isLocal && _loginMode != _switchIf) {
- switchCode = _switchCode;
- inserten( _switchMsg, _switchAccel, TQT_SLOT(slotSwitch()) );
- }
-#endif
-
- if (_hasConsole)
- inserten( i18n("Co&nsole Login"), ALT+Key_N, TQT_SLOT(slotConsole()) );
-
- if (_allowShutdown != SHUT_NONE) {
- ensureMenu();
- optMenu->insertItem(SmallIconSet( "exit" ), i18n("&Shutdown..."), this, TQT_SLOT(slotShutdown(int)), ALT+Key_S );
- TQAccel *accel = new TQAccel( this );
- accel->insertItem( ALT+CTRL+Key_Delete );
- connect( accel, TQT_SIGNAL(activated( int )), TQT_SLOT(slotShutdown( int )) );
- accel = new TQAccel( this );
- accel->insertItem( SHIFT+ALT+CTRL+Key_PageUp, SHUT_REBOOT );
- connect( accel, TQT_SIGNAL(activated( int )), TQT_SLOT(slotShutdown( int )) );
- accel = new TQAccel( this );
- accel->insertItem( SHIFT+ALT+CTRL+Key_PageDown, SHUT_HALT );
- connect( accel, TQT_SIGNAL(activated( int )), TQT_SLOT(slotShutdown( int )) );
- }
-}
-
-void
-KGDialog::ensureMenu()
-{
- if (!optMenu) {
- optMenu = new TQPopupMenu( this );
- optMenu->setCheckable( false );
- needSep = false;
- } else if (needSep) {
- optMenu->insertSeparator();
- needSep = false;
- }
-}
-
-void
-KGDialog::inserten( const TQString& txt, int accel, const char *member )
-{
- ensureMenu();
- optMenu->insertItem( txt, this, member, accel );
-}
-
-int
-KGDialog::inserten( const TQString& txt, int accel, TQPopupMenu *cmnu )
-{
- ensureMenu();
- int id = optMenu->insertItem( txt, cmnu );
- optMenu->setAccel( accel, id );
- optMenu->connectItem( id, this, TQT_SLOT(slotActivateMenu( int )) );
- optMenu->setItemParameter( id, id );
- return id;
-}
-
-void
-KGDialog::slotActivateMenu( int id )
-{
- TQPopupMenu *cmnu = optMenu->findItem( id )->popup();
- TQSize sh( cmnu->sizeHint() / 2 );
- cmnu->exec( geometry().center() - TQPoint( sh.width(), sh.height() ) );
-}
-
-void
-KGDialog::slotExit()
-{
- if (verify)
- verify->abort();
- ::exit( EX_RESERVER_DPY );
-}
-
-void
-KGDialog::slotSwitch()
-{
-#ifdef XDMCP
- // workaround for Qt bug
- TQTimer::singleShot( 0, this, TQT_SLOT(slotReallySwitch()) );
-#endif
-}
-
-void
-KGDialog::slotReallySwitch()
-{
-#ifdef XDMCP
- done( switchCode );
-#endif
-}
-
-void
-KGDialog::slotConsole()
-{
-#ifdef HAVE_VTS
- dpySpec *sess = fetchSessions( 0 );
- if (sess) {
- if (verify)
- verify->suspend();
- int ret = TDMConfShutdown( -1, sess, SHUT_CONSOLE, 0 ).exec();
- if (verify)
- verify->resume();
- disposeSessions( sess );
- if (!ret)
- return;
- }
-#else
- if (verify)
- verify->abort();
-#endif
- GSet( 1 );
- GSendInt( G_Console );
- GSet( 0 );
-}
-
-void
-KGDialog::slotShutdown( int id )
-{
- if (verify)
- verify->suspend();
- if (id < 0) {
- if (_scheduledSd == SHUT_ALWAYS)
- TDMShutdown::scheduleShutdown( this );
- else
- TDMSlimShutdown( this ).exec();
- } else
- TDMSlimShutdown::externShutdown( id, 0, -1 );
- if (verify)
- verify->resume();
-}
-
-void
-KGDialog::slotDisplaySelected( int vt )
-{
-#ifdef HAVE_VTS
- GSet( 1 );
- GSendInt( G_Activate );
- GSendInt( vt );
- GSet( 0 );
-#else
- (void)vt;
-#endif
-}
-
-void
-KGDialog::slotPopulateDisplays()
-{
-#ifdef HAVE_VTS
- dpyMenu->clear();
- dpySpec *sessions = fetchSessions( lstPassive | lstTTY );
- TQString user, loc;
- for (dpySpec *sess = sessions; sess; sess = sess->next) {
- decodeSess( sess, user, loc );
- int id = dpyMenu->insertItem(
- i18n("session (location)", "%1 (%2)").arg( user ).arg( loc ),
- sess->vt ? sess->vt : -1 );
- if (!sess->vt)
- dpyMenu->setItemEnabled( id, false );
- if (sess->flags & isSelf)
- dpyMenu->setItemChecked( id, true );
- }
- disposeSessions( sessions );
-#endif
-}
-
-#include "kgdialog.moc"