Add support for adding a space when tab-completing mid-sentence
authorBas Pape <baspape@gmail.com>
Thu, 4 Aug 2011 14:16:06 +0000 (16:16 +0200)
committerManuel Nickschas <sputnick@quassel-irc.org>
Fri, 20 Jan 2012 17:19:34 +0000 (18:19 +0100)
src/client/clientsettings.cpp
src/client/clientsettings.h
src/qtui/settingspages/inputwidgetsettingspage.ui
src/uisupport/tabcompleter.cpp

index a7d42b5..dfed519 100644 (file)
@@ -281,6 +281,14 @@ QString TabCompletionSettings::completionSuffix() {
   return localValue("CompletionSuffix", ": ").toString();
 }
 
+void TabCompletionSettings::setAddSpaceMidSentence(const bool &space) {
+  setLocalValue("AddSpaceMidSentence", space);
+}
+
+bool TabCompletionSettings::addSpaceMidSentence() {
+  return localValue("AddSpaceMidSentence", false).toBool();
+}
+
 void TabCompletionSettings::setSortMode(SortMode mode) {
   setLocalValue("SortMode", mode);
 }
index 40e890d..be3fb10 100644 (file)
@@ -153,6 +153,9 @@ public:
   void setCompletionSuffix(const QString &);
   QString completionSuffix();
 
+  void setAddSpaceMidSentence(const bool &);
+  bool addSpaceMidSentence();
+
   void setSortMode(SortMode);
   SortMode sortMode();
 
index 078745f..41b2d05 100644 (file)
         </item>
        </layout>
       </item>
+      <item>
+       <layout class="QHBoxLayout" name="horizontalLayout_4">
+        <item>
+         <widget class="QCheckBox" name="addSpaceMidSentence">
+          <property name="text">
+           <string>Add space after nick when completing mid-sentence</string>
+          </property>
+          <property name="checked">
+           <bool>false</bool>
+          </property>
+          <property name="settingsKey" stdset="0">
+            <string notr="true">/TabCompletion/AddSpaceMidSentence</string>
+          </property>
+          <property name="defaultValue" stdset="0">
+            <bool>false</bool>
+          </property>
+         </widget>
+        </item>
+        <item>
+         <spacer name="horizontalSpacer_3">
+          <property name="orientation">
+           <enum>Qt::Horizontal</enum>
+          </property>
+          <property name="sizeHint" stdset="0">
+           <size>
+            <width>40</width>
+            <height>20</height>
+           </size>
+          </property>
+         </spacer>
+        </item>
+       </layout>
+      </item>
      </layout>
     </widget>
    </item>
index 7426ed4..5f7b083 100644 (file)
@@ -130,6 +130,8 @@ void TabCompleter::complete() {
     if(_completionType == UserTab && _lineEdit->cursorPosition() == _lastCompletionLength) {
       _lineEdit->insert(_nickSuffix);
       _lastCompletionLength += _nickSuffix.length();
+    } else if (s.addSpaceMidSentence()) {
+      _lineEdit->insert(" ");
     }
 
   // we're at the end of the list -> start over again