for up to 2.56) and Python 2.4 (with support for up to 3.6).
static GtkActionEntry custom_attr_popup_entries[] =
{
- {"CustomAttrPopup", NULL, "CustomAttrPopup" },
+ {"CustomAttrPopup", NULL, "CustomAttrPopup", NULL, NULL, NULL },
{"CustomAttrPopup/Delete", NULL, N_("_Delete"), NULL, NULL, G_CALLBACK(custom_attr_popup_delete) },
{"CustomAttrPopup/DeleteAll", NULL, N_("Delete _all"), NULL, NULL, G_CALLBACK(custom_attr_popup_clear_list) },
{"CustomAttrPopup/Reset", NULL, N_("_Reset to default"), NULL, NULL, G_CALLBACK(custom_attr_popup_factory_defaults) },
static GtkActionEntry addressbook_entries[] =
{
- {"Menu", NULL, "Menu" },
+ {"Menu", NULL, "Menu", NULL, NULL, NULL },
/* menus */
- {"Book", NULL, N_("_Book") },
- {"Address", NULL, N_("_Edit") },
- {"Tools", NULL, N_("_Tools") },
- {"Help", NULL, N_("_Help") },
+ {"Book", NULL, N_("_Book"), NULL, NULL, NULL },
+ {"Address", NULL, N_("_Edit"), NULL, NULL, NULL },
+ {"Tools", NULL, N_("_Tools"), NULL, NULL, NULL },
+ {"Help", NULL, N_("_Help"), NULL, NULL, NULL },
/* Book menu */
{"Book/NewBook", NULL, N_("New _Book"), "<control>B", NULL, G_CALLBACK(addressbook_new_book_cb) },
static GtkActionEntry addressbook_tree_popup_entries[] =
{
- {"ABTreePopup", NULL, "ABTreePopup" },
+ {"ABTreePopup", NULL, "ABTreePopup", NULL, NULL, NULL },
{"ABTreePopup/EditBook", NULL, N_("_Edit"), NULL, NULL, G_CALLBACK(addressbook_treenode_edit_cb) },
{"ABTreePopup/DeleteBook", NULL, N_("_Delete"), NULL, NULL, G_CALLBACK(addressbook_treenode_delete_cb) },
{"ABTreePopup/---", NULL, "---", NULL, NULL, NULL },
static GtkActionEntry addressbook_list_popup_entries[] =
{
- {"ABListPopup", NULL, "ABListPopup" },
+ {"ABListPopup", NULL, "ABListPopup", NULL, NULL, NULL },
{"ABListPopup/SelectAll", NULL, N_("_Select all"), NULL, NULL, G_CALLBACK(addressbook_select_all_cb) },
{"ABListPopup/---", NULL, "---", NULL, NULL, NULL },
{"ABListPopup/Edit", NULL, N_("_Edit"), NULL, NULL, G_CALLBACK(addressbook_edit_address_cb) },
ssl_sock_prepare,
ssl_sock_check,
ssl_sock_dispatch,
+ NULL,
+ NULL,
NULL
};
#endif
static GtkWidget *editaddr_popup_menu = NULL;
static GtkActionEntry editaddr_popup_entries[] =
{
- {"EditAddressPopup", NULL, "EditAddressPopup" },
+ {"EditAddressPopup", NULL, "EditAddressPopup", NULL, NULL, NULL },
{"EditAddressPopup/SetPicture", NULL, N_("_Set picture"), NULL, NULL, G_CALLBACK(addressbook_edit_person_set_picture_menu_cb) },
{"EditAddressPopup/UnsetPicture", NULL, N_("_Unset picture"), NULL, NULL, G_CALLBACK(addressbook_edit_person_unset_picture_menu_cb) },
};
static GtkActionEntry apply_popup_actions[] =
{
- { "EditTags", NULL, "EditTags" },
+ { "EditTags", NULL, "EditTags", NULL, NULL, NULL },
{ "EditTags/Delete", NULL, N_("_Delete"), NULL, "Delete tag", G_CALLBACK(apply_popup_delete) },
{ "EditTags/DeleteAll", NULL, N_("Delete _all"), NULL, "Delete all tags", G_CALLBACK(apply_popup_delete_all) }
};
sizeof (GtkCMCList),
0, /* n_preallocs */
(GInstanceInitFunc) gtk_cmclist_init,
+
+ (const GTypeValueTable *) NULL /* value table */
};
clist_type = g_type_register_static (GTK_TYPE_CONTAINER, "GtkCMCList", &clist_info, (GTypeFlags)0);
}
sizeof (GtkCMCTree),
0, /* n_preallocs */
(GInstanceInitFunc) gtk_cmctree_init,
+
+ (const GTypeValueTable *) NULL /* value table */
};
ctree_type = g_type_register_static (GTK_TYPE_CMCLIST, "GtkCMCTree", &ctree_info, (GTypeFlags)0);
sizeof (GtkSCTree),
0, /* n_preallocs */
(GInstanceInitFunc) gtk_sctree_init,
+
+ (const GTypeValueTable *) NULL /* value table */
};
sctree_type = g_type_register_static (GTK_TYPE_CMCTREE, "GtkSCTree", &sctree_info, (GTypeFlags)0);
sizeof (GtkVScrollbutton),
0, /* n_preallocs */
(GInstanceInitFunc) gtk_vscrollbutton_init,
+
+ (const GTypeValueTable *) NULL /* value table */
};
vscrollbutton_type = g_type_register_static (GTK_TYPE_VBOX, "GtkVScrollbutton", &vscrollbutton_info, (GTypeFlags)0);
{"FolderViewPopup/DownloadMessages", NULL, N_("Down_load messages"), NULL, NULL, G_CALLBACK(download_cb) },
- {"FolderViewPopup/Subscriptions", NULL, N_("S_ubscriptions") },
+ {"FolderViewPopup/Subscriptions", NULL, N_("S_ubscriptions"), NULL, NULL, NULL },
{"FolderViewPopup/Subscriptions/---", NULL, "---", NULL, NULL, NULL },
{"FolderViewPopup/Subscriptions/Subscribe", NULL, N_("_Subscribe..."), NULL, NULL, G_CALLBACK(subscribe_cb) },
{"FolderViewPopup/Subscriptions/Unsubscribe", NULL, N_("_Unsubscribe..."), NULL, NULL, G_CALLBACK(unsubscribe_cb) },
static GtkToggleActionEntry imap_toggle_popup_entries[] =
{
- {"FolderViewPopup/Subscriptions/ShowOnlySubs", NULL, N_("Show only subscribed _folders"), NULL, NULL, G_CALLBACK(subscribed_cb) },
+ {"FolderViewPopup/Subscriptions/ShowOnlySubs", NULL, N_("Show only subscribed _folders"), NULL, NULL, G_CALLBACK(subscribed_cb), FALSE },
};
static void set_sensitivity(GtkUIManager *ui_manager, FolderItem *item);
}
static GtkActionEntry mimeview_menu_actions[] = {
- { "MimeView", NULL, "MimeView" },
+ { "MimeView", NULL, "MimeView", NULL, NULL, NULL },
{ "MimeView/Open", NULL, N_("_Open"), NULL, "Open MIME part", G_CALLBACK(mimeview_launch_cb) },
#if (!defined G_OS_WIN32)
{ "MimeView/OpenWith", NULL, N_("Open _with..."), NULL, "Open MIME part with...", G_CALLBACK(mimeview_open_with_cb) },
NULL, NULL},
{"win_height", "-1", &AttRemoverData.win_height, P_INT, NULL,
NULL, NULL},
- {0,0,0,0}
+ {0,0,0,0,0,0,0}
};
enum {
{"proxy_server", "http://SERVERNAME:PORT", &fancy_prefs.proxy_str, P_STRING,
NULL, NULL, NULL},
{"stylesheet", "", &fancy_prefs.stylesheet, P_STRING, NULL, NULL, NULL},
- {0,0,0,0}
+ {0,0,0,0,0,0,0}
};
static FancyPrefsPage fancy_prefs_page;
static GtkActionEntry sieve_editor_entries[] =
{
- {"Menu", NULL, "Menu" },
+ {"Menu", NULL, "Menu", NULL, NULL, NULL },
/* menus */
- {"Filter", NULL, N_("_Filter") },
- {"Edit", NULL, N_("_Edit") },
+ {"Filter", NULL, N_("_Filter"), NULL, NULL, NULL },
+ {"Edit", NULL, N_("_Edit"), NULL, NULL, NULL },
/* Filter menu */
{"Filter/Save", NULL, N_("_Save"), "<control>S", NULL, G_CALLBACK(sieve_editor_save_cb) },
/* Edit menu */
{"Edit/Undo", NULL, N_("_Undo"), "<control>Z", NULL, G_CALLBACK(sieve_editor_undo_cb) },
{"Edit/Redo", NULL, N_("_Redo"), "<control>Y", NULL, G_CALLBACK(sieve_editor_redo_cb) },
- /* {"Edit/---", NULL, "---" }, */
+ /* {"Edit/---", NULL, "---", NULL, NULL, NULL }, */
{"Edit/Cut", NULL, N_("Cu_t"), "<control>X", NULL, G_CALLBACK(sieve_editor_cut_cb) },
{"Edit/Copy", NULL, N_("_Copy"), "<control>C", NULL, G_CALLBACK(sieve_editor_copy_cb) },
{"Edit/SelectAll", NULL, N_("Select _all"), "<control>A", NULL, G_CALLBACK(sieve_editor_allsel_cb) },
- {"Edit/---", NULL, "---" },
+ {"Edit/---", NULL, "---", NULL, NULL, NULL },
{"Edit/Find", NULL, N_("_Find"), "<control>F", NULL, G_CALLBACK(sieve_editor_find_cb) },
};
P_INT, NULL, NULL, NULL},
{"manager_win_height", "-1", &sieve_config.manager_win_height,
P_INT, NULL, NULL, NULL},
- {0,0,0,0}
+ {0,0,0,0,0,0,0}
};
#define PACK_HBOX(hbox, vbox) \
NULL,
sizeof (GtkHotkeyInfo),
0,
- (GInstanceInitFunc) gtk_hotkey_info_init
+ (GInstanceInitFunc) gtk_hotkey_info_init,
+ (const GTypeValueTable *) NULL /* value table */
};
gtk_hotkey_info_type_id = g_type_register_static (G_TYPE_OBJECT,
NULL,
sizeof (GtkHotkeyKeyFileRegistry),
0,
- (GInstanceInitFunc) gtk_hotkey_key_file_registry_init
+ (GInstanceInitFunc) gtk_hotkey_key_file_registry_init,
+ (const GTypeValueTable *) NULL /* value table */
};
gtk_hotkey_key_file_registry_type_id = g_type_register_static (GTK_HOTKEY_TYPE_STORAGE, "GtkHotkeyKeyFileRegistry", &g_define_type_info, 0);
NULL,
sizeof (GtkHotkeyListener),
0,
- (GInstanceInitFunc) gtk_hotkey_listener_init
+ (GInstanceInitFunc) gtk_hotkey_listener_init,
+ (const GTypeValueTable *) NULL /* value table */
};
gtk_hotkey_listener_type_id = g_type_register_static (G_TYPE_OBJECT,
NULL,
sizeof (GtkHotkeyRegistry),
0,
- (GInstanceInitFunc) gtk_hotkey_registry_init
+ (GInstanceInitFunc) gtk_hotkey_registry_init,
+ (const GTypeValueTable *) NULL /* value table */
};
gtk_hotkey_registry_type_id = g_type_register_static (G_TYPE_OBJECT, "GtkHotkeyRegistry", &g_define_type_info, G_TYPE_FLAG_ABSTRACT);
NULL,
sizeof (GtkHotkeyX11Listener),
0,
- (GInstanceInitFunc) gtk_hotkey_x11_listener_init
+ (GInstanceInitFunc) gtk_hotkey_x11_listener_init,
+ (const GTypeValueTable *) NULL /* value table */
};
gtk_hotkey_x11_listener_type_id = g_type_register_static (GTK_HOTKEY_TYPE_LISTENER, "GtkHotkeyX11Listener", &g_define_type_info, 0);
static GtkActionEntry banner_popup_entries[] =
{
- {"BannerPopup", NULL, "BannerPopup" },
+ {"BannerPopup", NULL, "BannerPopup", NULL, NULL, NULL },
{"BannerPopup/Reply", NULL, N_("_Reply"), NULL, NULL, G_CALLBACK(banner_menu_reply_cb) },
};
static GtkWidget *focused_widget = NULL;
static GtkActionEntry trayicon_popup_menu_entries[] = {
- {"SysTrayiconPopup", NULL, "SysTrayiconPopup" },
+ {"SysTrayiconPopup", NULL, "SysTrayiconPopup", NULL, NULL, NULL },
{"SysTrayiconPopup/GetMail", NULL, N_("_Get Mail"), NULL, NULL, G_CALLBACK(trayicon_get_all_cb) },
{"SysTrayiconPopup/GetMailAcc", NULL, N_("_Get Mail from account"), NULL, NULL, NULL },
- {"SysTrayiconPopup/---", NULL, "---" },
+ {"SysTrayiconPopup/---", NULL, "---", NULL, NULL, NULL },
{"SysTrayiconPopup/Email", NULL, N_("_Email"), NULL, NULL, G_CALLBACK(trayicon_compose_cb) },
{"SysTrayiconPopup/EmailAcc", NULL, N_("E_mail from account"), NULL, NULL, NULL },
{"SysTrayiconPopup/OpenAB", NULL, N_("Open A_ddressbook"), NULL, NULL, G_CALLBACK(trayicon_addressbook_cb) },
static GtkToggleActionEntry trayicon_popup_toggle_menu_entries[] =
{
- {"SysTrayiconPopup/ToggleOffline", NULL, N_("_Work Offline"), NULL, NULL, G_CALLBACK(trayicon_toggle_offline_cb) },
+ {"SysTrayiconPopup/ToggleOffline", NULL, N_("_Work Offline"), NULL, NULL, G_CALLBACK(trayicon_toggle_offline_cb), FALSE },
#ifdef HAVE_LIBNOTIFY
- {"SysTrayiconPopup/ShowBubbles", NULL, N_("Show Trayicon Notifications"), NULL, NULL, G_CALLBACK(trayicon_toggle_notify_cb) },
+ {"SysTrayiconPopup/ShowBubbles", NULL, N_("Show Trayicon Notifications"), NULL, NULL, G_CALLBACK(trayicon_toggle_notify_cb), FALSE },
#endif
};
(initproc)Account_init, /* tp_init */
0, /* tp_alloc */
0, /* tp_new */
+ 0, /* tp_free */
+ 0, /* tp_is_gc */
+ 0, /* tp_bases */
+ 0, /* tp_mro */
+ 0, /* tp_cache */
+ 0, /* tp_subclasses */
+ 0, /* tp_weaklist */
+ 0, /* tp_del */
+#if ((PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION >= 6) || \
+ (PY_MAJOR_VERSION == 3))
+ 0, /* tp_version_tag */
+#endif
+#if (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 4)
+ 0, /* tp_finalize */
+#endif
};
-
gboolean cmpy_add_account(PyObject *module)
{
clawsmail_AccountType.tp_new = PyType_GenericNew;
(initproc)ComposeWindow_init, /* tp_init */
0, /* tp_alloc */
0, /* tp_new */
+ 0, /* tp_free */
+ 0, /* tp_is_gc */
+ 0, /* tp_bases */
+ 0, /* tp_mro */
+ 0, /* tp_cache */
+ 0, /* tp_subclasses */
+ 0, /* tp_weaklist */
+ 0, /* tp_del */
+#if ((PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION >= 6) || \
+ (PY_MAJOR_VERSION == 3))
+ 0, /* tp_version_tag */
+#endif
+#if (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 4)
+ 0, /* tp_finalize */
+#endif
};
gboolean cmpy_add_composewindow(PyObject *module)
(initproc)FolderProperties_init, /* tp_init */
0, /* tp_alloc */
0, /* tp_new */
+ 0, /* tp_free */
+ 0, /* tp_is_gc */
+ 0, /* tp_bases */
+ 0, /* tp_mro */
+ 0, /* tp_cache */
+ 0, /* tp_subclasses */
+ 0, /* tp_weaklist */
+ 0, /* tp_del */
+#if ((PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION >= 6) || \
+ (PY_MAJOR_VERSION == 3))
+ 0, /* tp_version_tag */
+#endif
+#if (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 4)
+ 0, /* tp_finalize */
+#endif
};
-
gboolean cmpy_add_folderproperties(PyObject *module)
{
clawsmail_FolderPropertiesType.tp_new = PyType_GenericNew;
(initproc)Folder_init, /* tp_init */
0, /* tp_alloc */
0, /* tp_new */
+ 0, /* tp_free */
+ 0, /* tp_is_gc */
+ 0, /* tp_bases */
+ 0, /* tp_mro */
+ 0, /* tp_cache */
+ 0, /* tp_subclasses */
+ 0, /* tp_weaklist */
+ 0, /* tp_del */
+#if ((PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION >= 6) || \
+ (PY_MAJOR_VERSION == 3))
+ 0, /* tp_version_tag */
+#endif
+#if (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 4)
+ 0, /* tp_finalize */
+#endif
};
gboolean cmpy_add_folder(PyObject *module)
(initproc)Mailbox_init, /* tp_init */
0, /* tp_alloc */
0, /* tp_new */
+ 0, /* tp_free */
+ 0, /* tp_is_gc */
+ 0, /* tp_bases */
+ 0, /* tp_mro */
+ 0, /* tp_cache */
+ 0, /* tp_subclasses */
+ 0, /* tp_weaklist */
+ 0, /* tp_del */
+#if ((PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION >= 6) || \
+ (PY_MAJOR_VERSION == 3))
+ 0, /* tp_version_tag */
+#endif
+#if (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 4)
+ 0, /* tp_finalize */
+#endif
};
-
gboolean cmpy_add_mailbox(PyObject *module)
{
clawsmail_MailboxType.tp_new = PyType_GenericNew;
(initproc)MessageInfo_init,/* tp_init */
0, /* tp_alloc */
0, /* tp_new */
+ 0, /* tp_free */
+ 0, /* tp_is_gc */
+ 0, /* tp_bases */
+ 0, /* tp_mro */
+ 0, /* tp_cache */
+ 0, /* tp_subclasses */
+ 0, /* tp_weaklist */
+ 0, /* tp_del */
+#if ((PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION >= 6) || \
+ (PY_MAJOR_VERSION == 3))
+ 0, /* tp_version_tag */
+#endif
+#if (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 4)
+ 0, /* tp_finalize */
+#endif
};
gboolean cmpy_add_messageinfo(PyObject *module)
}
static GtkActionEntry compose_tools_python_actions[] = {
- {"Tools/PythonScripts", NULL, N_("Python scripts") },
+ {"Tools/PythonScripts", NULL, N_("Python scripts"), NULL, NULL, NULL },
};
static void ComposeActionData_destroy_cb(gpointer data)
};
static GtkActionEntry mainwindow_tools_python_actions[] = {
- {"Tools/PythonScripts", NULL, N_("Python scripts") },
- {"Tools/PythonScripts/Refresh", NULL, N_("Refresh"),
+ {"Tools/PythonScripts", NULL, N_("Python scripts"), NULL, NULL, NULL },
+ {"Tools/PythonScripts/Refresh", NULL, N_("Refresh"), NULL, NULL, NULL,
NULL, NULL, G_CALLBACK(refresh_python_scripts_menus) },
{"Tools/PythonScripts/Browse", NULL, N_("Browse"),
NULL, NULL, G_CALLBACK(browse_python_scripts_dir) },
- {"Tools/PythonScripts/---", NULL, "---" },
+ {"Tools/PythonScripts/---", NULL, "---", NULL, NULL, NULL },
};
static int python_menu_init(char **error)
static GtkActionEntry view_event_popup_entries[] =
{
- {"VcalViewEvent", NULL, "VcalViewEvent" },
+ {"VcalViewEvent", NULL, "VcalViewEvent", NULL, NULL, NULL },
{"VcalViewEvent/EditMeeting", NULL, N_("_Edit this meeting..."), NULL, NULL, G_CALLBACK(view_edit_meeting_cb) },
{"VcalViewEvent/CancelMeeting", NULL, N_("_Cancel this meeting..."), NULL, NULL, G_CALLBACK(view_cancel_meeting_cb) },
{"VcalViewEvent/---", NULL, "---", NULL, NULL, NULL },
{
handle_method_call,
NULL,
+ NULL,
NULL
};
static GtkActionEntry prefs_actions_popup_entries[] =
{
- {"PrefsActionsPopup", NULL, "PrefsActionsPopup" },
+ {"PrefsActionsPopup", NULL, "PrefsActionsPopup", NULL, NULL, NULL },
{"PrefsActionsPopup/Delete", NULL, N_("_Delete"), NULL, NULL, G_CALLBACK(prefs_actions_delete_cb) },
{"PrefsActionsPopup/DeleteAll", NULL, N_("Delete _all"), NULL, NULL, G_CALLBACK(prefs_actions_delete_all_cb) },
{"PrefsActionsPopup/Duplicate", NULL, N_("D_uplicate"), NULL, NULL, G_CALLBACK(prefs_actions_duplicate_cb) },
static GtkActionEntry prefs_filtering_popup_entries[] =
{
- {"PrefsFilteringPopup", NULL, "PrefsFilteringPopup" },
+ {"PrefsFilteringPopup", NULL, "PrefsFilteringPopup", NULL, NULL, NULL },
{"PrefsFilteringPopup/Delete", NULL, N_("_Delete"), NULL, NULL, G_CALLBACK(prefs_filtering_delete_cb) },
{"PrefsFilteringPopup/DeleteAll", NULL, N_("Delete _all"), NULL, NULL, G_CALLBACK(prefs_filtering_delete_all_cb) },
{"PrefsFilteringPopup/Duplicate", NULL, N_("D_uplicate"), NULL, NULL, G_CALLBACK(prefs_filtering_duplicate_cb) },
static GtkActionEntry prefs_template_popup_entries[] =
{
- {"PrefsTemplatePopup", NULL, "PrefsTemplatePopup" },
+ {"PrefsTemplatePopup", NULL, "PrefsTemplatePopup", NULL, NULL, NULL },
{"PrefsTemplatePopup/Delete", NULL, N_("_Delete"), NULL, NULL, G_CALLBACK(prefs_template_delete_cb) },
{"PrefsTemplatePopup/DeleteAll", NULL, N_("Delete _all"), NULL, NULL, G_CALLBACK(prefs_template_delete_all_cb) },
{"PrefsTemplatePopup/Duplicate", NULL, N_("D_uplicate"), NULL, NULL, G_CALLBACK(prefs_template_duplicate_cb) },
static GtkActionEntry textview_link_popup_entries[] =
{
- {"TextviewPopupLink", NULL, "TextviewPopupLink" },
+ {"TextviewPopupLink", NULL, "TextviewPopupLink", NULL, NULL, NULL },
{"TextviewPopupLink/Open", NULL, N_("_Open in web browser"), NULL, NULL, G_CALLBACK(open_uri_cb) },
{"TextviewPopupLink/Copy", NULL, N_("Copy this _link"), NULL, NULL, G_CALLBACK(copy_uri_cb) },
};
static GtkActionEntry textview_mail_popup_entries[] =
{
- {"TextviewPopupMail", NULL, "TextviewPopupMail" },
+ {"TextviewPopupMail", NULL, "TextviewPopupMail", NULL, NULL, NULL },
{"TextviewPopupMail/Compose", NULL, N_("Compose _new message"), NULL, NULL, G_CALLBACK(mail_to_uri_cb) },
{"TextviewPopupMail/ReplyTo", NULL, N_("_Reply to this address"), NULL, NULL, G_CALLBACK(reply_to_uri_cb) },
{"TextviewPopupMail/AddAB", NULL, N_("Add to _Address book"), NULL, NULL, G_CALLBACK(add_uri_to_addrbook_cb) },
static GtkActionEntry textview_file_popup_entries[] =
{
- {"TextviewPopupFile", NULL, "TextviewPopupFile" },
+ {"TextviewPopupFile", NULL, "TextviewPopupFile", NULL, NULL, NULL },
{"TextviewPopupFile/Open", NULL, N_("_Open image"), NULL, NULL, G_CALLBACK(open_image_cb) },
{"TextviewPopupFile/Save", NULL, N_("_Save image..."), NULL, NULL, G_CALLBACK(save_file_cb) },
};