summaryrefslogtreecommitdiffstats
path: root/tdmlib/kgreet_winbind.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tdmlib/kgreet_winbind.cpp')
-rw-r--r--tdmlib/kgreet_winbind.cpp52
1 files changed, 46 insertions, 6 deletions
diff --git a/tdmlib/kgreet_winbind.cpp b/tdmlib/kgreet_winbind.cpp
index aa7e39b18..cddb2866b 100644
--- a/tdmlib/kgreet_winbind.cpp
+++ b/tdmlib/kgreet_winbind.cpp
@@ -74,7 +74,9 @@ KWinbindGreeter::KWinbindGreeter( KGreeterPluginHandler *_handler,
ctx( _ctx ),
exp( -1 ),
pExp( -1 ),
- running( false )
+ running( false ),
+ userEntryLocked(false),
+ suppressInfoMsg(false)
{
KdmItem *user_entry = 0, *pw_entry = 0, *domain_entry = 0;
TQGridLayout *grid = 0;
@@ -297,6 +299,11 @@ KWinbindGreeter::setUser( const TQString &user )
passwdEdit->selectAll();
}
+void KWinbindGreeter::lockUserEntry( const bool lock ) {
+ userEntryLocked = lock;
+ loginEdit->setEnabled(!lock);
+}
+
void // virtual
KWinbindGreeter::setPassword( const TQString &pass )
{
@@ -319,6 +326,27 @@ KWinbindGreeter::setEnabled( bool enable )
passwdEdit->setFocus();
}
+void KWinbindGreeter::setInfoMessageDisplay(bool enable) {
+ suppressInfoMsg = !enable;
+}
+
+void KWinbindGreeter::setPasswordPrompt(const TQString &prompt) {
+#if 0
+ if (passwdLabel) {
+ if (prompt != TQString::null) {
+ passwdLabel->setText(prompt);
+ }
+ else {
+ passwdLabel->setText(passwordPrompt());
+ }
+ if (grid) {
+ grid->invalidate();
+ grid->activate();
+ }
+ }
+#endif
+}
+
void // private
KWinbindGreeter::returnData()
{
@@ -348,8 +376,12 @@ bool // virtual
KWinbindGreeter::textMessage( const char *text, bool err )
{
if (!err &&
- TQString( text ).find( TQRegExp( "^Changing password for [^ ]+$" ) ) >= 0)
+ TQString( text ).find( TQRegExp( "^Changing password for [^ ]+$" ) ) >= 0) {
+ return true;
+ }
+ if (!err && suppressInfoMsg) {
return true;
+ }
return false;
}
@@ -524,12 +556,20 @@ KWinbindGreeter::clear()
void
KWinbindGreeter::setActive( bool enable )
{
- if (domainCombo)
+ if (domainCombo) {
domainCombo->setEnabled( enable );
- if (loginEdit)
- loginEdit->setEnabled( enable );
- if (passwdEdit)
+ }
+ if (loginEdit) {
+ if (userEntryLocked) {
+ loginEdit->setEnabled( false );
+ }
+ else {
+ loginEdit->setEnabled( enable );
+ }
+ }
+ if (passwdEdit) {
passwdEdit->setEnabled( enable );
+ }
}
void