Adding detach-away settings to identities, removing unneeded crap. Probably breaks...
authorManuel Nickschas <sputnick@quassel-irc.org>
Wed, 13 Aug 2008 22:15:05 +0000 (00:15 +0200)
committerManuel Nickschas <sputnick@quassel-irc.org>
Sun, 17 Aug 2008 22:05:17 +0000 (00:05 +0200)
src/common/identity.cpp
src/common/identity.h
src/qtui/settingspages/identitiessettingspage.cpp
src/qtui/settingspages/identitiessettingspage.ui

index 3ce1d10..7d19204 100644 (file)
@@ -37,14 +37,13 @@ Identity::Identity(const Identity &other, QObject *parent) : SyncableObject(pare
             _awayNickEnabled(other.awayNickEnabled()),
             _awayReason(other.awayReason()),
             _awayReasonEnabled(other.awayReasonEnabled()),
-            _returnMessage(other.returnMessage()),
-            _returnMessageEnabled(other.returnMessageEnabled()),
             _autoAwayEnabled(other.autoAwayEnabled()),
             _autoAwayTime(other.autoAwayTime()),
             _autoAwayReason(other.autoAwayReason()),
             _autoAwayReasonEnabled(other.autoAwayReasonEnabled()),
-            _autoReturnMessage(other.autoReturnMessage()),
-            _autoReturnMessageEnabled(other.autoReturnMessageEnabled()),
+            _detachAwayEnabled(other.detachAwayEnabled()),
+            _detachAwayReason(other.detachAwayReason()),
+            _detachAwayReasonEnabled(other.detachAwayReasonEnabled()),
             _ident(other.ident()),
             _kickReason(other.kickReason()),
             _partReason(other.partReason()),
@@ -68,14 +67,13 @@ void Identity::setToDefaults() {
   setAwayNickEnabled(false);
   setAwayReason(tr("Gone fishing."));
   setAwayReasonEnabled(true);
-  setReturnMessage(tr("Brought fish."));
-  setReturnMessageEnabled(false);
   setAutoAwayEnabled(false);
   setAutoAwayTime(10);
   setAutoAwayReason(tr("Not here. No, really. not here!"));
   setAutoAwayReasonEnabled(false);
-  setAutoReturnMessage(tr("Back in action again!"));
-  setAutoReturnMessageEnabled(false);
+  setDetachAwayEnabled(false);
+  setDetachAwayReason(tr("All Quassel clients vanished from the face of the earth..."));
+  setDetachAwayReasonEnabled(false);
   setIdent("quassel");
   setKickReason(tr("Kindergarten is elsewhere!"));
   setPartReason(tr("http://quassel-irc.org - Chat comfortably. Anywhere."));
@@ -118,14 +116,6 @@ bool Identity::awayReasonEnabled() const {
   return _awayReasonEnabled;
 }
 
-QString Identity::returnMessage() const {
-  return _returnMessage;
-}
-
-bool Identity::returnMessageEnabled() const {
-  return _returnMessageEnabled;
-}
-
 bool Identity::autoAwayEnabled() const {
   return _autoAwayEnabled;
 }
@@ -142,12 +132,16 @@ bool Identity::autoAwayReasonEnabled() const {
   return _autoAwayReasonEnabled;
 }
 
-QString Identity::autoReturnMessage() const {
-  return _autoReturnMessage;
+bool Identity::detachAwayEnabled() const {
+  return _detachAwayEnabled;
 }
 
-bool Identity::autoReturnMessageEnabled() const {
-  return _autoReturnMessageEnabled;
+QString Identity::detachAwayReason() const {
+  return _detachAwayReason;
+}
+
+bool Identity::detachAwayReasonEnabled() const {
+  return _detachAwayReasonEnabled;
 }
 
 QString Identity::ident() const {
@@ -199,11 +193,6 @@ void Identity::setAwayReason(const QString &reason) {
   emit awayReasonSet(reason);
 }
 
-void Identity::setReturnMessage(const QString &message) {
-  _returnMessage = message;
-  emit returnMessageSet(message);
-}
-
 void Identity::setAwayNickEnabled(bool enabled) {
   _awayNickEnabled = enabled;
   emit awayNickEnabledSet(enabled);
@@ -214,11 +203,6 @@ void Identity::setAwayReasonEnabled(bool enabled) {
   emit awayReasonEnabledSet(enabled);
 }
 
-void Identity::setReturnMessageEnabled(bool enabled) {
-  _returnMessageEnabled = enabled;
-  emit returnMessageEnabledSet(enabled);
-}
-
 void Identity::setAutoAwayEnabled(bool enabled) {
   _autoAwayEnabled = enabled;
   emit autoAwayEnabledSet(enabled);
@@ -239,14 +223,19 @@ void Identity::setAutoAwayReasonEnabled(bool enabled) {
   emit autoAwayReasonEnabledSet(enabled);
 }
 
-void Identity::setAutoReturnMessage(const QString & message) {
-  _autoReturnMessage = message;
-  emit autoReturnMessageSet(message);
+void Identity::setDetachAwayEnabled(bool enabled) {
+  _detachAwayEnabled = enabled;
+  emit detachAwayEnabledSet(enabled);
 }
 
-void Identity::setAutoReturnMessageEnabled(bool enabled) {
-  _autoReturnMessageEnabled = enabled;
-  emit autoReturnMessageEnabledSet(enabled);
+void Identity::setDetachAwayReason(const QString & reason) {
+  _detachAwayReason = reason;
+  emit detachAwayReasonSet(reason);
+}
+
+void Identity::setDetachAwayReasonEnabled(bool enabled) {
+  _detachAwayReasonEnabled = enabled;
+  emit detachAwayReasonEnabledSet(enabled);
 }
 
 void Identity::setIdent(const QString & ident) {
@@ -315,5 +304,3 @@ QDataStream &operator>>(QDataStream &in, Identity &id) {
   id.fromVariantMap(i);
   return in;
 }
-
-
index 9c961a9..e20def6 100644 (file)
@@ -40,14 +40,13 @@ class Identity : public SyncableObject {
   Q_PROPERTY(bool awayNickEnabled READ awayNickEnabled WRITE setAwayNickEnabled STORED false);
   Q_PROPERTY(QString awayReason READ awayReason WRITE setAwayReason STORED false);
   Q_PROPERTY(bool awayReasonEnabled READ awayReasonEnabled WRITE setAwayReasonEnabled STORED false);
-  Q_PROPERTY(QString returnMessage READ returnMessage WRITE setReturnMessage STORED false);
-  Q_PROPERTY(bool returnMessageEnabled READ returnMessageEnabled WRITE setReturnMessageEnabled STORED false);
   Q_PROPERTY(bool autoAwayEnabled READ autoAwayEnabled WRITE setAutoAwayEnabled STORED false);
   Q_PROPERTY(int autoAwayTime READ autoAwayTime WRITE setAutoAwayTime STORED false);
   Q_PROPERTY(QString autoAwayReason READ autoAwayReason WRITE setAutoAwayReason STORED false);
   Q_PROPERTY(bool autoAwayReasonEnabled READ autoAwayReasonEnabled WRITE setAutoAwayReasonEnabled STORED false);
-  Q_PROPERTY(QString autoReturnMessage READ autoReturnMessage WRITE setAutoReturnMessage STORED false);
-  Q_PROPERTY(bool autoReturnMessageEnabled READ autoReturnMessageEnabled WRITE setAutoReturnMessageEnabled STORED false);
+  Q_PROPERTY(bool detachAwayEnabled READ detachAwayEnabled WRITE setDetachAwayEnabled STORED false);
+  Q_PROPERTY(QString detachAwayReason READ detachAwayReason WRITE setDetachAwayReason STORED false);
+  Q_PROPERTY(bool detachAwayReasonEnabled READ detachAwayReasonEnabled WRITE setDetachAwayReasonEnabled STORED false);
   Q_PROPERTY(QString ident READ ident WRITE setIdent STORED false);
   Q_PROPERTY(QString kickReason READ kickReason WRITE setKickReason STORED false);
   Q_PROPERTY(QString partReason READ partReason WRITE setPartReason STORED false);
@@ -71,14 +70,13 @@ class Identity : public SyncableObject {
     bool awayNickEnabled() const;
     QString awayReason() const;
     bool awayReasonEnabled() const;
-    QString returnMessage() const;
-    bool returnMessageEnabled() const;
     bool autoAwayEnabled() const;
     int autoAwayTime() const;
     QString autoAwayReason() const;
     bool autoAwayReasonEnabled() const;
-    QString autoReturnMessage() const;
-    bool autoReturnMessageEnabled() const;
+    bool detachAwayEnabled() const;
+    QString detachAwayReason() const;
+    bool detachAwayReasonEnabled() const;
     QString ident() const;
     QString kickReason() const;
     QString partReason() const;
@@ -93,14 +91,13 @@ class Identity : public SyncableObject {
     void setAwayNickEnabled(bool enabled);
     void setAwayReason(const QString &awayReason);
     void setAwayReasonEnabled(bool enabled);
-    void setReturnMessage(const QString &returnMessage);
-    void setReturnMessageEnabled(bool enabled);
     void setAutoAwayEnabled(bool enabled);
     void setAutoAwayTime(int time);
     void setAutoAwayReason(const QString &reason);
     void setAutoAwayReasonEnabled(bool enabled);
-    void setAutoReturnMessage(const QString &message);
-    void setAutoReturnMessageEnabled(bool enabled);
+    void setDetachAwayEnabled(bool enabled);
+    void setDetachAwayReason(const QString &reason);
+    void setDetachAwayReasonEnabled(bool enabled);
     void setIdent(const QString &ident);
     void setKickReason(const QString &reason);
     void setPartReason(const QString &reason);
@@ -117,14 +114,13 @@ class Identity : public SyncableObject {
     void awayNickEnabledSet(bool);
     void awayReasonSet(const QString &awayReason);
     void awayReasonEnabledSet(bool);
-    void returnMessageSet(const QString &returnMessage);
-    void returnMessageEnabledSet(bool);
     void autoAwayEnabledSet(bool);
     void autoAwayTimeSet(int);
     void autoAwayReasonSet(const QString &);
     void autoAwayReasonEnabledSet(bool);
-    void autoReturnMessageSet(const QString &);
-    void autoReturnMessageEnabledSet(bool);
+    void detachAwayEnabledSet(bool);
+    void detachAwayReasonSet(const QString &);
+    void detachAwayReasonEnabledSet(bool);
     void identSet(const QString &);
     void kickReasonSet(const QString &);
     void partReasonSet(const QString &);
@@ -138,14 +134,13 @@ class Identity : public SyncableObject {
     bool _awayNickEnabled;
     QString _awayReason;
     bool _awayReasonEnabled;
-    QString _returnMessage;
-    bool _returnMessageEnabled;
     bool _autoAwayEnabled;
     int _autoAwayTime;
     QString _autoAwayReason;
     bool _autoAwayReasonEnabled;
-    QString _autoReturnMessage;
-    bool _autoReturnMessageEnabled;
+    bool _detachAwayEnabled;
+    QString _detachAwayReason;
+    bool _detachAwayReasonEnabled;
     QString _ident, _kickReason, _partReason, _quitReason;
 
     void init();
index 9c677db..8102f00 100644 (file)
@@ -45,14 +45,13 @@ IdentitiesSettingsPage::IdentitiesSettingsPage(QWidget *parent)
   connect(ui.awayNickEnabled, SIGNAL(clicked(bool)), this, SLOT(widgetHasChanged()));
   connect(ui.awayReason, SIGNAL(textEdited(const QString &)), this, SLOT(widgetHasChanged()));
   connect(ui.awayReasonEnabled, SIGNAL(clicked(bool)), this, SLOT(widgetHasChanged()));
-  connect(ui.returnMessage, SIGNAL(textEdited(const QString &)), this, SLOT(widgetHasChanged()));
-  connect(ui.returnMessageEnabled, SIGNAL(clicked(bool)), this, SLOT(widgetHasChanged()));
   connect(ui.autoAwayEnabled, SIGNAL(clicked(bool)), this, SLOT(widgetHasChanged()));
   connect(ui.autoAwayTime, SIGNAL(valueChanged(int)), this, SLOT(widgetHasChanged()));
   connect(ui.autoAwayReason, SIGNAL(textEdited(const QString &)), this, SLOT(widgetHasChanged()));
   connect(ui.autoAwayReasonEnabled, SIGNAL(clicked(bool)), this, SLOT(widgetHasChanged()));
-  connect(ui.autoReturnMessage, SIGNAL(textEdited(const QString &)), this, SLOT(widgetHasChanged()));
-  connect(ui.autoReturnMessageEnabled, SIGNAL(clicked(bool)), this, SLOT(widgetHasChanged()));
+  connect(ui.detachAwayEnabled, SIGNAL(clicked(bool)), this, SLOT(widgetHasChanged()));
+  connect(ui.detachAwayReason, SIGNAL(textEdited(const QString &)), this, SLOT(widgetHasChanged()));
+  connect(ui.detachAwayReasonEnabled, SIGNAL(clicked(bool)), this, SLOT(widgetHasChanged()));
   connect(ui.ident, SIGNAL(textEdited(const QString &)), this, SLOT(widgetHasChanged()));
   connect(ui.kickReason, SIGNAL(textEdited(const QString &)), this, SLOT(widgetHasChanged()));
   connect(ui.partReason, SIGNAL(textEdited(const QString &)), this, SLOT(widgetHasChanged()));
@@ -274,14 +273,13 @@ void IdentitiesSettingsPage::displayIdentity(Identity *id, bool dontsave) {
     ui.awayNickEnabled->setChecked(id->awayNickEnabled());
     ui.awayReason->setText(id->awayReason());
     ui.awayReasonEnabled->setChecked(id->awayReasonEnabled());
-    ui.returnMessage->setText(id->returnMessage());
-    ui.returnMessageEnabled->setChecked(id->returnMessageEnabled());
     ui.autoAwayEnabled->setChecked(id->autoAwayEnabled());
     ui.autoAwayTime->setValue(id->autoAwayTime());
     ui.autoAwayReason->setText(id->autoAwayReason());
     ui.autoAwayReasonEnabled->setChecked(id->autoAwayReasonEnabled());
-    ui.autoReturnMessage->setText(id->autoReturnMessage());
-    ui.autoReturnMessageEnabled->setChecked(id->autoReturnMessageEnabled());
+    ui.detachAwayEnabled->setChecked(id->detachAwayEnabled());
+    ui.detachAwayReason->setText(id->detachAwayReason());
+    ui.detachAwayReasonEnabled->setChecked(id->detachAwayReasonEnabled());
     ui.ident->setText(id->ident());
     ui.kickReason->setText(id->kickReason());
     ui.partReason->setText(id->partReason());
@@ -300,14 +298,13 @@ void IdentitiesSettingsPage::saveToIdentity(Identity *id) {
   id->setAwayNickEnabled(ui.awayNickEnabled->isChecked());
   id->setAwayReason(ui.awayReason->text());
   id->setAwayReasonEnabled(ui.awayReasonEnabled->isChecked());
-  id->setReturnMessage(ui.returnMessage->text());
-  id->setReturnMessageEnabled(ui.returnMessageEnabled->isChecked());
   id->setAutoAwayEnabled(ui.autoAwayEnabled->isChecked());
   id->setAutoAwayTime(ui.autoAwayTime->value());
   id->setAutoAwayReason(ui.autoAwayReason->text());
   id->setAutoAwayReasonEnabled(ui.autoAwayReasonEnabled->isChecked());
-  id->setAutoReturnMessage(ui.autoReturnMessage->text());
-  id->setAutoReturnMessageEnabled(ui.autoReturnMessageEnabled->isChecked());
+  id->setDetachAwayEnabled(ui.detachAwayEnabled->isChecked());
+  id->setDetachAwayReason(ui.detachAwayReason->text());
+  id->setDetachAwayReasonEnabled(ui.detachAwayReasonEnabled->isChecked());
   id->setIdent(ui.ident->text());
   id->setKickReason(ui.kickReason->text());
   id->setPartReason(ui.partReason->text());
index 3dfcb64..917d42f 100644 (file)
@@ -5,8 +5,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>495</width>
-    <height>417</height>
+    <width>602</width>
+    <height>386</height>
    </rect>
   </property>
   <property name="windowTitle" >
      <item>
       <widget class="QTabWidget" name="tabWidget" >
        <property name="currentIndex" >
-        <number>2</number>
+        <number>0</number>
        </property>
        <widget class="QWidget" name="generalTab" >
-        <property name="geometry" >
-         <rect>
-          <x>0</x>
-          <y>0</y>
-          <width>463</width>
-          <height>314</height>
-         </rect>
-        </property>
         <attribute name="title" >
          <string>General</string>
         </attribute>
         </layout>
        </widget>
        <widget class="QWidget" name="awayTab" >
-        <property name="geometry" >
-         <rect>
-          <x>0</x>
-          <y>0</y>
-          <width>100</width>
-          <height>30</height>
-         </rect>
-        </property>
         <attribute name="title" >
          <string>A&amp;way</string>
         </attribute>
-        <layout class="QVBoxLayout" >
+        <layout class="QVBoxLayout" name="verticalLayout_4" >
          <item>
-          <layout class="QGridLayout" >
-           <property name="margin" >
-            <number>0</number>
+          <widget class="QGroupBox" name="groupBox_2" >
+           <property name="title" >
+            <string>Default Away Settings</string>
            </property>
-           <property name="spacing" >
-            <number>6</number>
+           <layout class="QVBoxLayout" name="verticalLayout_3" >
+            <item>
+             <layout class="QGridLayout" >
+              <property name="margin" >
+               <number>0</number>
+              </property>
+              <property name="spacing" >
+               <number>6</number>
+              </property>
+              <item row="0" column="1" >
+               <widget class="QLineEdit" name="awayNick" >
+                <property name="enabled" >
+                 <bool>false</bool>
+                </property>
+                <property name="toolTip" >
+                 <string>Nick to be used when being away</string>
+                </property>
+               </widget>
+              </item>
+              <item row="1" column="0" >
+               <widget class="QCheckBox" name="awayReasonEnabled" >
+                <property name="toolTip" >
+                 <string>Default away reason</string>
+                </property>
+                <property name="text" >
+                 <string>Away Reason</string>
+                </property>
+               </widget>
+              </item>
+              <item row="1" column="1" >
+               <widget class="QLineEdit" name="awayReason" >
+                <property name="enabled" >
+                 <bool>false</bool>
+                </property>
+                <property name="toolTip" >
+                 <string>Default away reason</string>
+                </property>
+               </widget>
+              </item>
+              <item row="0" column="0" >
+               <widget class="QCheckBox" name="awayNickEnabled" >
+                <property name="toolTip" >
+                 <string>Nick to be used when being away</string>
+                </property>
+                <property name="text" >
+                 <string>Away Nick</string>
+                </property>
+               </widget>
+              </item>
+             </layout>
+            </item>
+           </layout>
+          </widget>
+         </item>
+         <item>
+          <widget class="QGroupBox" name="detachAwayEnabled" >
+           <property name="toolTip" >
+            <string>Set away when all clients have detached from the core</string>
            </property>
-           <item row="0" column="1" >
-            <widget class="QLineEdit" name="awayNick" >
-             <property name="enabled" >
-              <bool>false</bool>
-             </property>
-            </widget>
-           </item>
-           <item row="1" column="0" >
-            <widget class="QCheckBox" name="awayReasonEnabled" >
-             <property name="text" >
-              <string>Away Reason</string>
-             </property>
-            </widget>
-           </item>
-           <item row="1" column="1" >
-            <widget class="QLineEdit" name="awayReason" >
-             <property name="enabled" >
-              <bool>false</bool>
-             </property>
-            </widget>
-           </item>
-           <item row="2" column="0" >
-            <widget class="QCheckBox" name="returnMessageEnabled" >
-             <property name="text" >
-              <string>Return Message</string>
-             </property>
-            </widget>
-           </item>
-           <item row="2" column="1" >
-            <widget class="QLineEdit" name="returnMessage" >
-             <property name="enabled" >
-              <bool>false</bool>
-             </property>
-            </widget>
-           </item>
-           <item row="0" column="0" >
-            <widget class="QCheckBox" name="awayNickEnabled" >
-             <property name="text" >
-              <string>Away Nick</string>
-             </property>
-            </widget>
-           </item>
-          </layout>
+           <property name="title" >
+            <string>Away On Detach</string>
+           </property>
+           <property name="checkable" >
+            <bool>true</bool>
+           </property>
+           <property name="checked" >
+            <bool>false</bool>
+           </property>
+           <layout class="QVBoxLayout" name="verticalLayout" >
+            <item>
+             <layout class="QHBoxLayout" name="horizontalLayout" >
+              <item>
+               <widget class="QCheckBox" name="detachAwayReasonEnabled" >
+                <property name="toolTip" >
+                 <string>Override default away reason for auto-away on detach</string>
+                </property>
+                <property name="text" >
+                 <string>Away Reason</string>
+                </property>
+               </widget>
+              </item>
+              <item>
+               <widget class="QLineEdit" name="detachAwayReason" >
+                <property name="enabled" >
+                 <bool>false</bool>
+                </property>
+                <property name="toolTip" >
+                 <string>Override default away reason for auto-away on detach</string>
+                </property>
+               </widget>
+              </item>
+             </layout>
+            </item>
+           </layout>
+          </widget>
          </item>
          <item>
           <widget class="QGroupBox" name="autoAwayEnabled" >
+           <property name="enabled" >
+            <bool>false</bool>
+           </property>
+           <property name="toolTip" >
+            <string>Not implemented yet</string>
+           </property>
            <property name="title" >
-            <string>Auto Away</string>
+            <string>Away On Idle</string>
            </property>
            <property name="checkable" >
             <bool>true</bool>
            <property name="checked" >
             <bool>false</bool>
            </property>
-           <layout class="QVBoxLayout" >
-            <property name="spacing" >
-             <number>6</number>
-            </property>
-            <property name="margin" >
-             <number>8</number>
-            </property>
+           <layout class="QVBoxLayout" name="verticalLayout_2" >
             <item>
              <layout class="QHBoxLayout" >
               <property name="spacing" >
               <item>
                <widget class="QLabel" name="autoAwayLabel_1" >
                 <property name="text" >
-                 <string>Auto away after</string>
+                 <string>Set away after</string>
                 </property>
                </widget>
               </item>
               <item>
                <widget class="QLabel" name="autoAwayLabel_2" >
                 <property name="text" >
-                 <string>minutes</string>
+                 <string>minutes of being idle</string>
                 </property>
                </widget>
               </item>
               <property name="spacing" >
                <number>6</number>
               </property>
-              <item row="1" column="0" >
-               <widget class="QCheckBox" name="autoReturnMessageEnabled" >
-                <property name="text" >
-                 <string>Return Message</string>
-                </property>
-               </widget>
-              </item>
               <item row="0" column="0" >
                <widget class="QCheckBox" name="autoAwayReasonEnabled" >
                 <property name="text" >
                 </property>
                </widget>
               </item>
-              <item row="1" column="1" >
-               <widget class="QLineEdit" name="autoReturnMessage" />
-              </item>
               <item row="0" column="1" >
-               <widget class="QLineEdit" name="autoAwayReason" />
+               <widget class="QLineEdit" name="autoAwayReason" >
+                <property name="enabled" >
+                 <bool>false</bool>
+                </property>
+               </widget>
               </item>
              </layout>
             </item>
            </layout>
+           <zorder>detachAwayEnabled</zorder>
           </widget>
          </item>
          <item>
         </layout>
        </widget>
        <widget class="QWidget" name="advancedTab" >
-        <property name="geometry" >
-         <rect>
-          <x>0</x>
-          <y>0</y>
-          <width>463</width>
-          <height>314</height>
-         </rect>
-        </property>
         <attribute name="title" >
          <string>Advanced</string>
         </attribute>
   <tabstop>awayNick</tabstop>
   <tabstop>awayReasonEnabled</tabstop>
   <tabstop>awayReason</tabstop>
-  <tabstop>returnMessageEnabled</tabstop>
-  <tabstop>returnMessage</tabstop>
   <tabstop>awayNickEnabled</tabstop>
   <tabstop>autoAwayEnabled</tabstop>
   <tabstop>autoAwayTime</tabstop>
-  <tabstop>autoReturnMessageEnabled</tabstop>
   <tabstop>autoAwayReasonEnabled</tabstop>
-  <tabstop>autoReturnMessage</tabstop>
   <tabstop>autoAwayReason</tabstop>
   <tabstop>ident</tabstop>
   <tabstop>kickReason</tabstop>
    <slot>setEnabled(bool)</slot>
    <hints>
     <hint type="sourcelabel" >
-     <x>47</x>
-     <y>85</y>
+     <x>71</x>
+     <y>128</y>
     </hint>
     <hint type="destinationlabel" >
-     <x>185</x>
-     <y>90</y>
+     <x>314</x>
+     <y>129</y>
     </hint>
    </hints>
   </connection>
    <slot>setEnabled(bool)</slot>
    <hints>
     <hint type="sourcelabel" >
-     <x>57</x>
-     <y>120</y>
-    </hint>
-    <hint type="destinationlabel" >
-     <x>177</x>
-     <y>123</y>
-    </hint>
-   </hints>
-  </connection>
-  <connection>
-   <sender>returnMessageEnabled</sender>
-   <signal>toggled(bool)</signal>
-   <receiver>returnMessage</receiver>
-   <slot>setEnabled(bool)</slot>
-   <hints>
-    <hint type="sourcelabel" >
-     <x>85</x>
-     <y>154</y>
+     <x>81</x>
+     <y>156</y>
     </hint>
     <hint type="destinationlabel" >
-     <x>240</x>
-     <y>160</y>
+     <x>306</x>
+     <y>157</y>
     </hint>
    </hints>
   </connection>
    <slot>setEnabled(bool)</slot>
    <hints>
     <hint type="sourcelabel" >
-     <x>107</x>
-     <y>262</y>
+     <x>126</x>
+     <y>327</y>
     </hint>
     <hint type="destinationlabel" >
-     <x>186</x>
-     <y>264</y>
+     <x>315</x>
+     <y>328</y>
     </hint>
    </hints>
   </connection>
   <connection>
-   <sender>autoReturnMessageEnabled</sender>
+   <sender>detachAwayReasonEnabled</sender>
    <signal>toggled(bool)</signal>
-   <receiver>autoReturnMessage</receiver>
+   <receiver>detachAwayReason</receiver>
    <slot>setEnabled(bool)</slot>
    <hints>
     <hint type="sourcelabel" >
-     <x>122</x>
-     <y>292</y>
+     <x>33</x>
+     <y>214</y>
     </hint>
     <hint type="destinationlabel" >
      <x>204</x>
-     <y>299</y>
+     <y>218</y>
     </hint>
    </hints>
   </connection>