1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
|
/*
ETextModelTest
*/
#include <gnome.h>
#include <gal/widgets/e-canvas.h>
#include "e-text-model.h"
#include "e-text-model-uri.h"
#include "e-text.h"
static void
describe_model (ETextModel *model)
{
gint i, N;
g_return_if_fail (E_IS_TEXT_MODEL (model));
N = e_text_model_object_count (model);
g_print ("text: %s\n", e_text_model_get_text (model));
if (N > 0) {
gchar *s = e_text_model_strdup_expanded_text (model);
g_print ("expd: %s\n", s);
g_free (s);
}
g_print ("objs: %d\n", N);
for (i=0; i<N; ++i)
g_print ("obj%d: %s\n", i, e_text_model_get_nth_object (model, i));
}
int
main (int argc, gchar **argv)
{
GtkWidget *win, *canvas;
GnomeCanvasItem *item;
ETextModel *model;
gnome_init ("ETextModelTest", "0.0", argc, argv);
model = e_text_model_uri_new ();
e_text_model_set_text (model, "My favorite website is http://www.ximian.com. My next favorite is www.assbarn.com.");
describe_model (model);
win = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_widget_push_visual (gdk_rgb_get_visual ());
gtk_widget_push_colormap (gdk_rgb_get_cmap ());
canvas = e_canvas_new ();
gtk_widget_pop_visual ();
gtk_widget_pop_colormap ();
item = gnome_canvas_item_new (gnome_canvas_root (GNOME_CANVAS (canvas)),
e_text_get_type (),
"model", model,
"font", "-adobe-helvetica-medium-r-normal--12-120-75-75-p-67-iso8859-1",
"anchor", GTK_ANCHOR_NORTH_WEST,
"line_wrap", TRUE,
"width", 300.0,
"editable", TRUE,
NULL);
gtk_container_add (GTK_CONTAINER (win), canvas);
gtk_widget_show_all (win);
gtk_main ();
return 0;
}
|