From 4630877fbe9aa53dd4786df89ac04e88a307ca95 Mon Sep 17 00:00:00 2001 From: Andy Stewart Date: Thu, 27 Feb 2020 01:51:14 +0800 Subject: [PATCH] Ad insert_or_change_node_background command. --- app/mindmap/buffer.py | 8 +++++++- app/mindmap/index.html | 7 +++++++ eaf.el | 1 + 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/app/mindmap/buffer.py b/app/mindmap/buffer.py index 9ed113f..8b37078 100644 --- a/app/mindmap/buffer.py +++ b/app/mindmap/buffer.py @@ -41,7 +41,7 @@ class AppBuffer(BrowserBuffer): for method_name in ["zoom_in", "zoom_out", "zoom_reset", "remove_node", "update_node_topic", "refresh_page", "select_up_node", "select_down_node", "select_left_node", "select_right_node", - "toggle_node", "save_screenshot", "save_file"]: + "toggle_node", "save_screenshot", "save_file", "change_node_background"]: self.build_insert_or_do(method_name) QTimer.singleShot(500, self.init_file) @@ -63,6 +63,9 @@ class AppBuffer(BrowserBuffer): self.buffer_widget.eval_js("{}();".format(method_name)) setattr(self, method_name, _do) + def change_node_background(self): + self.send_input_message("Change node background: ", "change_node_background", "file") + def update_node_topic(self): self.send_input_message("Update topic: ", "update_node_topic") @@ -72,6 +75,9 @@ class AppBuffer(BrowserBuffer): def handle_input_message(self, result_type, result_content): if result_type == "update_node_topic": self.handle_update_node_topic(str(result_content)) + elif result_type == "change_node_background": + print(str(result_content)) + self.buffer_widget.eval_js("change_node_background('{}');".format(str(result_content))) def is_focus(self): return self.buffer_widget.execute_js("node_is_focus();") diff --git a/app/mindmap/index.html b/app/mindmap/index.html index f6c03fb..81355c4 100644 --- a/app/mindmap/index.html +++ b/app/mindmap/index.html @@ -185,6 +185,13 @@ function save_file() { return jsMind.util.json.json2string(_jm.get_data()); } + + function change_node_background(image) { + var selected_id = get_selected_nodeid(); + if(selected_id) { + _jm.set_node_background_image(selected_id, "file://" + image); + } + } diff --git a/eaf.el b/eaf.el index 223c0b8..4dc2ae1 100644 --- a/eaf.el +++ b/eaf.el @@ -452,6 +452,7 @@ Try not to modify this alist directly. Use `eaf-setq' to modify instead." ("t" . "insert_or_toggle_node") ("1" . "insert_or_save_screenshot") ("2" . "insert_or_save_file") + ("i" . "insert_or_change_node_background") ) "The keybinding of EAF Mindmap." :type 'cons)