本文整理汇总了C++中e_shell_view_get_shell_window函数的典型用法代码示例。如果您正苦于以下问题:C++ e_shell_view_get_shell_window函数的具体用法?C++ e_shell_view_get_shell_window怎么用?C++ e_shell_view_get_shell_window使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了e_shell_view_get_shell_window函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: action_task_list_copy_cb
static void
action_task_list_copy_cb (GtkAction *action,
ETaskShellView *task_shell_view)
{
ETaskShellSidebar *task_shell_sidebar;
EShell *shell;
EShellView *shell_view;
EShellWindow *shell_window;
ESourceRegistry *registry;
ESourceSelector *selector;
ESource *source;
shell_view = E_SHELL_VIEW (task_shell_view);
shell_window = e_shell_view_get_shell_window (shell_view);
shell = e_shell_window_get_shell (shell_window);
registry = e_shell_get_registry (shell);
task_shell_sidebar = task_shell_view->priv->task_shell_sidebar;
selector = e_task_shell_sidebar_get_selector (task_shell_sidebar);
source = e_source_selector_ref_primary_selection (selector);
g_return_if_fail (source != NULL);
copy_source_dialog (
GTK_WINDOW (shell_window), registry,
source, E_CAL_CLIENT_SOURCE_TYPE_TASKS);
g_object_unref (source);
}
示例2: shell_searchbar_entry_key_press_cb
static gboolean
shell_searchbar_entry_key_press_cb (EShellSearchbar *searchbar,
GdkEventKey *key_event,
GtkWindow *entry)
{
EShellView *shell_view;
EShellWindow *shell_window;
GtkAction *action;
guint mask;
mask = gtk_accelerator_get_default_mod_mask ();
if ((key_event->state & mask) != GDK_MOD1_MASK)
return FALSE;
if (key_event->keyval != GDK_KEY_Down)
return FALSE;
shell_view = e_shell_searchbar_get_shell_view (searchbar);
shell_window = e_shell_view_get_shell_window (shell_view);
action = E_SHELL_WINDOW_ACTION_SEARCH_OPTIONS (shell_window);
gtk_action_activate (action);
return TRUE;
}
示例3: action_contact_new_list_cb
static void
action_contact_new_list_cb (GtkAction *action,
EBookShellView *book_shell_view)
{
EShell *shell;
EShellView *shell_view;
EShellWindow *shell_window;
EBookShellContent *book_shell_content;
EAddressbookView *view;
EAddressbookModel *model;
EContact *contact;
EABEditor *editor;
EBookClient *book;
shell_view = E_SHELL_VIEW (book_shell_view);
shell_window = e_shell_view_get_shell_window (shell_view);
shell = e_shell_window_get_shell (shell_window);
book_shell_content = book_shell_view->priv->book_shell_content;
view = e_book_shell_content_get_current_view (book_shell_content);
g_return_if_fail (view != NULL);
model = e_addressbook_view_get_model (view);
book = e_addressbook_model_get_client (model);
g_return_if_fail (book != NULL);
contact = e_contact_new ();
editor = e_contact_list_editor_new (shell, book, contact, TRUE, TRUE);
eab_editor_show (editor);
g_object_unref (contact);
}
示例4: action_task_new_cb
static void
action_task_new_cb (GtkAction *action,
ETaskShellView *task_shell_view)
{
EShellView *shell_view;
EShellWindow *shell_window;
ETaskShellContent *task_shell_content;
ETaskTable *task_table;
EClient *client = NULL;
GSList *list;
shell_view = E_SHELL_VIEW (task_shell_view);
shell_window = e_shell_view_get_shell_window (shell_view);
task_shell_content = task_shell_view->priv->task_shell_content;
task_table = e_task_shell_content_get_task_table (task_shell_content);
list = e_task_table_get_selected (task_table);
if (list) {
ECalModelComponent *comp_data;
comp_data = list->data;
client = g_object_ref (comp_data->client);
g_slist_free (list);
}
e_cal_ops_new_component_editor (shell_window, E_CAL_CLIENT_SOURCE_TYPE_TASKS,
client ? e_source_get_uid (e_client_get_source (client)) : NULL, FALSE);
g_clear_object (&client);
}
示例5: mail_shell_content_get_action_group
static GtkActionGroup *
mail_shell_content_get_action_group (EMailReader *reader,
EMailReaderActionGroup group)
{
EShellView *shell_view;
EShellWindow *shell_window;
EShellContent *shell_content;
const gchar *group_name;
shell_content = E_SHELL_CONTENT (reader);
shell_view = e_shell_content_get_shell_view (shell_content);
shell_window = e_shell_view_get_shell_window (shell_view);
switch (group) {
case E_MAIL_READER_ACTION_GROUP_STANDARD:
group_name = "mail";
break;
case E_MAIL_READER_ACTION_GROUP_SEARCH_FOLDERS:
group_name = "search-folders";
break;
default:
g_return_val_if_reached (NULL);
}
return e_shell_window_get_action_group (shell_window, group_name);
}
示例6: action_calendar_taskpad_open_url_cb
static void
action_calendar_taskpad_open_url_cb (GtkAction *action,
ECalShellView *cal_shell_view)
{
EShellView *shell_view;
EShellWindow *shell_window;
ECalShellContent *cal_shell_content;
ECalModelComponent *comp_data;
ETaskTable *task_table;
icalproperty *prop;
const gchar *uri;
GSList *list;
shell_view = E_SHELL_VIEW (cal_shell_view);
shell_window = e_shell_view_get_shell_window (shell_view);
cal_shell_content = cal_shell_view->priv->cal_shell_content;
task_table = e_cal_shell_content_get_task_table (cal_shell_content);
list = e_task_table_get_selected (task_table);
g_return_if_fail (list != NULL);
comp_data = list->data;
/* XXX We only open the URI of the first selected task. */
prop = icalcomponent_get_first_property (
comp_data->icalcomp, ICAL_URL_PROPERTY);
g_return_if_fail (prop != NULL);
uri = icalproperty_get_url (prop);
e_show_uri (GTK_WINDOW (shell_window), uri);
}
示例7: action_calendar_taskpad_new_cb
static void
action_calendar_taskpad_new_cb (GtkAction *action,
ECalShellView *cal_shell_view)
{
EShellView *shell_view;
EShellWindow *shell_window;
ECalShellContent *cal_shell_content;
ECalModelComponent *comp_data;
ETaskTable *task_table;
GSList *list;
shell_view = E_SHELL_VIEW (cal_shell_view);
shell_window = e_shell_view_get_shell_window (shell_view);
cal_shell_content = cal_shell_view->priv->cal_shell_content;
task_table = e_cal_shell_content_get_task_table (cal_shell_content);
list = e_task_table_get_selected (task_table);
g_return_if_fail (list != NULL);
comp_data = list->data;
g_slist_free (list);
e_cal_ops_new_component_editor (shell_window, E_CAL_CLIENT_SOURCE_TYPE_TASKS,
e_source_get_uid (e_client_get_source (E_CLIENT (comp_data->client))), FALSE);
}
示例8: action_address_book_new_cb
static void
action_address_book_new_cb (GtkAction *action,
EBookShellView *book_shell_view)
{
EShellView *shell_view;
EShellWindow *shell_window;
ESourceRegistry *registry;
GtkWidget *config;
GtkWidget *dialog;
const gchar *icon_name;
shell_view = E_SHELL_VIEW (book_shell_view);
shell_window = e_shell_view_get_shell_window (shell_view);
registry = book_shell_view->priv->registry;
config = e_book_source_config_new (registry, NULL);
dialog = e_source_config_dialog_new (E_SOURCE_CONFIG (config));
gtk_window_set_transient_for (
GTK_WINDOW (dialog), GTK_WINDOW (shell_window));
icon_name = gtk_action_get_icon_name (action);
gtk_window_set_icon_name (GTK_WINDOW (dialog), icon_name);
gtk_window_set_title (GTK_WINDOW (dialog), _("New Address Book"));
gtk_widget_show (dialog);
}
示例9: setup_source_actions
static void
setup_source_actions (EShellView *shell_view,
GtkActionEntry *entries)
{
EShellWindow *shell_window;
const gchar *group;
g_return_if_fail (shell_view != NULL);
g_return_if_fail (entries != NULL);
if (strstr (entries->name, "calendar"))
group = "calendar";
else if (strstr (entries->name, "tasks"))
group = "tasks";
else
group = "contacts";
shell_window = e_shell_view_get_shell_window (shell_view);
e_action_group_add_actions_localized (
e_shell_window_get_action_group (shell_window, group), GETTEXT_PACKAGE,
entries, NUM_ENTRIES, shell_view);
g_signal_connect (shell_view, "update-actions", G_CALLBACK (update_source_entries_cb), entries);
}
示例10: e_cal_shell_view_taskpad_actions_init
void
e_cal_shell_view_taskpad_actions_init (ECalShellView *cal_shell_view)
{
EShellView *shell_view;
EShellWindow *shell_window;
GtkActionGroup *action_group;
shell_view = E_SHELL_VIEW (cal_shell_view);
shell_window = e_shell_view_get_shell_window (shell_view);
/* Calendar Actions */
action_group = ACTION_GROUP (CALENDAR);
gtk_action_group_add_actions (
action_group, calendar_taskpad_entries,
G_N_ELEMENTS (calendar_taskpad_entries), cal_shell_view);
/* Lockdown Printing Actions */
action_group = ACTION_GROUP (LOCKDOWN_PRINTING);
gtk_action_group_add_actions (
action_group, lockdown_printing_entries,
G_N_ELEMENTS (lockdown_printing_entries), cal_shell_view);
/* Lockdown Save-to-Disk Actions */
action_group = ACTION_GROUP (LOCKDOWN_SAVE_TO_DISK);
gtk_action_group_add_actions (
action_group, lockdown_save_to_disk_entries,
G_N_ELEMENTS (lockdown_save_to_disk_entries), cal_shell_view);
}
示例11: action_address_book_delete_cb
static void
action_address_book_delete_cb (GtkAction *action,
EBookShellView *book_shell_view)
{
EShellView *shell_view;
EShellWindow *shell_window;
EBookShellBackend *book_shell_backend;
EBookShellSidebar *book_shell_sidebar;
ESource *source;
ESourceSelector *selector;
ESourceGroup *source_group;
ESourceList *source_list;
EBookClient *book;
gint response;
GError *error = NULL;
shell_view = E_SHELL_VIEW (book_shell_view);
shell_window = e_shell_view_get_shell_window (shell_view);
book_shell_backend = book_shell_view->priv->book_shell_backend;
source_list = e_book_shell_backend_get_source_list (book_shell_backend);
book_shell_sidebar = book_shell_view->priv->book_shell_sidebar;
selector = e_book_shell_sidebar_get_selector (book_shell_sidebar);
source = e_source_selector_get_primary_selection (selector);
g_return_if_fail (source != NULL);
response = e_alert_run_dialog_for_args (
GTK_WINDOW (shell_window),
"addressbook:ask-delete-addressbook",
e_source_peek_name (source), NULL);
if (response != GTK_RESPONSE_YES)
return;
book = e_book_client_new (source, &error);
if (error != NULL) {
g_warning ("Error removing addressbook: %s", error->message);
g_error_free (error);
return;
}
if (!e_client_remove_sync (E_CLIENT (book), NULL, NULL)) {
e_alert_run_dialog_for_args (
GTK_WINDOW (shell_window),
"addressbook:remove-addressbook", NULL);
g_object_unref (book);
return;
}
if (e_source_selector_source_is_selected (selector, source))
e_source_selector_unselect_source (selector, source);
source_group = e_source_peek_group (source);
e_source_group_remove_source (source_group, source);
e_source_list_sync (source_list, NULL);
g_object_unref (book);
}
示例12: action_task_list_new_cb
static void
action_task_list_new_cb (GtkAction *action,
ETaskShellView *task_shell_view)
{
EShell *shell;
EShellView *shell_view;
EShellWindow *shell_window;
ESourceRegistry *registry;
ECalClientSourceType source_type;
GtkWidget *config;
GtkWidget *dialog;
const gchar *icon_name;
shell_view = E_SHELL_VIEW (task_shell_view);
shell_window = e_shell_view_get_shell_window (shell_view);
shell = e_shell_window_get_shell (shell_window);
registry = e_shell_get_registry (shell);
source_type = E_CAL_CLIENT_SOURCE_TYPE_TASKS;
config = e_cal_source_config_new (registry, NULL, source_type);
dialog = e_source_config_dialog_new (E_SOURCE_CONFIG (config));
gtk_window_set_transient_for (
GTK_WINDOW (dialog), GTK_WINDOW (shell_window));
icon_name = gtk_action_get_icon_name (action);
gtk_window_set_icon_name (GTK_WINDOW (dialog), icon_name);
gtk_window_set_title (GTK_WINDOW (dialog), _("New Task List"));
gtk_widget_show (dialog);
}
示例13: e_cal_shell_view_memopad_actions_update
void
e_cal_shell_view_memopad_actions_update (ECalShellView *cal_shell_view)
{
ECalShellContent *cal_shell_content;
EShellWindow *shell_window;
EShellView *shell_view;
EMemoTable *memo_table;
GtkAction *action;
GSList *list, *iter;
gboolean editable = TRUE;
gboolean has_url = FALSE;
gboolean sensitive;
gint n_selected;
shell_view = E_SHELL_VIEW (cal_shell_view);
shell_window = e_shell_view_get_shell_window (shell_view);
cal_shell_content = cal_shell_view->priv->cal_shell_content;
memo_table = e_cal_shell_content_get_memo_table (cal_shell_content);
n_selected = e_table_selected_count (E_TABLE (memo_table));
list = e_memo_table_get_selected (memo_table);
for (iter = list; iter != NULL; iter = iter->next) {
ECalModelComponent *comp_data = iter->data;
icalproperty *prop;
gboolean read_only;
read_only = e_client_is_readonly (E_CLIENT (comp_data->client));
editable &= !read_only;
prop = icalcomponent_get_first_property (
comp_data->icalcomp, ICAL_URL_PROPERTY);
has_url |= (prop != NULL);
}
g_slist_free (list);
action = ACTION (CALENDAR_MEMOPAD_FORWARD);
sensitive = (n_selected == 1);
gtk_action_set_sensitive (action, sensitive);
action = ACTION (CALENDAR_MEMOPAD_OPEN);
sensitive = (n_selected == 1);
gtk_action_set_sensitive (action, sensitive);
action = ACTION (CALENDAR_MEMOPAD_OPEN_URL);
sensitive = (n_selected == 1) && has_url;
gtk_action_set_sensitive (action, sensitive);
action = ACTION (CALENDAR_MEMOPAD_PRINT);
sensitive = (n_selected == 1);
gtk_action_set_sensitive (action, sensitive);
action = ACTION (CALENDAR_MEMOPAD_SAVE_AS);
sensitive = (n_selected == 1);
gtk_action_set_sensitive (action, sensitive);
}
示例14: e_mapi_config_ui_extension_shell_view_toggled_cb
static void
e_mapi_config_ui_extension_shell_view_toggled_cb (EShellView *shell_view,
EMapiConfigUIExtension *ui_ext)
{
EShellViewClass *shell_view_class;
EShellWindow *shell_window;
GtkUIManager *ui_manager;
gpointer key = NULL, value = NULL;
const gchar *ui_def;
gboolean is_active, need_update;
g_return_if_fail (E_IS_SHELL_VIEW (shell_view));
g_return_if_fail (ui_ext != NULL);
shell_view_class = E_SHELL_VIEW_GET_CLASS (shell_view);
g_return_if_fail (shell_view_class != NULL);
shell_window = e_shell_view_get_shell_window (shell_view);
ui_manager = e_shell_window_get_ui_manager (shell_window);
need_update = ui_ext->current_ui_id != 0;
if (ui_ext->current_ui_id) {
gtk_ui_manager_remove_ui (ui_manager, ui_ext->current_ui_id);
ui_ext->current_ui_id = 0;
}
is_active = e_shell_view_is_active (shell_view);
if (!is_active) {
if (need_update)
gtk_ui_manager_ensure_update (ui_manager);
return;
}
if (!g_hash_table_lookup_extended (ui_ext->ui_definitions, shell_view_class->ui_manager_id, &key, &value)) {
gchar *ui_definition = NULL;
e_mapi_config_utils_init_ui (shell_view, shell_view_class->ui_manager_id, &ui_definition);
g_hash_table_insert (ui_ext->ui_definitions, g_strdup (shell_view_class->ui_manager_id), ui_definition);
}
ui_def = g_hash_table_lookup (ui_ext->ui_definitions, shell_view_class->ui_manager_id);
if (ui_def) {
GError *error = NULL;
ui_ext->current_ui_id = gtk_ui_manager_add_ui_from_string (ui_manager, ui_def, -1, &error);
need_update = TRUE;
if (error) {
g_warning ("%s: Failed to add ui definition: %s", G_STRFUNC, error->message);
g_error_free (error);
}
}
if (need_update)
gtk_ui_manager_ensure_update (ui_manager);
}
示例15: e_task_shell_view_open_task
void
e_task_shell_view_open_task (ETaskShellView *task_shell_view,
ECalModelComponent *comp_data)
{
EShell *shell;
EShellView *shell_view;
EShellWindow *shell_window;
ESourceRegistry *registry;
CompEditor *editor;
CompEditorFlags flags = 0;
ECalComponent *comp;
icalcomponent *clone;
icalproperty *prop;
const gchar *uid;
g_return_if_fail (E_IS_TASK_SHELL_VIEW (task_shell_view));
g_return_if_fail (E_IS_CAL_MODEL_COMPONENT (comp_data));
shell_view = E_SHELL_VIEW (task_shell_view);
shell_window = e_shell_view_get_shell_window (shell_view);
shell = e_shell_window_get_shell (shell_window);
registry = e_shell_get_registry (shell);
uid = icalcomponent_get_uid (comp_data->icalcomp);
editor = comp_editor_find_instance (uid);
if (editor != NULL)
goto exit;
comp = e_cal_component_new ();
clone = icalcomponent_new_clone (comp_data->icalcomp);
e_cal_component_set_icalcomponent (comp, clone);
prop = icalcomponent_get_first_property (
comp_data->icalcomp, ICAL_ATTENDEE_PROPERTY);
if (prop != NULL)
flags |= COMP_EDITOR_IS_ASSIGNED;
if (itip_organizer_is_user (registry, comp, comp_data->client))
flags |= COMP_EDITOR_USER_ORG;
if (!e_cal_component_has_attendees (comp))
flags |= COMP_EDITOR_USER_ORG;
editor = task_editor_new (comp_data->client, shell, flags);
comp_editor_edit_comp (editor, comp);
g_object_unref (comp);
if (flags & COMP_EDITOR_IS_ASSIGNED)
task_editor_show_assignment (TASK_EDITOR (editor));
exit:
gtk_window_present (GTK_WINDOW (editor));
}