[vte] widget: Move some public API to its own file



commit 69eae8dbec809f93da99eaf8a7d8a6e76a693414
Author: Christian Persch <chpe gnome org>
Date:   Wed Nov 18 21:15:43 2015 +0100

    widget: Move some public API to its own file

 src/vte.cc         |   59 ++++++++++-----------------------------------------
 src/vtegtk.cc      |   40 +++++++++++++++++++++++++++++++++++
 src/vteinternal.hh |    2 +
 3 files changed, 54 insertions(+), 47 deletions(-)
---
diff --git a/src/vte.cc b/src/vte.cc
index 0a1b6c0..90c6273 100644
--- a/src/vte.cc
+++ b/src/vte.cc
@@ -11400,59 +11400,24 @@ vte_terminal_set_scrollback_lines(VteTerminal *terminal, glong lines)
         g_object_thaw_notify(object);
 }
 
-/**
- * vte_terminal_set_backspace_binding:
- * @terminal: a #VteTerminal
- * @binding: a #VteEraseBinding for the backspace key
- *
- * Modifies the terminal's backspace key binding, which controls what
- * string or control sequence the terminal sends to its child when the user
- * presses the backspace key.
- */
-void
-vte_terminal_set_backspace_binding(VteTerminal *terminal,
-                                  VteEraseBinding binding)
+bool
+VteTerminalPrivate::set_backspace_binding(VteEraseBinding binding)
 {
-        VteTerminalPrivate *pvt;
-
-       g_return_if_fail(VTE_IS_TERMINAL(terminal));
-
-        pvt = terminal->pvt;
-
-        if (binding == pvt->backspace_binding)
-                return;
-
-       /* FIXME: should we set the pty mode to match? */
-       pvt->backspace_binding = binding;
+        if (binding == m_backspace_binding)
+                return false;
 
-        g_object_notify(G_OBJECT(terminal), "backspace-binding");
+       m_backspace_binding = binding;
+        return true;
 }
 
-/**
- * vte_terminal_set_delete_binding:
- * @terminal: a #VteTerminal
- * @binding: a #VteEraseBinding for the delete key
- *
- * Modifies the terminal's delete key binding, which controls what
- * string or control sequence the terminal sends to its child when the user
- * presses the delete key.
- */
-void
-vte_terminal_set_delete_binding(VteTerminal *terminal,
-                               VteEraseBinding binding)
+bool
+VteTerminalPrivate::set_delete_binding(VteEraseBinding binding)
 {
-        VteTerminalPrivate *pvt;
-
-       g_return_if_fail(VTE_IS_TERMINAL(terminal));
-
-        pvt = terminal->pvt;
-
-        if (binding == pvt->delete_binding)
-                return;
-
-       pvt->delete_binding = binding;
+        if (binding == m_delete_binding)
+                return false;
 
-        g_object_notify(G_OBJECT(terminal), "delete-binding");
+       m_delete_binding = binding;
+        return true;
 }
 
 bool
diff --git a/src/vtegtk.cc b/src/vtegtk.cc
index 6bf9c76..fb821de 100644
--- a/src/vtegtk.cc
+++ b/src/vtegtk.cc
@@ -1654,6 +1654,26 @@ vte_terminal_search_get_wrap_around (VteTerminal *terminal)
 }
 
 /**
+ * vte_terminal_set_backspace_binding:
+ * @terminal: a #VteTerminal
+ * @binding: a #VteEraseBinding for the backspace key
+ *
+ * Modifies the terminal's backspace key binding, which controls what
+ * string or control sequence the terminal sends to its child when the user
+ * presses the backspace key.
+ */
+void
+vte_terminal_set_backspace_binding(VteTerminal *terminal,
+                                   VteEraseBinding binding)
+{
+       g_return_if_fail(VTE_IS_TERMINAL(terminal));
+        g_return_if_fail(binding >= VTE_ERASE_AUTO && binding <= VTE_ERASE_TTY);
+
+        if (terminal->pvt->set_backspace_binding(binding))
+                g_object_notify_by_pspec(G_OBJECT(terminal), pspecs[PROP_BACKSPACE_BINDING]);
+}
+
+/**
  * vte_terminal_get_char_height:
  * @terminal: a #VteTerminal
  *
@@ -1723,6 +1743,26 @@ vte_terminal_get_current_file_uri(VteTerminal *terminal)
         return terminal->pvt->current_file_uri;
 }
 
+/**
+ * vte_terminal_set_delete_binding:
+ * @terminal: a #VteTerminal
+ * @binding: a #VteEraseBinding for the delete key
+ *
+ * Modifies the terminal's delete key binding, which controls what
+ * string or control sequence the terminal sends to its child when the user
+ * presses the delete key.
+ */
+void
+vte_terminal_set_delete_binding(VteTerminal *terminal,
+                                VteEraseBinding binding)
+{
+       g_return_if_fail(VTE_IS_TERMINAL(terminal));
+        g_return_if_fail(binding >= VTE_ERASE_AUTO && binding <= VTE_ERASE_TTY);
+
+        if (terminal->pvt->set_delete_binding(binding))
+                g_object_notify_by_pspec(G_OBJECT(terminal), pspecs[PROP_DELETE_BINDING]);
+}
+
 /* Just some arbitrary minimum values */
 #define MIN_COLUMNS (16)
 #define MIN_ROWS    (2)
diff --git a/src/vteinternal.hh b/src/vteinternal.hh
index 7ab5867..b3dafa1 100644
--- a/src/vteinternal.hh
+++ b/src/vteinternal.hh
@@ -608,6 +608,8 @@ public:
         long get_char_height() { ensure_font(); return char_height; }
         long get_char_width()  { ensure_font(); return char_width;  }
 
+        bool set_backspace_binding(VteEraseBinding binding);
+        bool set_delete_binding(VteEraseBinding binding);
         bool set_input_enabled(bool enabled);
         bool set_mouse_autohide(bool autohide);
         bool set_pty(VtePty *pty);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]