[geany/geany] 35a212: Merge branch 'callbacks-cleanup'
Colomban Wendling
git-noreply at xxxxx
Fri Jun 27 20:32:38 UTC 2014
Branch: refs/heads/master
Author: Colomban Wendling <ban at herbesfolles.org>
Committer: Colomban Wendling <ban at herbesfolles.org>
Date: Fri, 27 Jun 2014 20:32:38 UTC
Commit: 35a212dffc34ae2f7bc532f69caf9bdea695ef39
https://github.com/geany/geany/commit/35a212dffc34ae2f7bc532f69caf9bdea695ef39
Log Message:
-----------
Merge branch 'callbacks-cleanup'
Modified Paths:
--------------
data/geany.glade
src/callbacks.c
src/callbacks.h
src/document.c
src/main.c
src/toolbar.c
src/ui_utils.c
Modified: data/geany.glade
3 lines changed, 3 insertions(+), 0 deletions(-)
===================================================================
@@ -6252,6 +6252,8 @@
<accel-groups>
<group name="accelgroup1"/>
</accel-groups>
+ <signal name="window-state-event" handler="on_window_state_event" swapped="no"/>
+ <signal name="delete-event" handler="on_window_delete_event" swapped="no"/>
<child>
<object class="GtkVBox" id="vbox1">
<property name="visible">True</property>
@@ -8319,6 +8321,7 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="buffer">textbuffer1</property>
+ <signal name="motion-notify-event" handler="on_motion_event" swapped="no"/>
</object>
</child>
</object>
Modified: src/callbacks.c
366 lines changed, 146 insertions(+), 220 deletions(-)
===================================================================
@@ -73,9 +73,84 @@
#include <time.h>
-/* flag to indicate that an insert callback was triggered from the file menu,
- * so we need to store the current cursor position in editor_info.click_pos. */
-static gboolean insert_callback_from_menu = FALSE;
+/* prototypes of Glade-only callback to let the compiler know they really are meant to be exported */
+G_MODULE_EXPORT gboolean on_window_delete_event(GtkWidget *widget, GdkEvent *event, gpointer gdata);
+G_MODULE_EXPORT void on_info1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_change_font1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_crlf_activate(GtkCheckMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_lf_activate(GtkCheckMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_cr_activate(GtkCheckMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_hide_toolbar1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_show_toolbar1_toggled(GtkCheckMenuItem *checkmenuitem, gpointer user_data);
+G_MODULE_EXPORT void on_fullscreen1_toggled(GtkCheckMenuItem *checkmenuitem, gpointer user_data);
+G_MODULE_EXPORT void on_markers_margin1_toggled(GtkCheckMenuItem *checkmenuitem, gpointer user_data);
+G_MODULE_EXPORT void on_show_messages_window1_toggled(GtkCheckMenuItem *checkmenuitem, gpointer user_data);
+G_MODULE_EXPORT void on_menu_color_schemes_activate(GtkImageMenuItem *imagemenuitem, gpointer user_data);
+G_MODULE_EXPORT void on_count_words1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_edit1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_website1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_help_menu_item_donate_activate(GtkMenuItem *item, gpointer user_data);
+G_MODULE_EXPORT void on_help_menu_item_wiki_activate(GtkMenuItem *item, gpointer user_data);
+G_MODULE_EXPORT void on_help_menu_item_bug_report_activate(GtkMenuItem *item, gpointer user_data);
+G_MODULE_EXPORT void on_comments_function_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_comments_multiline_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_comments_changelog_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_comments_gpl_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_comments_fileheader_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_set_file_readonly1_toggled(GtkCheckMenuItem *checkmenuitem, gpointer user_data);
+G_MODULE_EXPORT void on_tv_notebook_switch_page(GtkNotebook *notebook, gpointer page, guint page_num, gpointer user_data);
+G_MODULE_EXPORT void on_help_shortcuts1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_file_properties_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_show_line_numbers1_toggled(GtkCheckMenuItem *checkmenuitem, gpointer user_data);
+G_MODULE_EXPORT void on_use_auto_indentation1_toggled(GtkCheckMenuItem *checkmenuitem, gpointer user_data);
+G_MODULE_EXPORT void on_menu_fold_all1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_menu_unfold_all1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_notebook1_switch_page_after(GtkNotebook *notebook, gpointer page, guint page_num, gpointer user_data);
+G_MODULE_EXPORT void on_menu_write_unicode_bom1_toggled(GtkCheckMenuItem *checkmenuitem, gpointer user_data);
+G_MODULE_EXPORT void on_menu_comments_multiline_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_menu_comments_gpl_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_menu_comments_bsd_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_comments_bsd_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_menu_project1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_load_tags1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_file1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_tv_notebook_switch_page_after(GtkNotebook *notebook, gpointer page, guint page_num, gpointer user_data);
+G_MODULE_EXPORT void on_tabs1_activate(GtkCheckMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_spaces1_activate(GtkCheckMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_strip_trailing_spaces1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_page_setup1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_search1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_menu_reload_configuration1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_tabs_and_spaces1_activate(GtkCheckMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_debug_messages1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_menu_show_white_space1_toggled(GtkCheckMenuItem *checkmenuitem, gpointer user_data);
+G_MODULE_EXPORT void on_menu_show_line_endings1_toggled(GtkCheckMenuItem *checkmenuitem, gpointer user_data);
+G_MODULE_EXPORT void on_menu_show_indentation_guides1_toggled(GtkCheckMenuItem *checkmenuitem, gpointer user_data);
+G_MODULE_EXPORT gboolean on_window_state_event(GtkWidget *widget, GdkEventWindowState *event, gpointer user_data);
+G_MODULE_EXPORT void on_customize_toolbar1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_button_customize_toolbar_clicked(GtkButton *button, gpointer user_data);
+G_MODULE_EXPORT void on_cut_current_lines1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_copy_current_lines1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_delete_current_lines1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_duplicate_line_or_selection1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_select_current_lines1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_select_current_paragraph1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_insert_alternative_white_space1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_go_to_next_marker1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_go_to_previous_marker1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_reflow_lines_block1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_smart_line_indent1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_move_lines_up1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_move_lines_down1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_goto_tag_definition1(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_goto_tag_declaration1(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_indent_width_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_reset_indentation1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_mark_all1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_detect_type_from_file_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_detect_width_from_file_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_clone1_activate(GtkMenuItem *menuitem, gpointer user_data);
+
/* represents the state at switching a notebook page(in the left treeviews widget), to not emit
* the selection-changed signal from tv.tree_openfiles */
@@ -97,19 +172,7 @@ static gboolean check_no_unsaved(void)
}
-/* set editor_info.click_pos to the current cursor position if insert_callback_from_menu is TRUE
- * to prevent invalid cursor positions which can cause segfaults */
-static void verify_click_pos(GeanyDocument *doc)
-{
- if (insert_callback_from_menu)
- {
- editor_info.click_pos = sci_get_current_position(doc->editor->sci);
- insert_callback_from_menu = FALSE;
- }
-}
-
-
-/* should only be called from on_exit_clicked */
+/* should only be called from on_window_delete_event */
static void quit_app(void)
{
configuration_save();
@@ -126,7 +189,7 @@ static void quit_app(void)
/* wrapper function to abort exit process if cancel button is pressed */
-G_MODULE_EXPORT gboolean on_exit_clicked(GtkWidget *widget, gpointer gdata)
+G_MODULE_EXPORT gboolean on_window_delete_event(GtkWidget *widget, GdkEvent *event, gpointer gdata)
{
main_status.quitting = TRUE;
@@ -162,6 +225,16 @@ G_MODULE_EXPORT void on_new1_activate(GtkMenuItem *menuitem, gpointer user_data)
}
+/* create a new file and copy file content and properties */
+G_MODULE_EXPORT void on_clone1_activate(GtkMenuItem *menuitem, gpointer user_data)
+{
+ GeanyDocument *old_doc = document_get_current();
+
+ if (old_doc)
+ document_clone(old_doc);
+}
+
+
G_MODULE_EXPORT void on_save1_activate(GtkMenuItem *menuitem, gpointer user_data)
{
GeanyDocument *doc = document_get_current();
@@ -223,7 +296,7 @@ G_MODULE_EXPORT void on_close1_activate(GtkMenuItem *menuitem, gpointer user_dat
G_MODULE_EXPORT void on_quit1_activate(GtkMenuItem *menuitem, gpointer user_data)
{
- on_exit_clicked(NULL, NULL);
+ on_window_delete_event(NULL, NULL, NULL);
}
@@ -385,13 +458,6 @@ G_MODULE_EXPORT void on_open1_activate(GtkMenuItem *menuitem, gpointer user_data
}
-/* quit toolbar button */
-G_MODULE_EXPORT void on_toolbutton_quit_clicked(GtkAction *action, gpointer user_data)
-{
- on_exit_clicked(NULL, NULL);
-}
-
-
/* reload file */
G_MODULE_EXPORT void on_toolbutton_reload_clicked(GtkAction *action, gpointer user_data)
{
@@ -409,27 +475,6 @@ G_MODULE_EXPORT void on_change_font1_activate(GtkMenuItem *menuitem, gpointer us
}
-/* new file */
-G_MODULE_EXPORT void on_toolbutton_new_clicked(GtkAction *action, gpointer user_data)
-{
- document_new_file(NULL, NULL, NULL);
-}
-
-
-/* open file */
-G_MODULE_EXPORT void on_toolbutton_open_clicked(GtkAction *action, gpointer user_data)
-{
- dialogs_show_open_file();
-}
-
-
-/* save file */
-G_MODULE_EXPORT void on_toolbutton_save_clicked(GtkAction *action, gpointer user_data)
-{
- on_save1_activate(NULL, user_data);
-}
-
-
/* store text, clear search flags so we can use Search->Find Next/Previous */
static void setup_find(const gchar *text, gboolean backwards)
{
@@ -454,21 +499,21 @@ static void do_toolbar_search(const gchar *text, gboolean incremental, gboolean
/* search text */
-G_MODULE_EXPORT void on_toolbar_search_entry_changed(GtkAction *action, const gchar *text, gpointer user_data)
+void on_toolbar_search_entry_changed(GtkAction *action, const gchar *text, gpointer user_data)
{
do_toolbar_search(text, TRUE, FALSE);
}
/* search text */
-G_MODULE_EXPORT void on_toolbar_search_entry_activate(GtkAction *action, const gchar *text, gpointer user_data)
+void on_toolbar_search_entry_activate(GtkAction *action, const gchar *text, gpointer user_data)
{
do_toolbar_search(text, FALSE, GPOINTER_TO_INT(user_data));
}
/* search text */
-G_MODULE_EXPORT void on_toolbutton_search_clicked(GtkAction *action, gpointer user_data)
+void on_toolbutton_search_clicked(GtkAction *action, gpointer user_data)
{
GeanyDocument *doc = document_get_current();
gboolean result;
@@ -528,25 +573,6 @@ G_MODULE_EXPORT void on_normal_size1_activate(GtkMenuItem *menuitem, gpointer us
}
-/* close tab */
-G_MODULE_EXPORT void on_toolbutton_close_clicked(GtkAction *action, gpointer user_data)
-{
- on_close1_activate(NULL, NULL);
-}
-
-
-G_MODULE_EXPORT void on_toolbutton_close_all_clicked(GtkAction *action, gpointer user_data)
-{
- on_close_all1_activate(NULL, NULL);
-}
-
-
-G_MODULE_EXPORT void on_toolbutton_preferences_clicked(GtkAction *action, gpointer user_data)
-{
- on_preferences1_activate(NULL, NULL);
-}
-
-
static gboolean delayed_check_disk_status(gpointer data)
{
document_check_disk_status(data, FALSE);
@@ -938,7 +964,7 @@ G_MODULE_EXPORT void on_show_color_chooser1_activate(GtkMenuItem *menuitem, gpoi
}
-G_MODULE_EXPORT void on_toolbutton_compile_clicked(GtkAction *action, gpointer user_data)
+void on_toolbutton_compile_clicked(GtkAction *action, gpointer user_data)
{
keybindings_send_command(GEANY_KEY_GROUP_BUILD, GEANY_KEYS_BUILD_COMPILE);
}
@@ -1032,7 +1058,7 @@ G_MODULE_EXPORT void on_go_to_line_activate(GtkMenuItem *menuitem, gpointer user
}
-G_MODULE_EXPORT void on_toolbutton_goto_entry_activate(GtkAction *action, const gchar *text, gpointer user_data)
+void on_toolbutton_goto_entry_activate(GtkAction *action, const gchar *text, gpointer user_data)
{
GeanyDocument *doc = document_get_current();
gint offset;
@@ -1048,7 +1074,7 @@ G_MODULE_EXPORT void on_toolbutton_goto_entry_activate(GtkAction *action, const
}
-G_MODULE_EXPORT void on_toolbutton_goto_clicked(GtkAction *action, gpointer user_data)
+void on_toolbutton_goto_clicked(GtkAction *action, gpointer user_data)
{
GtkWidget *entry = toolbar_get_widget_child_by_name("GotoEntry");
@@ -1131,60 +1157,85 @@ G_MODULE_EXPORT void on_comments_function_activate(GtkMenuItem *menuitem, gpoint
}
-G_MODULE_EXPORT void on_comments_multiline_activate(GtkMenuItem *menuitem, gpointer user_data)
+static void insert_multiline_comment(GeanyDocument *doc, gint pos)
{
- GeanyDocument *doc = document_get_current();
+ g_return_if_fail(doc != NULL);
+ g_return_if_fail(pos == -1 || pos >= 0);
- if (doc == NULL || doc->file_type == NULL)
+ if (doc->file_type == NULL)
{
ui_set_statusbar(FALSE,
_("Please set the filetype for the current file before using this function."));
return;
}
- verify_click_pos(doc); /* make sure that the click_pos is valid */
-
if (doc->file_type->comment_open || doc->file_type->comment_single)
+ {
+ /* editor_insert_multiline_comment() uses editor_info.click_pos */
+ if (pos == -1)
+ editor_info.click_pos = sci_get_current_position(doc->editor->sci);
+ else
+ editor_info.click_pos = pos;
editor_insert_multiline_comment(doc->editor);
+ }
else
utils_beep();
}
-G_MODULE_EXPORT void on_comments_gpl_activate(GtkMenuItem *menuitem, gpointer user_data)
+G_MODULE_EXPORT void on_comments_multiline_activate(GtkMenuItem *menuitem, gpointer user_data)
+{
+ insert_multiline_comment(document_get_current(), editor_info.click_pos);
+}
+
+
+G_MODULE_EXPORT void on_menu_comments_multiline_activate(GtkMenuItem *menuitem, gpointer user_data)
+{
+ insert_multiline_comment(document_get_current(), -1);
+}
+
+
+static void insert_comment_template(GeanyDocument *doc, gint pos, guint template)
{
- GeanyDocument *doc = document_get_current();
gchar *text;
g_return_if_fail(doc != NULL);
+ g_return_if_fail(pos == -1 || pos >= 0);
+ g_return_if_fail(template < GEANY_MAX_TEMPLATES);
- text = templates_get_template_licence(doc, GEANY_TEMPLATE_GPL);
+ if (pos == -1)
+ pos = sci_get_current_position(doc->editor->sci);
- verify_click_pos(doc); /* make sure that the click_pos is valid */
+ text = templates_get_template_licence(doc, template);
sci_start_undo_action(doc->editor->sci);
- sci_insert_text(doc->editor->sci, editor_info.click_pos, text);
+ sci_insert_text(doc->editor->sci, pos, text);
sci_end_undo_action(doc->editor->sci);
g_free(text);
}
-G_MODULE_EXPORT void on_comments_bsd_activate(GtkMenuItem *menuitem, gpointer user_data)
+G_MODULE_EXPORT void on_comments_gpl_activate(GtkMenuItem *menuitem, gpointer user_data)
{
- GeanyDocument *doc = document_get_current();
- gchar *text;
+ insert_comment_template(document_get_current(), editor_info.click_pos, GEANY_TEMPLATE_GPL);
+}
- g_return_if_fail(doc != NULL);
- text = templates_get_template_licence(doc, GEANY_TEMPLATE_BSD);
+G_MODULE_EXPORT void on_menu_comments_gpl_activate(GtkMenuItem *menuitem, gpointer user_data)
+{
+ insert_comment_template(document_get_current(), -1, GEANY_TEMPLATE_GPL);
+}
- verify_click_pos(doc); /* make sure that the click_pos is valid */
- sci_start_undo_action(doc->editor->sci);
- sci_insert_text(doc->editor->sci, editor_info.click_pos, text);
- sci_end_undo_action(doc->editor->sci);
- g_free(text);
+G_MODULE_EXPORT void on_comments_bsd_activate(GtkMenuItem *menuitem, gpointer user_data)
+{
+ insert_comment_template(document_get_current(), editor_info.click_pos, GEANY_TEMPLATE_BSD);
+}
+
+G_MODULE_EXPORT void on_menu_comments_bsd_activate(GtkMenuItem *menuitem, gpointer user_data)
+{
+ insert_comment_template(document_get_current(), -1, GEANY_TEMPLATE_BSD);
}
@@ -1228,96 +1279,6 @@ G_MODULE_EXPORT void on_comments_fileheader_activate(GtkMenuItem *menuitem, gpoi
}
-G_MODULE_EXPORT void on_insert_date_activate(GtkMenuItem *menuitem, gpointer user_data)
-{
- GeanyDocument *doc = document_get_current();
- const gchar *format = NULL;
- gchar *time_str;
-
- g_return_if_fail(doc != NULL);
-
- /* set default value */
- if (utils_str_equal("", ui_prefs.custom_date_format))
- {
- g_free(ui_prefs.custom_date_format);
- ui_prefs.custom_date_format = g_strdup("%d.%m.%Y");
- }
-
- if (utils_str_equal(_("dd.mm.yyyy"), (gchar*) user_data))
- format = "%d.%m.%Y";
- else if (utils_str_equal(_("mm.dd.yyyy"), (gchar*) user_data))
- format = "%m.%d.%Y";
- else if (utils_str_equal(_("yyyy/mm/dd"), (gchar*) user_data))
- format = "%Y/%m/%d";
- else if (utils_str_equal(_("dd.mm.yyyy hh:mm:ss"), (gchar*) user_data))
- format = "%d.%m.%Y %H:%M:%S";
- else if (utils_str_equal(_("mm.dd.yyyy hh:mm:ss"), (gchar*) user_data))
- format = "%m.%d.%Y %H:%M:%S";
- else if (utils_str_equal(_("yyyy/mm/dd hh:mm:ss"), (gchar*) user_data))
- format = "%Y/%m/%d %H:%M:%S";
- else if (utils_str_equal(_("_Use Custom Date Format"), (gchar*) user_data))
- format = ui_prefs.custom_date_format;
- else
- {
- gchar *str = dialogs_show_input(_("Custom Date Format"), GTK_WINDOW(main_widgets.window),
- _("Enter here a custom date and time format. "
- "You can use any conversion specifiers which can be used with the ANSI C strftime function."),
- ui_prefs.custom_date_format);
- if (str)
- SETPTR(ui_prefs.custom_date_format, str);
- return;
- }
-
- time_str = utils_get_date_time(format, NULL);
- if (time_str != NULL)
- {
- verify_click_pos(doc); /* make sure that the click_pos is valid */
-
- sci_start_undo_action(doc->editor->sci);
- sci_insert_text(doc->editor->sci, editor_info.click_pos, time_str);
- sci_goto_pos(doc->editor->sci, editor_info.click_pos + strlen(time_str), FALSE);
- sci_end_undo_action(doc->editor->sci);
- g_free(time_str);
- }
- else
- {
- utils_beep();
- ui_set_statusbar(TRUE,
- _("Date format string could not be converted (possibly too long)."));
- }
-}
-
-
-G_MODULE_EXPORT void on_insert_include_activate(GtkMenuItem *menuitem, gpointer user_data)
-{
- GeanyDocument *doc = document_get_current();
- gint pos = -1;
- gchar *text;
-
- g_return_if_fail(doc != NULL);
- g_return_if_fail(user_data != NULL);
-
- verify_click_pos(doc); /* make sure that the click_pos is valid */
-
- if (utils_str_equal(user_data, "blank"))
- {
- text = g_strdup("#include \"\"\n");
- pos = editor_info.click_pos + 10;
- }
- else
- {
- text = g_strconcat("#include <", user_data, ">\n", NULL);
- }
-
- sci_start_undo_action(doc->editor->sci);
- sci_insert_text(doc->editor->sci, editor_info.click_pos, text);
- sci_end_undo_action(doc->editor->sci);
- g_free(text);
- if (pos >= 0)
- sci_goto_pos(doc->editor->sci, pos, FALSE);
-}
-
-
G_MODULE_EXPORT void on_file_properties_activate(GtkMenuItem *menuitem, gpointer user_data)
{
GeanyDocument *doc = document_get_current();
@@ -1345,7 +1306,7 @@ G_MODULE_EXPORT void on_menu_unfold_all1_activate(GtkMenuItem *menuitem, gpointe
}
-G_MODULE_EXPORT void on_toolbutton_run_clicked(GtkAction *action, gpointer user_data)
+void on_toolbutton_run_clicked(GtkAction *action, gpointer user_data)
{
keybindings_send_command(GEANY_KEY_GROUP_BUILD, GEANY_KEYS_BUILD_RUN);
}
@@ -1488,41 +1449,6 @@ G_MODULE_EXPORT void on_previous_message1_activate(GtkMenuItem *menuitem, gpoint
}
-G_MODULE_EXPORT void on_menu_comments_multiline_activate(GtkMenuItem *menuitem, gpointer user_data)
-{
- insert_callback_from_menu = TRUE;
- on_comments_multiline_activate(menuitem, user_data);
-}
-
-
-G_MODULE_EXPORT void on_menu_comments_gpl_activate(GtkMenuItem *menuitem, gpointer user_data)
-{
- insert_callback_from_menu = TRUE;
- on_comments_gpl_activate(menuitem, user_data);
-}
-
-
-G_MODULE_EXPORT void on_menu_comments_bsd_activate(GtkMenuItem *menuitem, gpointer user_data)
-{
- insert_callback_from_menu = TRUE;
- on_comments_bsd_activate(menuitem, user_data);
-}
-
-
-G_MODULE_EXPORT void on_menu_insert_include_activate(GtkMenuItem *menuitem, gpointer user_data)
-{
- insert_callback_from_menu = TRUE;
- on_insert_include_activate(menuitem, user_data);
-}
-
-
-G_MODULE_EXPORT void on_menu_insert_date_activate(GtkMenuItem *menuitem, gpointer user_data)
-{
- insert_callback_from_menu = TRUE;
- on_insert_date_activate(menuitem, user_data);
-}
-
-
G_MODULE_EXPORT void on_project_new1_activate(GtkMenuItem *menuitem, gpointer user_data)
{
project_new();
@@ -1745,19 +1671,19 @@ G_MODULE_EXPORT void on_menu_toggle_all_additional_widgets1_activate(GtkMenuItem
}
-G_MODULE_EXPORT void on_forward_activate(GtkMenuItem *menuitem, gpointer user_data)
+void on_toolbutton_forward_activate(GtkAction *menuitem, gpointer user_data)
{
navqueue_go_forward();
}
-G_MODULE_EXPORT void on_back_activate(GtkMenuItem *menuitem, gpointer user_data)
+void on_toolbutton_back_activate(GtkAction *menuitem, gpointer user_data)
{
navqueue_go_back();
}
-G_MODULE_EXPORT gboolean on_motion_event(GtkWidget *widget, GdkEventMotion *event, gpointer user_data)
+gboolean on_motion_event(GtkWidget *widget, GdkEventMotion *event, gpointer user_data)
{
if (prefs.auto_focus && ! gtk_widget_has_focus(widget))
gtk_widget_grab_focus(widget);
Modified: src/callbacks.h
652 lines changed, 70 insertions(+), 582 deletions(-)
===================================================================
@@ -28,657 +28,145 @@ G_BEGIN_DECLS
extern gboolean ignore_callback;
-G_MODULE_EXPORT gboolean
-on_exit_clicked (GtkWidget *widget, gpointer gdata);
+G_MODULE_EXPORT void on_new1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_new1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_save1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_save1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_save_as1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_save_as1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_quit1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_quit1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_open1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_info1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_save_all1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_open1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_close1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_change_font1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_close_all1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_toolbutton_close_clicked (GtkAction *action,
- gpointer user_data);
+G_MODULE_EXPORT void on_replace_tabs_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_toolbutton_close_all_clicked (GtkAction *action,
- gpointer user_data);
+void on_toolbutton_search_clicked(GtkAction *action, gpointer user_data);
-G_MODULE_EXPORT void
-on_save_all1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+gboolean toolbar_popup_menu(GtkWidget *widget, GdkEventButton *event, gpointer user_data);
-G_MODULE_EXPORT void
-on_close1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_undo1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_close_all1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_redo1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_crlf_activate (GtkCheckMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_cut1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_lf_activate (GtkCheckMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_copy1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_cr_activate (GtkCheckMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_paste1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_replace_tabs_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_delete1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_toolbutton_search_clicked (GtkAction *action,
- gpointer user_data);
+G_MODULE_EXPORT void on_zoom_in1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT gboolean
-toolbar_popup_menu (GtkWidget *widget,
- GdkEventButton *event,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_hide_toolbar1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_undo1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_redo1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_cut1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_copy1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_paste1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_delete1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_zoom_in1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_zoom_out1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_toolbar_search_entry_changed (GtkAction *action,
- const gchar *text,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_toolbar_search_entry_activate (GtkAction *action,
- const gchar *text,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_toggle_case1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_fullscreen1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_show_toolbar1_toggled (GtkCheckMenuItem *checkmenuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_fullscreen1_toggled (GtkCheckMenuItem *checkmenuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_markers_margin1_toggled (GtkCheckMenuItem *checkmenuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_invisible1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_find_usage1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_show_messages_window1_toggled (GtkCheckMenuItem *checkmenuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_menu_color_schemes_activate (GtkImageMenuItem *imagemenuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_construct_completion1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_count_words1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_preferences1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_normal_size1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_edit1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_show_color_chooser1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_find1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_find_next1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_find_previous1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-G_MODULE_EXPORT void
-on_find_nextsel1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-G_MODULE_EXPORT void
-on_find_prevsel1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_replace1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_find_in_files1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_toolbutton_new_clicked (GtkAction *action,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_toolbutton_open_clicked (GtkAction *action,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_toolbutton_save_clicked (GtkAction *action,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_toolbutton_quit_clicked (GtkAction *action,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_toolbutton_preferences_clicked (GtkAction *action,
- gpointer user_data);
+G_MODULE_EXPORT void on_zoom_out1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_toolbutton_reload_clicked (GtkAction *action,
- gpointer user_data);
+void on_toolbar_search_entry_changed(GtkAction *action, const gchar *text, gpointer user_data);
-G_MODULE_EXPORT void
-on_go_to_line_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+void on_toolbar_search_entry_activate(GtkAction *action, const gchar *text, gpointer user_data);
-G_MODULE_EXPORT void
-on_help1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_toggle_case1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_toolbutton_compile_clicked (GtkAction *action,
- gpointer user_data);
+G_MODULE_EXPORT void on_find_usage1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_website1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_preferences1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_help_menu_item_donate_activate(GtkMenuItem *item, gpointer user_data);
+G_MODULE_EXPORT void on_normal_size1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_help_menu_item_wiki_activate(GtkMenuItem *item, gpointer user_data);
+G_MODULE_EXPORT void on_show_color_chooser1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_help_menu_item_bug_report_activate(GtkMenuItem *item, gpointer user_data);
+G_MODULE_EXPORT void on_find1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_line_wrapping1_toggled (GtkCheckMenuItem *checkmenuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_find_next1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_comments_function_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_find_previous1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_comments_multiline_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_find_nextsel1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_comments_changelog_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_find_prevsel1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_comments_gpl_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_replace1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_comments_fileheader_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_find_in_files1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_insert_include_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_toolbutton_reload_clicked(GtkAction *action, gpointer user_data);
-G_MODULE_EXPORT void
-on_custom_date_dialog_response (GtkDialog *dialog,
- gint response,
- gpointer user_data);
+G_MODULE_EXPORT void on_go_to_line_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_custom_date_entry_activate (GtkEntry *entry,
- gpointer user_data);
+G_MODULE_EXPORT void on_help1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_insert_date_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+void on_toolbutton_compile_clicked(GtkAction *action, gpointer user_data);
-G_MODULE_EXPORT void
-on_set_file_readonly1_toggled (GtkCheckMenuItem *checkmenuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_line_wrapping1_toggled(GtkCheckMenuItem *checkmenuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_tv_notebook_switch_page (GtkNotebook *notebook,
- gpointer page,
- guint page_num,
- gpointer user_data);
+void on_toolbutton_goto_entry_activate(GtkAction *action, const gchar *text, gpointer user_data);
-G_MODULE_EXPORT void
-on_help_shortcuts1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+void on_toolbutton_goto_clicked(GtkAction *action, gpointer user_data);
+void on_toolbutton_run_clicked(GtkAction *action, gpointer user_data);
-G_MODULE_EXPORT void
-on_file_properties_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_menu_remove_indicators1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_show_line_numbers1_toggled (GtkCheckMenuItem *checkmenuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_print1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_use_auto_indentation1_toggled (GtkCheckMenuItem *checkmenuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_menu_select_all1_activate(GtkMenuItem *menuitem, gpointer user_data);
+G_MODULE_EXPORT void on_menu_show_sidebar1_toggled(GtkCheckMenuItem *checkmenuitem, gpointer user_data);
+G_MODULE_EXPORT void on_menu_comment_line1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_menu_fold_all1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_menu_uncomment_line1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_menu_unfold_all1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_menu_increase_indent1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_toolbutton_goto_entry_activate (GtkAction *action, const gchar *text, gpointer user_data);
+G_MODULE_EXPORT void on_menu_decrease_indent1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_toolbutton_goto_clicked (GtkAction *action,
- gpointer user_data);
+G_MODULE_EXPORT void on_menu_toggle_line_commentation1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_toolbutton_run_clicked (GtkAction *action,
- gpointer user_data);
+G_MODULE_EXPORT void on_next_message1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_notebook1_switch_page_after (GtkNotebook *notebook,
- gpointer page,
- guint page_num,
- gpointer user_data);
+G_MODULE_EXPORT void on_project_new1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_menu_remove_indicators1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_project_open1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_print1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_project_close1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_menu_select_all1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_project_properties1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_menu_show_sidebar1_toggled (GtkCheckMenuItem *checkmenuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_menu_open_selected_file1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_menu_write_unicode_bom1_toggled (GtkCheckMenuItem *checkmenuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_remove_markers1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_menu_comment_line1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_context_action1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_menu_uncomment_line1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_menu_toggle_all_additional_widgets1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_menu_increase_indent1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+void on_toolbutton_back_activate(GtkAction *action, gpointer user_data);
-G_MODULE_EXPORT void
-on_menu_decrease_indent1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+void on_toolbutton_forward_activate(GtkAction *action, gpointer user_data);
-G_MODULE_EXPORT void
-on_menu_toggle_line_commentation1_activate
- (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT gboolean on_motion_event(GtkWidget *widget, GdkEventMotion *event, gpointer user_data);
-G_MODULE_EXPORT void
-on_next_message1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT gboolean on_escape_key_press_event(GtkWidget *widget, GdkEventKey *event, gpointer user_data);
+G_MODULE_EXPORT void on_line_breaking1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_menu_comments_multiline_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_replace_spaces_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_menu_comments_gpl_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_previous_message1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_menu_insert_include_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_close_other_documents1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_menu_insert_date_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_find_document_usage1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_menu_comments_bsd_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_send_selection_to_vte1_activate(GtkMenuItem *menuitem, gpointer user_data);
-G_MODULE_EXPORT void
-on_comments_bsd_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_project_new1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_project_open1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_project_close1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_project_properties1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_menu_project1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_menu_open_selected_file1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_remove_markers1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_load_tags1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_context_action1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_menu_toggle_all_additional_widgets1_activate
- (GtkMenuItem *menuitem,
- gpointer user_data);
-G_MODULE_EXPORT void
-on_back_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_forward_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_file1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT gboolean
-on_motion_event (GtkWidget *widget,
- GdkEventMotion *event,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_tv_notebook_switch_page_after (GtkNotebook *notebook,
- gpointer page,
- guint page_num,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_tabs1_activate (GtkCheckMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_spaces1_activate (GtkCheckMenuItem *menuitem,
- gpointer user_data);
-
-
-G_MODULE_EXPORT void
-on_strip_trailing_spaces1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_page_setup1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT gboolean
-on_escape_key_press_event (GtkWidget *widget,
- GdkEventKey *event,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_line_breaking1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-
-G_MODULE_EXPORT void
-on_replace_spaces_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_previous_message1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_search1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_close_other_documents1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_menu_reload_configuration1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_find_document_usage1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_tabs_and_spaces1_activate (GtkCheckMenuItem *menuitem,
- gpointer user_data);
-G_MODULE_EXPORT void
-on_debug_messages1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_menu_show_white_space1_toggled (GtkCheckMenuItem *checkmenuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_menu_show_line_endings1_toggled (GtkCheckMenuItem *checkmenuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_menu_show_indentation_guides1_toggled
- (GtkCheckMenuItem *checkmenuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_send_selection_to_vte1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT gboolean
-on_window_state_event (GtkWidget *widget,
- GdkEventWindowState *event,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_customize_toolbar1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_button_customize_toolbar_clicked (GtkButton *button,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_cut_current_lines1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_copy_current_lines1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_delete_current_lines1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_duplicate_line_or_selection1_activate
- (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_select_current_lines1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_select_current_paragraph1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_insert_alternative_white_space1_activate
- (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_go_to_next_marker1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_go_to_previous_marker1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_reflow_lines_block1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_smart_line_indent1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_plugin_preferences1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_goto_tag_definition1 (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_goto_tag_declaration1 (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_indent_width_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_reset_indentation1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-
-G_MODULE_EXPORT void
-on_mark_all1_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_detect_type_from_file_activate (GtkMenuItem *menuitem,
- gpointer user_data);
-
-G_MODULE_EXPORT void
-on_detect_width_from_file_activate (GtkMenuItem *menuitem,
- gpointer user_data);
+G_MODULE_EXPORT void on_plugin_preferences1_activate(GtkMenuItem *menuitem, gpointer user_data);
G_END_DECLS
Modified: src/document.c
10 lines changed, 0 insertions(+), 10 deletions(-)
===================================================================
@@ -2963,16 +2963,6 @@ GeanyDocument *document_index(gint idx)
}
-/* create a new file and copy file content and properties */
-G_MODULE_EXPORT void on_clone1_activate(GtkMenuItem *menuitem, gpointer user_data)
-{
- GeanyDocument *old_doc = document_get_current();
-
- if (old_doc)
- document_clone(old_doc);
-}
-
-
GeanyDocument *document_clone(GeanyDocument *old_doc)
{
gchar *text;
Modified: src/main.c
10 lines changed, 2 insertions(+), 8 deletions(-)
===================================================================
@@ -788,13 +788,13 @@ static gint setup_config_dir(void)
return mkdir_result;
}
-/* Signal handling removed since on_exit_clicked() uses functions that are
+/* Signal handling removed since on_quit1_activate() uses functions that are
* illegal in signal handlers
static void signal_cb(gint sig)
{
if (sig == SIGTERM)
{
- on_exit_clicked(NULL, NULL);
+ on_quit1_activate(NULL, NULL);
}
}
*/
@@ -1157,12 +1157,6 @@ gint main(gint argc, gchar **argv)
symbols_init();
editor_snippets_init();
- /* registering some basic events */
- g_signal_connect(main_widgets.window, "delete-event", G_CALLBACK(on_exit_clicked), NULL);
- g_signal_connect(main_widgets.window, "window-state-event", G_CALLBACK(on_window_state_event), NULL);
-
- g_signal_connect(msgwindow.scribble, "motion-notify-event", G_CALLBACK(on_motion_event), NULL);
-
#ifdef HAVE_VTE
vte_init();
#endif
Modified: src/toolbar.c
18 lines changed, 9 insertions(+), 9 deletions(-)
===================================================================
@@ -55,20 +55,20 @@ static GSList *plugin_items = NULL;
* Fields: name, stock_id, label, accelerator, tooltip, callback */
static const GtkActionEntry ui_entries[] = {
/* custom actions defined in toolbar_init(): "New", "Open", "SearchEntry", "GotoEntry", "Build" */
- { "Save", GTK_STOCK_SAVE, NULL, NULL, N_("Save the current file"), G_CALLBACK(on_toolbutton_save_clicked) },
+ { "Save", GTK_STOCK_SAVE, NULL, NULL, N_("Save the current file"), G_CALLBACK(on_save1_activate) },
{ "SaveAs", GTK_STOCK_SAVE_AS, NULL, NULL, N_("Save as"), G_CALLBACK(on_save_as1_activate) },
{ "SaveAll", GEANY_STOCK_SAVE_ALL, NULL, NULL, N_("Save all open files"), G_CALLBACK(on_save_all1_activate) },
{ "Reload", GTK_STOCK_REVERT_TO_SAVED, NULL, NULL, N_("Reload the current file from disk"), G_CALLBACK(on_toolbutton_reload_clicked) },
- { "Close", GTK_STOCK_CLOSE, NULL, NULL, N_("Close the current file"), G_CALLBACK(on_toolbutton_close_clicked) },
- { "CloseAll", GEANY_STOCK_CLOSE_ALL, NULL, NULL, N_("Close all open files"), G_CALLBACK(on_toolbutton_close_all_clicked) },
+ { "Close", GTK_STOCK_CLOSE, NULL, NULL, N_("Close the current file"), G_CALLBACK(on_close1_activate) },
+ { "CloseAll", GEANY_STOCK_CLOSE_ALL, NULL, NULL, N_("Close all open files"), G_CALLBACK(on_close_all1_activate) },
{ "Cut", GTK_STOCK_CUT, NULL, NULL, N_("Cut the current selection"), G_CALLBACK(on_cut1_activate) },
{ "Copy", GTK_STOCK_COPY, NULL, NULL, N_("Copy the current selection"), G_CALLBACK(on_copy1_activate) },
{ "Paste", GTK_STOCK_PASTE, NULL, NULL, N_("Paste the contents of the clipboard"), G_CALLBACK(on_paste1_activate) },
{ "Delete", GTK_STOCK_DELETE, NULL, NULL, N_("Delete the current selection"), G_CALLBACK(on_delete1_activate) },
{ "Undo", GTK_STOCK_UNDO, NULL, NULL, N_("Undo the last modification"), G_CALLBACK(on_undo1_activate) },
{ "Redo", GTK_STOCK_REDO, NULL, NULL, N_("Redo the last modification"), G_CALLBACK(on_redo1_activate) },
- { "NavBack", GTK_STOCK_GO_BACK, NULL, NULL, N_("Navigate back a location"), G_CALLBACK(on_back_activate) },
- { "NavFor", GTK_STOCK_GO_FORWARD, NULL, NULL, N_("Navigate forward a location"), G_CALLBACK(on_forward_activate) },
+ { "NavBack", GTK_STOCK_GO_BACK, NULL, NULL, N_("Navigate back a location"), G_CALLBACK(on_toolbutton_back_activate) },
+ { "NavFor", GTK_STOCK_GO_FORWARD, NULL, NULL, N_("Navigate forward a location"), G_CALLBACK(on_toolbutton_forward_activate) },
{ "Compile", GTK_STOCK_CONVERT, N_("Compile"), NULL, N_("Compile the current file"), G_CALLBACK(on_toolbutton_compile_clicked) },
{ "Run", GTK_STOCK_EXECUTE, NULL, NULL, N_("Run or view the current file"), G_CALLBACK(on_toolbutton_run_clicked) },
{ "Color", GTK_STOCK_SELECT_COLOR, N_("Color Chooser"), NULL, N_("Open a color chooser dialog, to interactively pick colors from a palette"), G_CALLBACK(on_show_color_chooser1_activate) },
@@ -78,8 +78,8 @@ static const GtkActionEntry ui_entries[] = {
{ "Indent", GTK_STOCK_INDENT, NULL, NULL, N_("Increase indentation"), G_CALLBACK(on_menu_increase_indent1_activate) },
{ "Search", GTK_STOCK_FIND, NULL, NULL, N_("Find the entered text in the current file"), G_CALLBACK(on_toolbutton_search_clicked) },
{ "Goto", GTK_STOCK_JUMP_TO, NULL, NULL, N_("Jump to the entered line number"), G_CALLBACK(on_toolbutton_goto_clicked) },
- { "Preferences", GTK_STOCK_PREFERENCES, NULL, NULL, N_("Show the preferences dialog"), G_CALLBACK(on_toolbutton_preferences_clicked) },
- { "Quit", GTK_STOCK_QUIT, NULL, NULL, N_("Quit Geany"), G_CALLBACK(on_toolbutton_quit_clicked) },
+ { "Preferences", GTK_STOCK_PREFERENCES, NULL, NULL, N_("Show the preferences dialog"), G_CALLBACK(on_preferences1_activate) },
+ { "Quit", GTK_STOCK_QUIT, NULL, NULL, N_("Quit Geany"), G_CALLBACK(on_quit1_activate) },
{ "Print", GTK_STOCK_PRINT, NULL, NULL, N_("Print document"), G_CALLBACK(on_print1_activate) },
{ "Replace", GTK_STOCK_FIND_AND_REPLACE, NULL, NULL, N_("Replace text in the current document"), G_CALLBACK(on_replace1_activate) }
};
@@ -360,7 +360,7 @@ GtkWidget *toolbar_init(void)
_("Create a new file"),
_("Create a new file from a template"),
GTK_STOCK_NEW);
- g_signal_connect(action_new, "button-clicked", G_CALLBACK(on_toolbutton_new_clicked), NULL);
+ g_signal_connect(action_new, "button-clicked", G_CALLBACK(on_new1_activate), NULL);
gtk_action_group_add_action(group, action_new);
action_open = geany_menu_button_action_new(
@@ -368,7 +368,7 @@ GtkWidget *toolbar_init(void)
_("Open an existing file"),
_("Open a recent file"),
GTK_STOCK_OPEN);
- g_signal_connect(action_open, "button-clicked", G_CALLBACK(on_toolbutton_open_clicked), NULL);
+ g_signal_connect(action_open, "button-clicked", G_CALLBACK(on_open1_activate), NULL);
gtk_action_group_add_action(group, action_open);
action_build = geany_menu_button_action_new(
Modified: src/ui_utils.c
128 lines changed, 121 insertions(+), 7 deletions(-)
===================================================================
@@ -553,6 +553,49 @@ void ui_update_fold_items(void)
}
+/* @include include name or NULL for empty with cursor ready for typing it */
+static void insert_include(GeanyDocument *doc, gint pos, const gchar *include)
+{
+ gint pos_after = -1;
+ gchar *text;
+
+ g_return_if_fail(doc != NULL);
+ g_return_if_fail(pos == -1 || pos >= 0);
+
+ if (pos == -1)
+ pos = sci_get_current_position(doc->editor->sci);
+
+ if (! include)
+ {
+ text = g_strdup("#include \"\"\n");
+ pos_after = pos + 10;
+ }
+ else
+ {
+ text = g_strconcat("#include <", include, ">\n", NULL);
+ }
+
+ sci_start_undo_action(doc->editor->sci);
+ sci_insert_text(doc->editor->sci, pos, text);
+ sci_end_undo_action(doc->editor->sci);
+ g_free(text);
+ if (pos_after >= 0)
+ sci_goto_pos(doc->editor->sci, pos_after, FALSE);
+}
+
+
+static void on_popup_insert_include_activate(GtkMenuItem *menuitem, gpointer user_data)
+{
+ insert_include(document_get_current(), editor_info.click_pos, user_data);
+}
+
+
+static void on_menu_insert_include_activate(GtkMenuItem *menuitem, gpointer user_data)
+{
+ insert_include(document_get_current(), -1, user_data);
+}
+
+
static void insert_include_items(GtkMenu *me, GtkMenu *mp, gchar **includes, gchar *label)
{
guint i = 0;
@@ -577,7 +620,7 @@ static void insert_include_items(GtkMenu *me, GtkMenu *mp, gchar **includes, gch
g_signal_connect(tmp_menu, "activate",
G_CALLBACK(on_menu_insert_include_activate), (gpointer) includes[i]);
g_signal_connect(tmp_popup, "activate",
- G_CALLBACK(on_insert_include_activate), (gpointer) includes[i]);
+ G_CALLBACK(on_popup_insert_include_activate), (gpointer) includes[i]);
i++;
}
gtk_widget_show_all(edit_menu_item);
@@ -615,8 +658,7 @@ void ui_create_insert_menu_items(void)
blank = gtk_menu_item_new_with_label("#include \"...\"");
gtk_container_add(GTK_CONTAINER(menu_edit), blank);
gtk_widget_show(blank);
- g_signal_connect(blank, "activate", G_CALLBACK(on_menu_insert_include_activate),
- (gpointer) "blank");
+ g_signal_connect(blank, "activate", G_CALLBACK(on_menu_insert_include_activate), NULL);
blank = gtk_separator_menu_item_new ();
gtk_container_add(GTK_CONTAINER(menu_edit), blank);
gtk_widget_show(blank);
@@ -624,8 +666,7 @@ void ui_create_insert_menu_items(void)
blank = gtk_menu_item_new_with_label("#include \"...\"");
gtk_container_add(GTK_CONTAINER(menu_popup), blank);
gtk_widget_show(blank);
- g_signal_connect(blank, "activate", G_CALLBACK(on_insert_include_activate),
- (gpointer) "blank");
+ g_signal_connect(blank, "activate", G_CALLBACK(on_popup_insert_include_activate), NULL);
blank = gtk_separator_menu_item_new();
gtk_container_add(GTK_CONTAINER(menu_popup), blank);
gtk_widget_show(blank);
@@ -638,6 +679,79 @@ void ui_create_insert_menu_items(void)
}
+static void insert_date(GeanyDocument *doc, gint pos, const gchar *date_style)
+{
+ const gchar *format = NULL;
+ gchar *time_str;
+
+ g_return_if_fail(doc != NULL);
+ g_return_if_fail(pos == -1 || pos >= 0);
+
+ if (pos == -1)
+ pos = sci_get_current_position(doc->editor->sci);
+
+ /* set default value */
+ if (utils_str_equal("", ui_prefs.custom_date_format))
+ {
+ g_free(ui_prefs.custom_date_format);
+ ui_prefs.custom_date_format = g_strdup("%d.%m.%Y");
+ }
+
+ if (utils_str_equal(_("dd.mm.yyyy"), date_style))
+ format = "%d.%m.%Y";
+ else if (utils_str_equal(_("mm.dd.yyyy"), date_style))
+ format = "%m.%d.%Y";
+ else if (utils_str_equal(_("yyyy/mm/dd"), date_style))
+ format = "%Y/%m/%d";
+ else if (utils_str_equal(_("dd.mm.yyyy hh:mm:ss"), date_style))
+ format = "%d.%m.%Y %H:%M:%S";
+ else if (utils_str_equal(_("mm.dd.yyyy hh:mm:ss"), date_style))
+ format = "%m.%d.%Y %H:%M:%S";
+ else if (utils_str_equal(_("yyyy/mm/dd hh:mm:ss"), date_style))
+ format = "%Y/%m/%d %H:%M:%S";
+ else if (utils_str_equal(_("_Use Custom Date Format"), date_style))
+ format = ui_prefs.custom_date_format;
+ else
+ {
+ gchar *str = dialogs_show_input(_("Custom Date Format"), GTK_WINDOW(main_widgets.window),
+ _("Enter here a custom date and time format. "
+ "You can use any conversion specifiers which can be used with the ANSI C strftime function."),
+ ui_prefs.custom_date_format);
+ if (str)
+ SETPTR(ui_prefs.custom_date_format, str);
+ return;
+ }
+
+ time_str = utils_get_date_time(format, NULL);
+ if (time_str != NULL)
+ {
+ sci_start_undo_action(doc->editor->sci);
+ sci_insert_text(doc->editor->sci, pos, time_str);
+ sci_goto_pos(doc->editor->sci, pos + strlen(time_str), FALSE);
+ sci_end_undo_action(doc->editor->sci);
+ g_free(time_str);
+ }
+ else
+ {
+ utils_beep();
+ ui_set_statusbar(TRUE,
+ _("Date format string could not be converted (possibly too long)."));
+ }
+}
+
+
+static void on_popup_insert_date_activate(GtkMenuItem *menuitem, gpointer user_data)
+{
+ insert_date(document_get_current(), editor_info.click_pos, user_data);
+}
+
+
+static void on_menu_insert_date_activate(GtkMenuItem *menuitem, gpointer user_data)
+{
+ insert_date(document_get_current(), -1, user_data);
+}
+
+
static void insert_date_items(GtkMenu *me, GtkMenu *mp, gchar *label)
{
GtkWidget *item;
@@ -650,7 +764,7 @@ static void insert_date_items(GtkMenu *me, GtkMenu *mp, gchar *label)
item = gtk_menu_item_new_with_mnemonic(label);
gtk_container_add(GTK_CONTAINER(mp), item);
gtk_widget_show(item);
- g_signal_connect(item, "activate", G_CALLBACK(on_insert_date_activate), label);
+ g_signal_connect(item, "activate", G_CALLBACK(on_popup_insert_date_activate), label);
}
@@ -693,7 +807,7 @@ void ui_create_insert_date_menu_items(void)
item = gtk_menu_item_new_with_mnemonic(str);
gtk_container_add(GTK_CONTAINER(menu_popup), item);
gtk_widget_show(item);
- g_signal_connect(item, "activate", G_CALLBACK(on_insert_date_activate), str);
+ g_signal_connect(item, "activate", G_CALLBACK(on_popup_insert_date_activate), str);
ui_hookup_widget(main_widgets.editor_menu, item, "insert_date_custom2");
insert_date_items(menu_edit, menu_popup, _("_Set Custom Date Format"));
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).
More information about the Commits
mailing list