static void e_minicard_label_realize (GnomeCanvasItem *item) { EMinicardLabel *e_minicard_label; GnomeCanvasGroup *group; e_minicard_label = E_MINICARD_LABEL (item); group = GNOME_CANVAS_GROUP ( item ); if (GNOME_CANVAS_ITEM_CLASS ( parent_class )->realize) (* GNOME_CANVAS_ITEM_CLASS ( parent_class )->realize) (item); e_canvas_item_request_reflow (item); e_minicard_label->rect = gnome_canvas_item_new ( group, gnome_canvas_rect_get_type (), "x1", (double) 0, "y1", (double) 0, "x2", (double) e_minicard_label->width - 1, "y2", (double) e_minicard_label->height - 1, "outline_color", NULL, NULL ); e_minicard_label->fieldname = gnome_canvas_item_new ( group, e_text_get_type (), "clip_width", (double) ( e_minicard_label->width / 2 - 4 ), "clip", TRUE, "use_ellipsis", TRUE, "fill_color", "black", "draw_background", FALSE, "im_context", E_CANVAS (item->canvas)->im_context, NULL ); e_canvas_item_move_absolute (e_minicard_label->fieldname, 2, 1); e_minicard_label->field = gnome_canvas_item_new ( group, e_text_get_type (), "clip_width", (double) ( ( e_minicard_label->width + 1 ) / 2 - 4 ), "clip", TRUE, "use_ellipsis", TRUE, "fill_color", "black", "editable", FALSE, /* e_minicard_label->editable, */ "draw_background", FALSE, "im_context", E_CANVAS (item->canvas)->im_context, NULL ); e_canvas_item_move_absolute (e_minicard_label->field, ( e_minicard_label->width / 2 + 2), 1); set_colors (e_minicard_label); e_canvas_item_request_reflow (item); }
static void create_rect_and_text (ETableClickToAdd *etcta) { GtkWidget *widget; GdkColor fg, bg; widget = GTK_WIDGET (GNOME_CANVAS_ITEM (etcta)->canvas); e_utils_get_theme_color_color (widget, "theme_selected_fg_color", E_UTILS_DEFAULT_THEME_SELECTED_FG_COLOR, &fg); e_utils_get_theme_color_color (widget, "theme_selected_bg_color", E_UTILS_DEFAULT_THEME_SELECTED_BG_COLOR, &bg); if (!etcta->rect) etcta->rect = gnome_canvas_item_new ( GNOME_CANVAS_GROUP (etcta), gnome_canvas_rect_get_type (), "x1", (gdouble) 0, "y1", (gdouble) 1, "x2", (gdouble) etcta->width, "y2", (gdouble) etcta->height, "fill_color_gdk", &bg, NULL); if (!etcta->text) etcta->text = gnome_canvas_item_new ( GNOME_CANVAS_GROUP (etcta), e_text_get_type (), "text", etcta->message ? etcta->message : "", "width", etcta->width - 4, "fill_color_gdk", &fg, NULL); }
static ETableGroupContainerChildNode * create_child_node (ETableGroupContainer *etgc, void *val) { ETableGroup *child; ETableGroupContainerChildNode *child_node; ETableGroup *etg = E_TABLE_GROUP(etgc); child_node = g_new (ETableGroupContainerChildNode, 1); child_node->rect = gnome_canvas_item_new (GNOME_CANVAS_GROUP (etgc), gnome_canvas_rect_get_type (), "fill_color", "grey70", "outline_color", "grey50", NULL); child_node->text = gnome_canvas_item_new (GNOME_CANVAS_GROUP (etgc), e_text_get_type (), "anchor", GTK_ANCHOR_SW, "fill_color", "black", "draw_background", FALSE, NULL); child = e_table_group_new (GNOME_CANVAS_GROUP (etgc), etg->full_header, etg->header, etg->model, etgc->sort_info, etgc->n + 1); gnome_canvas_item_set(GNOME_CANVAS_ITEM(child), "alternating_row_colors", etgc->alternating_row_colors, "horizontal_draw_grid", etgc->horizontal_draw_grid, "vertical_draw_grid", etgc->vertical_draw_grid, "drawfocus", etgc->draw_focus, "cursor_mode", etgc->cursor_mode, "selection_model", etgc->selection_model, "length_threshold", etgc->length_threshold, "uniform_row_height", etgc->uniform_row_height, "minimum_width", etgc->minimum_width - GROUP_INDENT, NULL); g_signal_connect (child, "cursor_change", G_CALLBACK (child_cursor_change), etgc); g_signal_connect (child, "cursor_activated", G_CALLBACK (child_cursor_activated), etgc); g_signal_connect (child, "double_click", G_CALLBACK (child_double_click), etgc); g_signal_connect (child, "right_click", G_CALLBACK (child_right_click), etgc); g_signal_connect (child, "click", G_CALLBACK (child_click), etgc); g_signal_connect (child, "key_press", G_CALLBACK (child_key_press), etgc); g_signal_connect (child, "start_drag", G_CALLBACK (child_start_drag), etgc); child_node->child = child; child_node->key = e_table_model_duplicate_value (etg->model, etgc->ecol->col_idx, val); child_node->string = e_table_model_value_to_string (etg->model, etgc->ecol->col_idx, val); child_node->count = 0; return child_node; }
static void set_empty(EReflow *reflow) { if (reflow->count == 0) { if (reflow->empty_text) { if (reflow->empty_message) { gnome_canvas_item_set(reflow->empty_text, "width", reflow->minimum_width, "text", reflow->empty_message, NULL); e_canvas_item_move_absolute(reflow->empty_text, reflow->minimum_width / 2, 0); } else { gtk_object_destroy(GTK_OBJECT(reflow->empty_text)); reflow->empty_text = NULL; } } else { if (reflow->empty_message) { reflow->empty_text = gnome_canvas_item_new(GNOME_CANVAS_GROUP(reflow), e_text_get_type(), "anchor", GTK_ANCHOR_N, "width", reflow->minimum_width, "clip", TRUE, "use_ellipsis", TRUE, "justification", GTK_JUSTIFY_CENTER, "text", reflow->empty_message, "draw_background", FALSE, NULL); e_canvas_item_move_absolute(reflow->empty_text, reflow->minimum_width / 2, 0); } } } else { if (reflow->empty_text) { gtk_object_destroy(GTK_OBJECT(reflow->empty_text)); reflow->empty_text = NULL; } } }