[tepl] WindowActionsFile: move tepl-new-file GAction
- From: Sébastien Wilmet <swilmet src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [tepl] WindowActionsFile: move tepl-new-file GAction
- Date: Sun, 3 May 2020 16:10:06 +0000 (UTC)
commit aac642b4d72e60d539f76925a0dbcbecc5c42983
Author: Sébastien Wilmet <swilmet gnome org>
Date: Sun May 3 17:54:37 2020 +0200
WindowActionsFile: move tepl-new-file GAction
tepl/tepl-application-window.c | 20 +++-----------------
tepl/tepl-window-actions-file.c | 32 ++++++++++++++++++++++++++++++++
2 files changed, 35 insertions(+), 17 deletions(-)
---
diff --git a/tepl/tepl-application-window.c b/tepl/tepl-application-window.c
index e4f53f9..7df4152 100644
--- a/tepl/tepl-application-window.c
+++ b/tepl/tepl-application-window.c
@@ -27,6 +27,7 @@
#include "tepl-signal-group.h"
#include "tepl-tab.h"
#include "tepl-view.h"
+#include "tepl-window-actions-file.h"
/**
* SECTION:application-window
@@ -127,22 +128,6 @@ G_DEFINE_TYPE_WITH_CODE (TeplApplicationWindow,
G_IMPLEMENT_INTERFACE (TEPL_TYPE_TAB_GROUP,
tepl_tab_group_interface_init))
-static void
-new_file_cb (GSimpleAction *action,
- GVariant *parameter,
- gpointer user_data)
-{
- TeplApplicationWindow *tepl_window = TEPL_APPLICATION_WINDOW (user_data);
- TeplAbstractFactory *factory;
- TeplTab *new_tab;
-
- factory = tepl_abstract_factory_get_singleton ();
- new_tab = tepl_abstract_factory_create_tab (factory);
- gtk_widget_show (GTK_WIDGET (new_tab));
-
- tepl_tab_group_append_tab (TEPL_TAB_GROUP (tepl_window), new_tab, TRUE);
-}
-
static void
open_file_chooser_response_cb (GtkFileChooserDialog *file_chooser_dialog,
gint response_id,
@@ -734,7 +719,6 @@ add_actions (TeplApplicationWindow *tepl_window)
*/
const GActionEntry entries[] = {
/* File menu */
- { "tepl-new-file", new_file_cb },
{ "tepl-open", open_cb },
{ "tepl-save", save_cb },
{ "tepl-save-as", save_as_cb },
@@ -759,6 +743,8 @@ add_actions (TeplApplicationWindow *tepl_window)
G_N_ELEMENTS (entries),
tepl_window);
+ _tepl_window_actions_file_add_actions (tepl_window);
+
update_actions_sensitivity (tepl_window);
}
diff --git a/tepl/tepl-window-actions-file.c b/tepl/tepl-window-actions-file.c
index 63d2098..3c8c864 100644
--- a/tepl/tepl-window-actions-file.c
+++ b/tepl/tepl-window-actions-file.c
@@ -18,9 +18,41 @@
*/
#include "tepl-window-actions-file.h"
+#include <amtk/amtk.h>
+#include "tepl-abstract-factory.h"
+#include "tepl-tab-group.h"
+
+static void
+new_file_cb (GSimpleAction *action,
+ GVariant *parameter,
+ gpointer user_data)
+{
+ TeplApplicationWindow *tepl_window = TEPL_APPLICATION_WINDOW (user_data);
+ TeplAbstractFactory *factory;
+ TeplTab *new_tab;
+
+ factory = tepl_abstract_factory_get_singleton ();
+ new_tab = tepl_abstract_factory_create_tab (factory);
+ gtk_widget_show (GTK_WIDGET (new_tab));
+
+ tepl_tab_group_append_tab (TEPL_TAB_GROUP (tepl_window), new_tab, TRUE);
+}
void
_tepl_window_actions_file_add_actions (TeplApplicationWindow *tepl_window)
{
+ GtkApplicationWindow *gtk_window;
+
+ const GActionEntry entries[] = {
+ { "tepl-new-file", new_file_cb },
+ };
+
g_return_if_fail (TEPL_IS_APPLICATION_WINDOW (tepl_window));
+
+ gtk_window = tepl_application_window_get_application_window (tepl_window);
+
+ amtk_action_map_add_action_entries_check_dups (G_ACTION_MAP (gtk_window),
+ entries,
+ G_N_ELEMENTS (entries),
+ tepl_window);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]