wreadln: remove prompt, expect caller to paint it
authorMax Kellermann <max@musicpd.org>
Tue, 18 Sep 2018 10:47:51 +0000 (12:47 +0200)
committerMax Kellermann <max@musicpd.org>
Tue, 18 Sep 2018 10:53:34 +0000 (12:53 +0200)
src/screen_utils.cxx
src/wreadln.cxx
src/wreadln.hxx

index 7a9104f..8b2d581 100644 (file)
@@ -104,7 +104,13 @@ screen_readln(const char *prompt,
        wmove(w, 0,0);
        curs_set(1);
        SelectStyle(w, Style::STATUS_ALERT);
-       auto result = wreadln(w, prompt, value, window->size.width,
+
+       if (prompt != nullptr) {
+               waddstr(w, prompt);
+               waddstr(w, ": ");
+       }
+
+       auto result = wreadln(w, value, window->size.width,
                              history, completion);
        curs_set(0);
        return result;
@@ -123,7 +129,10 @@ screen_read_password(const char *prompt)
        if (prompt == nullptr)
                prompt = _("Password");
 
-       auto result = wreadln_masked(w, prompt, nullptr, window->size.width);
+       waddstr(w, prompt);
+       waddstr(w, ": ");
+
+       auto result = wreadln_masked(w, nullptr, window->size.width);
        curs_set(0);
        return result;
 }
index fb52cd8..4af6d8b 100644 (file)
@@ -275,7 +275,6 @@ wreadln::DeleteChar(size_t x)
 
 static std::string
 _wreadln(WINDOW *w,
-        const char *prompt,
         const char *initial_value,
         unsigned x1,
         History *history,
@@ -291,11 +290,6 @@ _wreadln(WINDOW *w,
 
        /* make sure the cursor is visible */
        curs_set(1);
-       /* print prompt string */
-       if (prompt) {
-               waddstr(w, prompt);
-               waddstr(w, ": ");
-       }
        /* retrieve y and x0 position */
        getyx(w, wr.point.y, wr.point.x);
        /* check the x1 value */
@@ -483,21 +477,19 @@ _wreadln(WINDOW *w,
 
 std::string
 wreadln(WINDOW *w,
-       const char *prompt,
        const char *initial_value,
        unsigned x1,
        History *history,
        Completion *completion)
 {
-       return  _wreadln(w, prompt, initial_value, x1,
+       return  _wreadln(w, initial_value, x1,
                         history, completion, false);
 }
 
 std::string
 wreadln_masked(WINDOW *w,
-              const char *prompt,
               const char *initial_value,
               unsigned x1)
 {
-       return  _wreadln(w, prompt, initial_value, x1, nullptr, nullptr, true);
+       return  _wreadln(w, initial_value, x1, nullptr, nullptr, true);
 }
index 8dd9cff..b892013 100644 (file)
@@ -34,7 +34,6 @@ class Completion;
  * restore this settings when exiting.
  *
  * @param the curses window to use
- * @param prompt prompt string or nullptr
  * @param initial_value initial value or nullptr for a empty line;
  * (char *) -1 = get value from history
  * @param x1 the maximum x position or 0
@@ -43,7 +42,6 @@ class Completion;
  */
 std::string
 wreadln(WINDOW *w,
-       const char *prompt,
        const char *initial_value,
        unsigned x1,
        History *history,
@@ -51,7 +49,6 @@ wreadln(WINDOW *w,
 
 std::string
 wreadln_masked(WINDOW *w,
-              const char *prompt,
               const char *initial_value,
               unsigned x1);