From: <enl...@li...> - 2000-10-27 00:15:12
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Modified Files: geist_document_xml.c geist_imlib.c geist_style.c geist_style.h geist_text.c geist_text.h test.xml text_test.xml Log Message: Fri Oct 27 01:15:13 2000 Tom Gilbert <gil...@li...> * Changed style format slightly to make styles independant of the colour of the text having a style applied (before that too was defined in the style). Now text objects have their r,g,b,a values back, and these are applied to any style bit with r=g=b=a=0. This also means you can have a style defining that the main coloured layer is behind another layer, for glow effects etc. A style can exist without a r=g=b=a=0 bit, but it's rather silly, as the actual text colour would never be applied ;-) =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_document_xml.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -3 -r1.17 -r1.18 --- geist_document_xml.c 2000/10/19 23:21:52 1.17 +++ geist_document_xml.c 2000/10/27 00:15:11 1.18 @@ -549,11 +549,16 @@ int wordwrap = 0; int justification = 0; geist_style *style = NULL; + int r,g,b,a; D_ENTER(3); fontsize = geist_xml_read_int(cur, "Fontsize", 12); wordwrap = geist_xml_read_int(cur, "Wordwrap", 1); + a = geist_xml_read_int(cur, "A", 255); + r = geist_xml_read_int(cur, "R", 255); + g = geist_xml_read_int(cur, "G", 255); + b = geist_xml_read_int(cur, "B", 255); cur = cur->children; while (cur != NULL) @@ -581,6 +586,10 @@ geist_text_new_with_text(0, 0, fontname, fontsize, text, justification, wordwrap, 0, 0, 0, 0); GEIST_TEXT(ret)->style = style; + GEIST_TEXT(ret)->r = r; + GEIST_TEXT(ret)->g = g; + GEIST_TEXT(ret)->b = b; + GEIST_TEXT(ret)->a = a; geist_text_update_image(GEIST_TEXT(ret), FALSE); } @@ -840,6 +849,10 @@ xmlNewTextChild(parent, ns, "Fontname", txt->fontname); geist_xml_write_int(parent, "Fontsize", txt->fontsize); geist_xml_write_int(parent, "Wordwrap", txt->wordwrap); + geist_xml_write_int(parent, "R", txt->r); + geist_xml_write_int(parent, "G", txt->g); + geist_xml_write_int(parent, "B", txt->b); + geist_xml_write_int(parent, "A", txt->a); xmlNewTextChild(parent, ns, "Text", txt->text); xmlNewTextChild(parent, ns, "Justification", geist_text_get_justification_string(txt->justification)); =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_imlib.c,v retrieving revision 1.21 retrieving revision 1.22 diff -u -3 -r1.21 -r1.22 --- geist_imlib.c 2000/10/19 23:21:52 1.21 +++ geist_imlib.c 2000/10/27 00:15:11 1.22 @@ -316,7 +316,7 @@ if (s) { int min_x = 0, min_y = 0; - geist_style_bit *b; + geist_style_bit *bb; geist_list *l; /* here we shift the draw to accomodate bits with negative offsets, @@ -324,13 +324,13 @@ l = s->bits; while (l) { - b = (geist_style_bit *) l->data; - if (b) + bb = (geist_style_bit *) l->data; + if (bb) { - if (b->x_offset < min_x) - min_x = b->x_offset; - if (b->y_offset < min_y) - min_y = b->y_offset; + if (bb->x_offset < min_x) + min_x = bb->x_offset; + if (bb->y_offset < min_y) + min_y = bb->y_offset; } l = l->next; } @@ -341,11 +341,14 @@ l = s->bits; while (l) { - b = (geist_style_bit *) l->data; - if (b) + bb = (geist_style_bit *) l->data; + if (bb) { - imlib_context_set_color(b->r, b->g, b->b, b->a); - imlib_text_draw(x + b->x_offset, y + b->y_offset, text); + if((bb->r + bb->g + bb->b + bb->a) == 0) + imlib_context_set_color(r,g,b,a); + else + imlib_context_set_color(bb->r, bb->g, bb->b, bb->a); + imlib_text_draw(x +bb->x_offset, y + bb->y_offset, text); } l = l->next; } =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_style.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- geist_style.c 2000/10/25 22:08:10 1.4 +++ geist_style.c 2000/10/27 00:15:11 1.5 @@ -38,7 +38,7 @@ memset(s, 0, sizeof(geist_style)); if (name) s->name = estrdup(name); - + D_RETURN(3, s); } @@ -58,7 +58,7 @@ l = s->bits; while (l) { - geist_style_bit_free((geist_style_bit *)l->data); + geist_style_bit_free((geist_style_bit *) l->data); l = l->next; } geist_list_free(s->bits); @@ -68,9 +68,11 @@ D_RETURN_(3); } -geist_style_bit *geist_style_bit_new(int x_offset, int y_offset, int r, int g, int b, int a) +geist_style_bit * +geist_style_bit_new(int x_offset, int y_offset, int r, int g, int b, int a) { geist_style_bit *sb; + D_ENTER(3); sb = emalloc(sizeof(geist_style_bit)); @@ -82,15 +84,16 @@ sb->g = g; sb->b = b; sb->a = a; - + D_RETURN(3, sb); } -void geist_style_bit_free(geist_style_bit *s) +void +geist_style_bit_free(geist_style_bit * s) { D_ENTER(3); - if(s) + if (s) { efree(s); } @@ -98,18 +101,21 @@ D_RETURN_(3); } -geist_style *geist_style_dup(geist_style *s) +geist_style * +geist_style_dup(geist_style * s) { geist_style *ret; + D_ENTER(3); ret = geist_style_new(s->name); ret->bits = geist_list_dup_special(s->bits, geist_dup_style_bit); - + D_RETURN(3, ret); } -void geist_dup_style_bit(void **dest, void *data) +void +geist_dup_style_bit(void **dest, void *data) { D_ENTER(3); @@ -117,4 +123,118 @@ memcpy(*dest, data, sizeof(geist_style_bit)); D_RETURN_(3); +} + +void +geist_style_save_ascii(geist_style * style, char *file) +{ + FILE *stylefile; + geist_list *l; + geist_style_bit *b; + D_ENTER(3); + if(!style || !style->bits) + D_RETURN_(3); + + stylefile = fopen(file, "w"); + if (stylefile) + { + fprintf(stylefile, "#Style\n"); + fprintf(stylefile, "#NAME %s\n", style->name); + l = style->bits; + while(l) + { + b = (geist_style_bit *)l->data; + fprintf(stylefile, "%d %d %d %d %d %d\n", b->r, b->g, b->b, b->a, b->x_offset, b->y_offset); + l = l->next; + } + } + fclose(stylefile); + + D_RETURN_(3); +} + +geist_style * +geist_style_new_from_acsii(char *file) +{ + FILE *stylefile; + char current[4096]; + char *s; + geist_style *ret= NULL; + + D_ENTER(3); + + stylefile = fopen(file, "r"); + if (stylefile) + { + int r=0, g=0, b=0, a=0, x_off=0, y_off=0; + + ret = geist_style_new(NULL); + /* skip initial idenifier line */ + fgets(current, sizeof(current), stylefile); + while (fgets(current, sizeof(current), stylefile)) + { + if (!strncmp(current, "#NAME", 5)) + { + int l; + + l = strlen(current) - 1; + if (current[l] == '\n') + current[l] = '\0'; + if (l > 6) + ret->name = estrdup(current + 6); + continue; + } + else + { + /* support EFM style bits */ + s = strtok(current, " "); + if (!strcmp(s, "ol")) + { + r = g = b = 0; + s = strtok(NULL, " "); + x_off = atoi(s); + s = strtok(NULL, " "); + y_off = atoi(s); + } + else if (!strcmp(s, "sh")) + { + r = g = b = 0; + s = strtok(NULL, " "); + x_off = atoi(s); + s = strtok(NULL, " "); + y_off = atoi(s); + s = strtok(NULL, " "); + a = atoi(s); + } + else if (!strcmp(s, "fg")) + { + r = g = b = a = 0; + s = strtok(NULL, " "); + x_off = atoi(s); + s = strtok(NULL, " "); + y_off = atoi(s); + } + else + { + /* our own format */ + s = strtok(NULL, " "); + r = atoi(s); + s = strtok(NULL, " "); + g = atoi(s); + s = strtok(NULL, " "); + b = atoi(s); + s = strtok(NULL, " "); + a = atoi(s); + s = strtok(NULL, " "); + x_off = atoi(s); + s = strtok(NULL, " "); + y_off = atoi(s); + } + } + ret->bits = geist_list_add_end(ret->bits, geist_style_bit_new(x_off, y_off, r,g,b,a)); + } + fclose(stylefile); + } + + D_RETURN(3, ret); } =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_style.h,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- geist_style.h 2000/10/25 22:08:10 1.4 +++ geist_style.h 2000/10/27 00:15:11 1.5 @@ -53,5 +53,7 @@ void geist_style_free(geist_style *s); geist_style *geist_style_dup(geist_style *s); void geist_dup_style_bit(void **dest, void *data); +geist_style *geist_style_new_from_acsii(char *file); +void geist_style_save_ascii(geist_style * style, char *file); #endif =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_text.c,v retrieving revision 1.43 retrieving revision 1.44 diff -u -3 -r1.43 -r1.44 --- geist_text.c 2000/10/25 22:08:10 1.43 +++ geist_text.c 2000/10/27 00:15:11 1.44 @@ -139,10 +139,14 @@ D_RETURN(5, NULL); } + txt->r = r; + txt->g = g; + txt->b = b; + txt->a = a; txt->style = geist_style_new("Default"); txt->style->bits = geist_list_add_end(txt->style->bits, - geist_style_bit_new(0, 0, r, g, b, a)); + geist_style_bit_new(0, 0, 0, 0, 0, 0)); txt->justification = justification; txt->wordwrap = wordwrap; @@ -372,17 +376,17 @@ case JUST_LEFT: x = 0; geist_imlib_text_draw(im, txt->fn, txt->style, x, y, p, - IMLIB_TEXT_TO_RIGHT, 0, 0, 0, 0); + IMLIB_TEXT_TO_RIGHT, txt->r, txt->g, txt->b, txt->a); break; case JUST_CENTER: x = (w - ww) / 2; geist_imlib_text_draw(im, txt->fn, txt->style, x, y, p, - IMLIB_TEXT_TO_RIGHT, 0, 0, 0, 0); + IMLIB_TEXT_TO_RIGHT, txt->r, txt->g, txt->b, txt->a); break; case JUST_RIGHT: x = w - ww; geist_imlib_text_draw(im, txt->fn, txt->style, x, y, p, - IMLIB_TEXT_TO_RIGHT, 0, 0, 0, 0); + IMLIB_TEXT_TO_RIGHT, txt->r, txt->g, txt->b, txt->a); break; case JUST_BLOCK: @@ -417,8 +421,7 @@ int wordw; geist_imlib_text_draw(im, txt->fn, txt->style, x + offset, - y, pp, IMLIB_TEXT_TO_RIGHT, 0, 0, 0, - 0); + y, pp, IMLIB_TEXT_TO_RIGHT, txt->r, txt->g, txt->b, txt->a); geist_imlib_get_text_size(txt->fn, pp, txt->style, &wordw, NULL, IMLIB_TEXT_TO_RIGHT); offset += (wordw + space_width + word_spacing); @@ -610,6 +613,10 @@ GEIST_TEXT(ret)->justification = txt->justification; GEIST_TEXT(ret)->wordwrap = txt->wordwrap; GEIST_TEXT(ret)->style = geist_style_dup(txt->style); + GEIST_TEXT(ret)->r = txt->r; + GEIST_TEXT(ret)->g = txt->g; + GEIST_TEXT(ret)->b = txt->b; + GEIST_TEXT(ret)->a = txt->a; ret->name = g_strjoin(" ", "Copy of", obj->name ? obj->name : "Untitled object", NULL); @@ -640,7 +647,6 @@ } - void refresh_size_cb(GtkWidget * widget, gpointer * obj) { @@ -727,9 +733,7 @@ refresh_r_cb(GtkWidget * widget, gpointer * obj) { - ((geist_style_bit - *) (geist_list_last(GEIST_TEXT(obj)->style->bits)->data))->r = - gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(widget)); + GEIST_TEXT(obj)->r = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(widget)); geist_text_update_image(GEIST_TEXT(obj), FALSE); geist_document_render_updates(GEIST_OBJECT_DOC(obj), 1); } @@ -738,9 +742,7 @@ refresh_g_cb(GtkWidget * widget, gpointer * obj) { - ((geist_style_bit - *) (geist_list_last(GEIST_TEXT(obj)->style->bits)->data))->g = - gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(widget)); + GEIST_TEXT(obj)->g = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(widget)); geist_text_update_image(GEIST_TEXT(obj), FALSE); geist_document_render_updates(GEIST_OBJECT_DOC(obj), 1); } @@ -749,9 +751,7 @@ refresh_b_cb(GtkWidget * widget, gpointer * obj) { - ((geist_style_bit - *) (geist_list_last(GEIST_TEXT(obj)->style->bits)->data))->b = - gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(widget)); + GEIST_TEXT(obj)->b = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(widget)); geist_text_update_image(GEIST_TEXT(obj), FALSE); geist_document_render_updates(GEIST_OBJECT_DOC(obj), 1); } @@ -760,9 +760,7 @@ refresh_a_cb(GtkWidget * widget, gpointer * obj) { - ((geist_style_bit - *) (geist_list_last(GEIST_TEXT(obj)->style->bits)->data))->a = - gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(widget)); + GEIST_TEXT(obj)->a = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(widget)); geist_text_update_image(GEIST_TEXT(obj), FALSE); geist_document_render_updates(GEIST_OBJECT_DOC(obj), 1); } @@ -923,21 +921,13 @@ GEIST_TEXT(obj)->wordwrap); gtk_spin_button_set_value(GTK_SPIN_BUTTON(ok_data->cr), - ((geist_style_bit - *) (geist_list_last(GEIST_TEXT(obj)-> - style->bits)->data))->r); + GEIST_TEXT(obj)->r); gtk_spin_button_set_value(GTK_SPIN_BUTTON(ok_data->cg), - ((geist_style_bit - *) (geist_list_last(GEIST_TEXT(obj)-> - style->bits)->data))->g); + GEIST_TEXT(obj)->g); gtk_spin_button_set_value(GTK_SPIN_BUTTON(ok_data->cb), - ((geist_style_bit - *) (geist_list_last(GEIST_TEXT(obj)-> - style->bits)->data))->b); + GEIST_TEXT(obj)->b); gtk_spin_button_set_value(GTK_SPIN_BUTTON(ok_data->ca), - ((geist_style_bit - *) (geist_list_last(GEIST_TEXT(obj)-> - style->bits)->data))->a); + GEIST_TEXT(obj)->a); gtk_entry_set_text(GTK_ENTRY(GTK_COMBO(ok_data->font)->entry), GEIST_TEXT(obj)->fontname); @@ -1171,7 +1161,6 @@ render_style(working_copy); D_RETURN_(3); - } =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_text.h,v retrieving revision 1.21 retrieving revision 1.22 diff -u -3 -r1.21 -r1.22 --- geist_text.h 2000/10/25 22:08:10 1.21 +++ geist_text.h 2000/10/27 00:15:11 1.22 @@ -57,6 +57,7 @@ int wordwrap; int justification; geist_style *style; + int r,g,b,a; }; geist_object *geist_text_new(void); =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/test.xml,v retrieving revision 1.8 retrieving revision 1.9 diff -u -3 -r1.8 -r1.9 --- test.xml 2000/10/19 23:21:52 1.8 +++ test.xml 2000/10/27 00:15:11 1.9 @@ -237,7 +237,7 @@ <geist:Alignment>Center Both</geist:Alignment> <geist:Filename>/usr/local/share/geist/images/mush.png</geist:Filename> </geist:Object> -<geist:Object X="225" Y="9" W="252" H="34" Alias="1" Visible="16" Fontsize="25" Wordwrap="1"> +<geist:Object X="225" Y="9" W="252" H="34" Alias="1" Visible="16" Fontsize="25" Wordwrap="1" R="255" G="100" B="100" A="255"> <geist:Type>Text</geist:Type> <geist:Name>New text</geist:Name> <geist:Sizemode>None</geist:Sizemode> @@ -257,11 +257,11 @@ <geist:Bit X_Offset="1" Y_Offset="-1" R="0" G="0" B="0" A="64"/> <geist:Bit X_Offset="-1" Y_Offset="-1" R="0" G="0" B="0" A="64"/> <geist:Bit X_Offset="-1" Y_Offset="1" R="0" G="0" B="0" A="64"/> -<geist:Bit X_Offset="0" Y_Offset="0" R="255" G="100" B="100" A="255"/> +<geist:Bit X_Offset="0" Y_Offset="0" R="0" G="0" B="0" A="0"/> </geist:Bits> </geist:Style> </geist:Object> -<geist:Object X="5" Y="412" W="237" H="15" Alias="1" Visible="16" Fontsize="12" Wordwrap="1"> +<geist:Object X="5" Y="412" W="237" H="15" Alias="1" Visible="16" Fontsize="12" Wordwrap="1" R="40" G="50" B="255" A="255"> <geist:Type>Text</geist:Type> <geist:Name>New text</geist:Name> <geist:Sizemode>None</geist:Sizemode> @@ -272,7 +272,7 @@ <geist:Style> <geist:Name>Default</geist:Name> <geist:Bits> -<geist:Bit X_Offset="0" Y_Offset="0" R="40" G="50" B="255" A="255"/> +<geist:Bit X_Offset="0" Y_Offset="0" R="0" G="0" B="0" A="0"/> </geist:Bits> </geist:Style> </geist:Object> =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/text_test.xml,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- text_test.xml 2000/10/19 23:21:52 1.2 +++ text_test.xml 2000/10/27 00:15:11 1.3 @@ -7,7 +7,7 @@ <geist:Layer Alpha="0" X_Offset="0" Y_Offset="0" Visible="1"> <geist:Name>New layer</geist:Name> <geist:Objects> -<geist:Object X="12" Y="13" W="464" H="432" Alias="1" Visible="16" Fontsize="20" Wordwrap="1"> +<geist:Object X="12" Y="13" W="464" H="432" Alias="1" Visible="16" Fontsize="20" Wordwrap="1" R="40" G="50" B="255" A="255"> <geist:Type>Text</geist:Type> <geist:Name>New text</geist:Name> <geist:Sizemode>None</geist:Sizemode> @@ -24,7 +24,7 @@ <geist:Style> <geist:Name>Default</geist:Name> <geist:Bits> -<geist:Bit X_Offset="0" Y_Offset="0" R="40" G="50" B="255" A="255"/> +<geist:Bit X_Offset="0" Y_Offset="0" R="0" G="0" B="0" A="0"/> </geist:Bits> </geist:Style> </geist:Object> |
From: <enl...@li...> - 2000-10-27 00:15:41
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Modified Files: ChangeLog Log Message: Fri Oct 27 01:15:13 2000 Tom Gilbert <gil...@li...> * Changed style format slightly to make styles independant of the colour of the text having a style applied (before that too was defined in the style). Now text objects have their r,g,b,a values back, and these are applied to any style bit with r=g=b=a=0. This also means you can have a style defining that the main coloured layer is behind another layer, for glow effects etc. A style can exist without a r=g=b=a=0 bit, but it's rather silly, as the actual text colour would never be applied ;-) =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/ChangeLog,v retrieving revision 1.58 retrieving revision 1.59 diff -u -3 -r1.58 -r1.59 --- ChangeLog 2000/10/25 22:08:09 1.58 +++ ChangeLog 2000/10/27 00:15:11 1.59 @@ -1,3 +1,14 @@ +Fri Oct 27 01:15:13 2000 Tom Gilbert <gil...@li...> + + * Changed style format slightly to make styles independant of the + colour of the text having a style applied (before that too was + defined in the style). Now text objects have their r,g,b,a values + back, and these are applied to any style bit with r=g=b=a=0. This + also means you can have a style defining that the main coloured + layer is behind another layer, for glow effects etc. A style can + exist without a r=g=b=a=0 bit, but it's rather silly, as the + actual text colour would never be applied ;-) + Wed Oct 26 00:05:49 2000 Till Adam <ti...@ad...> *font style editor. it renders to the document in realtime, but |
From: <enl...@li...> - 2000-10-27 00:52:39
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Modified Files: geist_document_gtk.c geist_style.c geist_style.h geist_text.c Log Message: Fri Oct 27 01:54:49 2000 Tom Gilbert <gil...@li...> * Style loading/saving to an ascii format now works. We have our own, but guess what? We can load EFM font styles (there are a few of them around) as well :-) =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_document_gtk.c,v retrieving revision 1.13 retrieving revision 1.14 diff -u -3 -r1.13 -r1.14 --- geist_document_gtk.c 2000/10/21 16:19:12 1.13 +++ geist_document_gtk.c 2000/10/27 00:52:38 1.14 @@ -68,7 +68,7 @@ D_ENTER(3); - fs = gtk_file_selection_new("Load document...."); + fs = gtk_file_selection_new("Load document..."); gtk_signal_connect(GTK_OBJECT(fs), "destroy", (GtkSignalFunc) gtk_widget_destroy, GTK_OBJECT(fs)); @@ -124,7 +124,7 @@ D_ENTER(3); - fs = gtk_file_selection_new("Save document as...."); + fs = gtk_file_selection_new("Save document as..."); gtk_signal_connect(GTK_OBJECT(fs), "destroy", (GtkSignalFunc) gtk_widget_destroy, GTK_OBJECT(fs)); =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_style.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -3 -r1.5 -r1.6 --- geist_style.c 2000/10/27 00:15:11 1.5 +++ geist_style.c 2000/10/27 00:52:38 1.6 @@ -131,8 +131,9 @@ FILE *stylefile; geist_list *l; geist_style_bit *b; + D_ENTER(3); - if(!style || !style->bits) + if (!style || !style->bits) D_RETURN_(3); stylefile = fopen(file, "w"); @@ -141,10 +142,11 @@ fprintf(stylefile, "#Style\n"); fprintf(stylefile, "#NAME %s\n", style->name); l = style->bits; - while(l) + while (l) { - b = (geist_style_bit *)l->data; - fprintf(stylefile, "%d %d %d %d %d %d\n", b->r, b->g, b->b, b->a, b->x_offset, b->y_offset); + b = (geist_style_bit *) l->data; + fprintf(stylefile, "%d %d %d %d %d %d\n", b->r, b->g, b->b, b->a, + b->x_offset, b->y_offset); l = l->next; } } @@ -154,19 +156,19 @@ } geist_style * -geist_style_new_from_acsii(char *file) +geist_style_new_from_ascii(char *file) { FILE *stylefile; char current[4096]; char *s; - geist_style *ret= NULL; + geist_style *ret = NULL; D_ENTER(3); stylefile = fopen(file, "r"); if (stylefile) { - int r=0, g=0, b=0, a=0, x_off=0, y_off=0; + int r = 0, g = 0, b = 0, a = 0, x_off = 0, y_off = 0; ret = geist_style_new(NULL); /* skip initial idenifier line */ @@ -182,42 +184,45 @@ current[l] = '\0'; if (l > 6) ret->name = estrdup(current + 6); + D(2, ("got style name %s\n", ret->name)); continue; } else { /* support EFM style bits */ s = strtok(current, " "); - if (!strcmp(s, "ol")) + if (strlen(s) == 2) { - r = g = b = 0; - s = strtok(NULL, " "); - x_off = atoi(s); - s = strtok(NULL, " "); - y_off = atoi(s); + if (!strcmp(s, "ol")) + { + r = g = b = 0; + s = strtok(NULL, " "); + x_off = atoi(s); + s = strtok(NULL, " "); + y_off = atoi(s); + } + else if (!strcmp(s, "sh")) + { + r = g = b = 0; + s = strtok(NULL, " "); + x_off = atoi(s); + s = strtok(NULL, " "); + y_off = atoi(s); + s = strtok(NULL, " "); + a = atoi(s); + } + else if (!strcmp(s, "fg")) + { + r = g = b = a = 0; + s = strtok(NULL, " "); + x_off = atoi(s); + s = strtok(NULL, " "); + y_off = atoi(s); + } } - else if (!strcmp(s, "sh")) - { - r = g = b = 0; - s = strtok(NULL, " "); - x_off = atoi(s); - s = strtok(NULL, " "); - y_off = atoi(s); - s = strtok(NULL, " "); - a = atoi(s); - } - else if (!strcmp(s, "fg")) - { - r = g = b = a = 0; - s = strtok(NULL, " "); - x_off = atoi(s); - s = strtok(NULL, " "); - y_off = atoi(s); - } else { /* our own format */ - s = strtok(NULL, " "); r = atoi(s); s = strtok(NULL, " "); g = atoi(s); @@ -231,9 +236,11 @@ y_off = atoi(s); } } - ret->bits = geist_list_add_end(ret->bits, geist_style_bit_new(x_off, y_off, r,g,b,a)); + ret->bits = + geist_list_add_end(ret->bits, + geist_style_bit_new(x_off, y_off, r, g, b, a)); } - fclose(stylefile); + fclose(stylefile); } D_RETURN(3, ret); =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_style.h,v retrieving revision 1.5 retrieving revision 1.6 diff -u -3 -r1.5 -r1.6 --- geist_style.h 2000/10/27 00:15:11 1.5 +++ geist_style.h 2000/10/27 00:52:38 1.6 @@ -55,5 +55,6 @@ void geist_dup_style_bit(void **dest, void *data); geist_style *geist_style_new_from_acsii(char *file); void geist_style_save_ascii(geist_style * style, char *file); +geist_style *geist_style_new_from_ascii(char *file); #endif =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_text.c,v retrieving revision 1.44 retrieving revision 1.45 diff -u -3 -r1.44 -r1.45 --- geist_text.c 2000/10/27 00:15:11 1.44 +++ geist_text.c 2000/10/27 00:52:38 1.45 @@ -35,9 +35,13 @@ int cur = 0; /*fontstyler cb*/ -void select_row_cb(GtkWidget * clist, gint rw, gint col, +static void select_row_cb(GtkWidget * clist, gint rw, gint col, GdkEventButton * event, gpointer data); -void spinner_changed_cb(gpointer data); +static void spinner_changed_cb(gpointer data); +static void save_style_cb(GtkWidget *widget); +static void load_style_cb(GtkWidget *widget); +static gboolean save_style_ok_cb(GtkWidget * widget, gpointer * data); +static gboolean load_style_ok_cb(GtkWidget * widget, gpointer * data); /* fontstyler widgets */ @@ -1089,7 +1093,7 @@ } -void +static void select_row_cb(GtkWidget * clist, gint rw, gint col, GdkEventButton * event, gpointer data) { @@ -1140,7 +1144,7 @@ } -void +static void spinner_changed_cb(gpointer data) { geist_style_bit *bit; @@ -1322,16 +1326,16 @@ b = gtk_button_new_with_label("Load Style"); gtk_box_pack_start(GTK_BOX(box2), b, FALSE, FALSE, 1); + gtk_signal_connect(GTK_OBJECT(b), "clicked", + GTK_SIGNAL_FUNC(load_style_cb), NULL); gtk_widget_show(b); b = gtk_button_new_with_label("Save Style"); gtk_box_pack_start(GTK_BOX(box2), b, FALSE, FALSE, 1); + gtk_signal_connect(GTK_OBJECT(b), "clicked", + GTK_SIGNAL_FUNC(save_style_cb), NULL); gtk_widget_show(b); - b = gtk_button_new_with_label("Save Style As"); - gtk_box_pack_start(GTK_BOX(box2), b, FALSE, FALSE, 1); - gtk_widget_show(b); - frame = gtk_frame_new("Edit Options"); gtk_container_set_border_width(GTK_CONTAINER(frame), 1); gtk_widget_set_usize(GTK_WIDGET(frame), 105, 150); @@ -1541,3 +1545,113 @@ D_RETURN_(3); } + +static void +save_style_cb(GtkWidget *widget) +{ + GtkWidget *fs; + geist_style *style; + char *name; + + D_ENTER(3); + + style=working_copy; + fs = gtk_file_selection_new("Save style as..."); + gtk_signal_connect(GTK_OBJECT(fs), "destroy", + (GtkSignalFunc) gtk_widget_destroy, GTK_OBJECT(fs)); + + gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(fs)->ok_button), + "clicked", (GtkSignalFunc) save_style_ok_cb, fs); + + gtk_signal_connect_object(GTK_OBJECT + (GTK_FILE_SELECTION(fs)->cancel_button), + "clicked", (GtkSignalFunc) gtk_widget_destroy, + GTK_OBJECT(fs)); + + if(style->name) + name = g_strdup_printf("%s.style", style->name); + else + name = estrdup("current.style"); + gtk_file_selection_set_filename(GTK_FILE_SELECTION(fs), name); + gtk_object_set_data(GTK_OBJECT(fs), "style", style); + gtk_widget_show(fs); + + D_RETURN_(3); +} + +static gboolean save_style_ok_cb(GtkWidget * widget, gpointer * data) +{ + char *filename; + geist_style *style; + + D_ENTER(3); + + filename = gtk_file_selection_get_filename(GTK_FILE_SELECTION(data)); + if (!filename) + D_RETURN(3, TRUE); + + style = gtk_object_get_data(GTK_OBJECT(data), "style"); + if (style) + { + geist_style_save_ascii(style, filename); + } + gtk_widget_destroy(GTK_WIDGET(data)); + + D_RETURN(3, TRUE); +} + + +static void load_style_cb(GtkWidget *widget) +{ + GtkWidget *fs; + + D_ENTER(3); + + fs = gtk_file_selection_new("Load style..."); + gtk_signal_connect(GTK_OBJECT(fs), "destroy", + (GtkSignalFunc) gtk_widget_destroy, GTK_OBJECT(fs)); + + gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(fs)->ok_button), + "clicked", (GtkSignalFunc) load_style_ok_cb, fs); + + gtk_signal_connect_object(GTK_OBJECT + (GTK_FILE_SELECTION(fs)->cancel_button), + "clicked", (GtkSignalFunc) gtk_widget_destroy, + GTK_OBJECT(fs)); + + gtk_file_selection_set_filename(GTK_FILE_SELECTION(fs), "current.style"); + gtk_widget_show(fs); + + D_RETURN_(3); +} + +static gboolean load_style_ok_cb(GtkWidget * widget, gpointer * data) +{ + char *filename; + geist_style *style; + + D_ENTER(3); + + filename = gtk_file_selection_get_filename(GTK_FILE_SELECTION(data)); + if (!filename) + D_RETURN(3, TRUE); + + style = geist_style_new_from_ascii(filename); + if (!style) + { + weprintf("failed to load style file %s\n", filename); + gtk_widget_destroy(GTK_WIDGET(data)); + D_RETURN(3, TRUE); + } + else + { + D(2, ("style file %s loaded okay\n", filename)); + } + working_copy = style; + load_style(working_copy); + render_style(working_copy); + gtk_widget_destroy(GTK_WIDGET(data)); + + D_RETURN(3, TRUE); +} + |
From: <enl...@li...> - 2000-10-27 00:53:09
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Modified Files: ChangeLog Log Message: Fri Oct 27 01:54:49 2000 Tom Gilbert <gil...@li...> * Style loading/saving to an ascii format now works. We have our own, but guess what? We can load EFM font styles (there are a few of them around) as well :-) =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/ChangeLog,v retrieving revision 1.59 retrieving revision 1.60 diff -u -3 -r1.59 -r1.60 --- ChangeLog 2000/10/27 00:15:11 1.59 +++ ChangeLog 2000/10/27 00:52:38 1.60 @@ -1,3 +1,9 @@ +Fri Oct 27 01:54:49 2000 Tom Gilbert <gil...@li...> + + * Style loading/saving to an ascii format now works. We have our + own, but guess what? We can load EFM font styles (there are a few + of them around) as well :-) + Fri Oct 27 01:15:13 2000 Tom Gilbert <gil...@li...> * Changed style format slightly to make styles independant of the |
From: <enl...@li...> - 2000-10-27 01:15:24
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Modified Files: Makefile.am main.c Log Message: new snapshot =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/Makefile.am,v retrieving revision 1.16 retrieving revision 1.17 diff -u -3 -r1.16 -r1.17 --- Makefile.am 2000/10/17 12:59:17 1.16 +++ Makefile.am 2000/10/27 01:15:23 1.17 @@ -8,6 +8,11 @@ bin_PROGRAMS = geist +testdocs_DATA = test.xml text_test.xml +testdocsdir=$(prefix)/share/geist + +EXTRA_DIST = $(testdocs_DATA) + geist_SOURCES = \ main.c \ utils.c utils.h \ =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/main.c,v retrieving revision 1.86 retrieving revision 1.87 diff -u -3 -r1.86 -r1.87 --- main.c 2000/09/24 15:51:55 1.86 +++ main.c 2000/10/27 01:15:23 1.87 @@ -60,9 +60,10 @@ if (argc > 1) doc = geist_document_load_xml(argv[1], &err); else - doc = geist_document_load_xml("test.xml", &err); + doc = geist_document_load_xml(PREFIX "/share/geist/test.xml", &err); if (!doc) - weprintf("failed to load xml file\n"); + weprintf("failed to load demo xml file %s, did you make install?", + PREFIX "/share/test.xml"); else { doc_win = geist_gtk_new_document_window(doc); |
From: <enl...@li...> - 2000-10-27 01:16:04
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Modified Files: configure.in Added Files: geist.spec.in Removed Files: geist.spec Log Message: new snapshot =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/configure.in,v retrieving revision 1.17 retrieving revision 1.18 diff -u -3 -r1.17 -r1.18 --- configure.in 2000/08/24 20:09:00 1.17 +++ configure.in 2000/10/27 01:15:23 1.18 @@ -1,7 +1,7 @@ dnl Process this file with autoconf to produce a configure script. AC_INIT(src/main.c) -AM_INIT_AUTOMAKE(geist, 0.0.2) +AM_INIT_AUTOMAKE(geist, 0.0.3) AC_ISC_POSIX AC_PROG_CC @@ -80,6 +80,7 @@ AC_OUTPUT([ Makefile +geist.spec src/Makefile pixmaps/Makefile src/ttfonts/Makefile |
From: <enl...@li...> - 2000-10-27 01:42:33
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Modified Files: AUTHORS Makefile.am geist.spec.in Log Message: a snapshot release =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/AUTHORS,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- AUTHORS 2000/08/22 03:06:12 1.3 +++ AUTHORS 2000/10/27 01:42:33 1.4 @@ -1,8 +1,9 @@ -Tom Gilbert <gil...@li...> Principle author. +Tom Gilbert <to...@li...> Principle author. Till Adam <Til...@bi...> Object properties code, multiple interface - tweaks. + tweaks. Font style editor GUI, selection + rect code. Lots of misc additions. Dave J: Makefile.am fix for libXML. -Nolan: Opacity support +Nolan: Opacity support for images =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/Makefile.am,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -3 -r1.1.1.1 -r1.2 --- Makefile.am 2000/07/31 15:09:44 1.1.1.1 +++ Makefile.am 2000/10/27 01:42:33 1.2 @@ -2,6 +2,11 @@ SUBDIRS = pixmaps src +docs_DATA = README AUTHORS ChangeLog TODO +docsdir = $(prefix)/doc/geist + +EXTRA_DIST= geist.spec $(docs_DATA) + install-data-local: @$(NORMAL_INSTALL) if test -d $(srcdir)/pixmaps; then \ =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/geist.spec.in,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- geist.spec.in 2000/10/27 01:15:23 1.1 +++ geist.spec.in 2000/10/27 01:42:33 1.2 @@ -29,7 +29,7 @@ %setup -q %build -./autogen.sh --prefix=%{prefix} +./configure --prefix=%{prefix} make %install |
From: <enl...@li...> - 2000-10-27 02:25:35
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Modified Files: configure.in Log Message: check for imlib2 > 1.0.0, seeing as there is one now =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/configure.in,v retrieving revision 1.18 retrieving revision 1.19 diff -u -3 -r1.18 -r1.19 --- configure.in 2000/10/27 01:15:23 1.18 +++ configure.in 2000/10/27 02:25:33 1.19 @@ -26,7 +26,7 @@ dnl echo "ERROR: You need libImlib2 to build geist."; dnl AC_MSG_ERROR([Fatal: libImlib2 not found.])], -lm) -AC_PATH_GENERIC(imlib2, , [ +AC_PATH_GENERIC(imlib2, 1.0.0, [ AC_SUBST(IMLIB_LIBS) AC_SUBST(IMLIB_CFLAGS) ], AC_MSG_ERROR(Cannot find imlib2: Is imlib2-config in the path?) ) |
From: <enl...@li...> - 2000-10-29 23:51:35
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Modified Files: geist_imlib.c Log Message: *sigh =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_imlib.c,v retrieving revision 1.22 retrieving revision 1.23 diff -u -3 -r1.22 -r1.23 --- geist_imlib.c 2000/10/27 00:15:11 1.22 +++ geist_imlib.c 2000/10/29 23:51:34 1.23 @@ -499,7 +499,11 @@ void geist_imlib_save_image(Imlib_Image im, char *file) { + char *tmp; imlib_context_set_image(im); + tmp = strrchr(file, '.'); + if (tmp) + imlib_set_format(tmp + 1); imlib_save_image(file); } |
From: <enl...@li...> - 2000-10-29 23:57:48
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Modified Files: geist_imlib.c Log Message: grrr =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_imlib.c,v retrieving revision 1.23 retrieving revision 1.24 diff -u -3 -r1.23 -r1.24 --- geist_imlib.c 2000/10/29 23:51:34 1.23 +++ geist_imlib.c 2000/10/29 23:57:48 1.24 @@ -503,7 +503,7 @@ imlib_context_set_image(im); tmp = strrchr(file, '.'); if (tmp) - imlib_set_format(tmp + 1); + imlib_image_set_format(tmp + 1); imlib_save_image(file); } |
From: <enl...@li...> - 2000-11-12 16:07:30
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Modified Files: Makefile.am geist.h geist_document.c geist_document.h geist_document_xml.c geist_fill.c geist_fill.h geist_image.c geist_image.h geist_imlib.c geist_imlib.h geist_interface.c geist_layer.c geist_layer.h geist_line.c geist_line.h geist_object.c geist_object.h geist_poly.c geist_poly.h geist_rect.c geist_rect.h geist_text.c geist_text.h geist_utils.c geist_utils.h main.c structs.h Removed Files: geist_list.c geist_list.h geist_style.c geist_style.h Log Message: Sun Nov 12 16:05:00 2000 Tom Gilbert <gil...@li...> * geist now requires giblib. =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/Makefile.am,v retrieving revision 1.17 retrieving revision 1.18 diff -u -3 -r1.17 -r1.18 --- Makefile.am 2000/10/27 01:15:23 1.17 +++ Makefile.am 2000/11/12 16:07:28 1.18 @@ -4,7 +4,7 @@ INCLUDES = \ -I. -I$(top_srcdir) \ -@GTK_CFLAGS@ -DPREFIX=\""$(prefix)"\" @XML_CFLAGS@ @IMLIB_CFLAGS@ +@GTK_CFLAGS@ -DPREFIX=\""$(prefix)"\" @XML_CFLAGS@ @GIBLIB_CFLAGS@ bin_PROGRAMS = geist @@ -19,7 +19,6 @@ debug.h \ geist.h \ geist_layer.c geist_layer.h \ - geist_list.c geist_list.h \ geist_object.h geist_object.c \ structs.h \ geist_image.c geist_image.h \ @@ -28,7 +27,6 @@ geist_line.c geist_line.h \ geist_poly.c geist_poly.h \ geist_imlib.c geist_imlib.h \ - geist_style.c geist_style.h \ geist_document.c geist_document.h \ geist_document_gtk.c geist_document_gtk.h \ geist_fill.c geist_fill.h \ @@ -38,4 +36,4 @@ geist_utils.c geist_utils.h \ imlib.c -geist_LDADD = @GTK_LIBS@ @IMLIB_LIBS@ @XML_LIBS@ +geist_LDADD = @GTK_LIBS@ @GIBLIB_LIBS@ @XML_LIBS@ =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist.h,v retrieving revision 1.31 retrieving revision 1.32 diff -u -3 -r1.31 -r1.32 --- geist.h 2000/10/12 20:46:47 1.31 +++ geist.h 2000/11/12 16:07:28 1.32 @@ -47,13 +47,13 @@ #include <stdarg.h> #include <signal.h> #include <sys/wait.h> -#include <Imlib2.h> #include <gdk/gdkx.h> #include <gdk/gdkprivate.h> #include <gdk/gdkkeysyms.h> #include <gdk/gdk.h> #include <gtk/gtk.h> #include <math.h> +#include <giblib/giblib.h> #include "config.h" #include "debug.h" @@ -112,6 +112,6 @@ extern GtkWidget *mainwin; extern geist_document *current_doc; -extern geist_list *doc_list; +extern gib_list *doc_list; #endif =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_document.c,v retrieving revision 1.39 retrieving revision 1.40 diff -u -3 -r1.39 -r1.40 --- geist_document.c 2000/10/21 17:16:58 1.39 +++ geist_document.c 2000/11/12 16:07:28 1.40 @@ -46,7 +46,7 @@ d->name = estrdup("New document"); geist_document_add_layer(d); - doc_list = geist_list_add_end(doc_list, d); + doc_list = gib_list_add_end(doc_list, d); D_RETURN(3, d); } @@ -54,7 +54,7 @@ void geist_document_free(geist_document * document) { - geist_list *l; + gib_list *l; D_ENTER(3); @@ -62,17 +62,17 @@ { if (GEIST_DOCUMENT(l->data) == document) { - doc_list = geist_list_unlink(doc_list, l); + doc_list = gib_list_unlink(doc_list, l); } } for (l = document->layers; l; l = l->next) geist_layer_free((geist_layer *) l->data); - geist_list_free(document->layers); + gib_list_free(document->layers); if (document->im) - geist_imlib_free_image(document->im); + gib_imlib_free_image(document->im); if (document->pmap) XFreePixmap(disp, document->pmap); @@ -84,11 +84,11 @@ void geist_document_render(geist_document * document) { - geist_list *l; + gib_list *l; D_ENTER(3); - geist_imlib_image_fill_rectangle(document->im, 0, 0, document->w, + gib_imlib_image_fill_rectangle(document->im, 0, 0, document->w, document->h, 255, 255, 255, 255); geist_fill_render(document->bg_fill, document->im, 0, 0, document->w, @@ -100,10 +100,10 @@ D_RETURN_(3); } -geist_list * +gib_list * geist_document_get_selected_list(geist_document * doc) { - geist_list *l, *ll, *ret = NULL; + gib_list *l, *ll, *ret = NULL; geist_object *obj; D_ENTER(3); @@ -117,7 +117,7 @@ if (geist_object_get_state(obj, SELECTED)) { D(5, ("selected object found\n")); - ret = geist_list_add_end(ret, obj); + ret = gib_list_add_end(ret, obj); } } } @@ -127,12 +127,12 @@ void geist_document_unselect_all(geist_document * doc) { - geist_list *sl, *l; + gib_list *sl, *l; D_ENTER(3); sl = geist_document_get_selected_list(doc); - D(3, ("selected items count: %d\n", geist_list_length(sl))); + D(3, ("selected items count: %d\n", gib_list_length(sl))); if (sl) { geist_object *obj; @@ -146,7 +146,7 @@ geist_object_dirty(obj); } } - geist_list_free(sl); + gib_list_free(sl); } D_RETURN_(3); @@ -155,26 +155,26 @@ void geist_document_render_selection(geist_document * doc) { - geist_list *sl, *l; + gib_list *sl, *l; int sel_count; D_ENTER(3); sl = geist_document_get_selected_list(doc); - D(3, ("selected items count: %d\n", geist_list_length(sl))); + D(3, ("selected items count: %d\n", gib_list_length(sl))); if (sl) { geist_object *obj; - sel_count = geist_list_length(sl); + sel_count = gib_list_length(sl); for (l = sl; l; l = l->next) { obj = GEIST_OBJECT(l->data); obj->render_selected(obj, doc->im, (sel_count > 1) ? TRUE : FALSE); } - geist_list_free(sl); + gib_list_free(sl); } D_RETURN_(3); @@ -184,19 +184,19 @@ geist_document_render_selection_partial(geist_document * doc, int x, int y, int w, int h) { - geist_list *sl, *l; + gib_list *sl, *l; int sel_count; D_ENTER(3); sl = geist_document_get_selected_list(doc); - D(3, ("selected items count: %d\n", geist_list_length(sl))); + D(3, ("selected items count: %d\n", gib_list_length(sl))); if (sl) { geist_object *obj; - sel_count = geist_list_length(sl); + sel_count = gib_list_length(sl); for (l = sl; l; l = l->next) { @@ -209,7 +209,7 @@ (sel_count > 1) ? TRUE : FALSE); } } - geist_list_free(sl); + gib_list_free(sl); } D_RETURN_(3); @@ -220,7 +220,7 @@ geist_document_render_pmap(geist_document * doc) { D_ENTER(3); - geist_imlib_render_image_on_drawable(doc->pmap, doc->im, 0, 0, 1, 1, 0); + gib_imlib_render_image_on_drawable(doc->pmap, doc->im, 0, 0, 1, 1, 0); D_RETURN_(3); } @@ -228,12 +228,12 @@ geist_document_render_partial(geist_document * document, int x, int y, int w, int h) { - geist_list *l; + gib_list *l; D_ENTER(3); D(4, ("Doc render partial, %d,%d %dx%d\n", x, y, w, h)); - geist_imlib_image_fill_rectangle(document->im, x, y, w, h, 255, 255, 255, + gib_imlib_image_fill_rectangle(document->im, x, y, w, h, 255, 255, 255, 255); geist_fill_render(document->bg_fill, document->im, x, y, w, h); @@ -251,7 +251,7 @@ int h) { D_ENTER(3); - geist_imlib_render_image_part_on_drawable_at_size(doc->pmap, doc->im, x, y, + gib_imlib_render_image_part_on_drawable_at_size(doc->pmap, doc->im, x, y, w, h, x, y, w, h, 1, 1, 0); D_RETURN_(3); @@ -261,11 +261,11 @@ void geist_document_add_object(geist_document * doc, geist_object * obj) { - geist_list *top; + gib_list *top; D_ENTER(3); - top = geist_list_last(doc->layers); + top = gib_list_last(doc->layers); geist_layer_add_object(((geist_layer *) top->data), obj); if (GEIST_OBJECT_DOC(obj) == current_doc) geist_object_add_to_object_list(obj); @@ -277,7 +277,7 @@ void geist_document_reset_object_list(geist_document * d) { - geist_list *l, *ll; + gib_list *l, *ll; D_ENTER(3); @@ -311,7 +311,7 @@ layer = geist_layer_new(); layer->doc = doc; - doc->layers = geist_list_add_end(doc->layers, layer); + doc->layers = gib_list_add_end(doc->layers, layer); D_RETURN_(3); } @@ -319,7 +319,7 @@ geist_object * geist_document_find_clicked_object(geist_document * doc, int x, int y) { - geist_list *l; + gib_list *l; geist_object *ret = NULL; D_ENTER(3); @@ -388,7 +388,7 @@ void geist_document_dirty_selection(geist_document * doc) { - geist_list *l, *list; + gib_list *l, *list; D_ENTER(3); @@ -397,7 +397,7 @@ for (l = list; l; l = l->next) geist_object_dirty_selection(GEIST_OBJECT(l->data)); - geist_list_free(list); + gib_list_free(list); D_RETURN_(3); } @@ -447,7 +447,7 @@ /* render all but the selection */ geist_document_render_full(doc, 0); - geist_imlib_save_image(doc->im, filename); + gib_imlib_save_image(doc->im, filename); D_RETURN(3, 1); } @@ -470,7 +470,7 @@ XFreePixmap(disp, doc->pmap); doc->pmap = XCreatePixmap(disp, root, w, h, depth); if (doc->im) - geist_imlib_free_image(doc->im); + gib_imlib_free_image(doc->im); doc->im = imlib_create_image(w, h); /* TODO move objects back into document if they are moved off it */ geist_document_resize_gtk(doc, w, h); =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_document.h,v retrieving revision 1.25 retrieving revision 1.26 diff -u -3 -r1.25 -r1.26 --- geist_document.h 2000/10/21 17:16:58 1.25 +++ geist_document.h 2000/11/12 16:07:28 1.26 @@ -27,10 +27,8 @@ #define GEIST_DOCUMENT_H #include "geist.h" -#include "geist_list.h" #include "geist_object.h" #include "geist_layer.h" -#include "geist_imlib.h" #include "geist_document_gtk.h" #include "geist_fill.h" @@ -40,7 +38,7 @@ { char *name; char *filename; - geist_list *layers; + gib_list *layers; geist_fill *bg_fill; int w; int h; @@ -74,7 +72,7 @@ void geist_document_render_pmap_partial(geist_document * doc, int x, int y, int w, int h); void geist_document_render_selection(geist_document * doc); -geist_list *geist_document_get_selected_list(geist_document * doc); +gib_list *geist_document_get_selected_list(geist_document * doc); void geist_document_unselect_all(geist_document * doc); void geist_document_render_selection_partial(geist_document * doc, int x, int y, int w, int h); =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_document_xml.c,v retrieving revision 1.18 retrieving revision 1.19 diff -u -3 -r1.18 -r1.19 --- geist_document_xml.c 2000/10/27 00:15:11 1.18 +++ geist_document_xml.c 2000/11/12 16:07:28 1.19 @@ -40,7 +40,7 @@ xmlNodePtr cur, geist_layer * parent); -static geist_list *geist_object_list_parse_xml(xmlDocPtr doc, xmlNsPtr ns, +static gib_list *geist_object_list_parse_xml(xmlDocPtr doc, xmlNsPtr ns, xmlNodePtr cur, geist_layer * parent); @@ -48,7 +48,7 @@ xmlNodePtr cur, geist_document * parent); -static geist_list *geist_layer_list_parse_xml(xmlDocPtr doc, xmlNsPtr ns, +static gib_list *geist_layer_list_parse_xml(xmlDocPtr doc, xmlNsPtr ns, xmlNodePtr cur, geist_document * parent); @@ -58,14 +58,14 @@ char *filename); static geist_object *geist_parse_poly_xml(xmlDocPtr doc, xmlNsPtr ns, xmlNodePtr cur); -static geist_list *geist_parse_point_list_xml(xmlDocPtr doc, xmlNsPtr ns, +static gib_list *geist_parse_point_list_xml(xmlDocPtr doc, xmlNsPtr ns, xmlNodePtr cur); static geist_point *geist_point_parse_xml(xmlDocPtr doc, xmlNsPtr ns, xmlNodePtr cur); -static geist_style *geist_style_parse_xml(xmlDocPtr doc, xmlNsPtr ns, +static gib_style *gib_style_parse_xml(xmlDocPtr doc, xmlNsPtr ns, xmlNodePtr cur); -static geist_list * -geist_style_bits_parse_xml(xmlDocPtr doc, xmlNsPtr ns, xmlNodePtr cur); +static gib_list * +gib_style_bits_parse_xml(xmlDocPtr doc, xmlNsPtr ns, xmlNodePtr cur); static void geist_save_layer_xml(geist_layer * layer, xmlNodePtr parent, @@ -94,7 +94,7 @@ static void geist_save_style_xml(geist_text * txt, xmlNodePtr parent, xmlNsPtr ns); -static void geist_save_style_bit_xml(geist_style_bit * b, xmlNodePtr parent, +static void geist_save_style_bit_xml(gib_style_bit * b, xmlNodePtr parent, xmlNsPtr ns); /* Utility functions */ @@ -187,7 +187,7 @@ int w, h; char *name = NULL; geist_fill *fill = NULL; - geist_list *layers = NULL; + gib_list *layers = NULL; D_ENTER(3); @@ -216,7 +216,7 @@ if (ret->bg_fill) geist_fill_free(ret->bg_fill); ret->bg_fill = fill; - geist_list_free(ret->layers); + gib_list_free(ret->layers); ret->layers = layers; D_RETURN(3, ret); @@ -240,11 +240,11 @@ D_RETURN(3, ret); } -static geist_list * +static gib_list * geist_layer_list_parse_xml(xmlDocPtr doc, xmlNsPtr ns, xmlNodePtr cur, geist_document * parent) { - geist_list *ret = NULL; + gib_list *ret = NULL; geist_layer *layer = NULL; D_ENTER(3); @@ -256,7 +256,7 @@ { layer = geist_layer_parse_xml(doc, ns, cur, parent); if (layer) - ret = geist_list_add_end(ret, layer); + ret = gib_list_add_end(ret, layer); else weprintf("invalid layer found\n"); } @@ -296,11 +296,11 @@ D_RETURN(3, ret); } -static geist_list * +static gib_list * geist_object_list_parse_xml(xmlDocPtr doc, xmlNsPtr ns, xmlNodePtr cur, geist_layer * parent) { - geist_list *ret = NULL; + gib_list *ret = NULL; geist_object *obj; D_ENTER(3); @@ -313,7 +313,7 @@ { obj = geist_object_parse_xml(doc, ns, cur, parent); if (obj) - ret = geist_list_add_end(ret, obj); + ret = gib_list_add_end(ret, obj); else weprintf("invalid object found"); } @@ -471,7 +471,7 @@ { geist_object *ret; int filled, closed, r, g, b, a; - geist_list *points = NULL; + gib_list *points = NULL; geist_poly *poly; D_ENTER(3); @@ -488,7 +488,7 @@ { if ((!strcmp(cur->name, "Points")) && (cur->ns == ns)) points = - geist_list_add_end(points, + gib_list_add_end(points, geist_parse_point_list_xml(doc, ns, cur)); cur = cur->next; } @@ -501,10 +501,10 @@ D_RETURN(3, ret); } -static geist_list * +static gib_list * geist_parse_point_list_xml(xmlDocPtr doc, xmlNsPtr ns, xmlNodePtr cur) { - geist_list *ret = NULL; + gib_list *ret = NULL; geist_point *point = NULL; D_ENTER(3); @@ -516,7 +516,7 @@ { point = geist_point_parse_xml(doc, ns, cur); if (point) - ret = geist_list_add_end(ret, point); + ret = gib_list_add_end(ret, point); else weprintf("invalid point found\n"); } @@ -548,7 +548,7 @@ char *text = NULL; int wordwrap = 0; int justification = 0; - geist_style *style = NULL; + gib_style *style = NULL; int r,g,b,a; D_ENTER(3); @@ -576,7 +576,7 @@ xmlFree(temp); } else if ((!strcmp(cur->name, "Style")) && (cur->ns == ns)) - style = geist_style_parse_xml(doc, ns, cur); + style = gib_style_parse_xml(doc, ns, cur); cur = cur->next; } @@ -596,12 +596,12 @@ D_RETURN(3, ret); } -static geist_style * -geist_style_parse_xml(xmlDocPtr doc, xmlNsPtr ns, xmlNodePtr cur) +static gib_style * +gib_style_parse_xml(xmlDocPtr doc, xmlNsPtr ns, xmlNodePtr cur) { - geist_style *ret = NULL; + gib_style *ret = NULL; char *name = NULL; - geist_list *bits = NULL; + gib_list *bits = NULL; D_ENTER(3); @@ -610,24 +610,24 @@ { if ((!strcmp(cur->name, "Bits")) && (cur->ns == ns)) { - bits = geist_style_bits_parse_xml(doc, ns, cur); + bits = gib_style_bits_parse_xml(doc, ns, cur); } else if ((!strcmp(cur->name, "Name")) && (cur->ns == ns)) name = xmlNodeGetContent(cur->children); cur = cur->next; } - ret = geist_style_new(name); + ret = gib_style_new(name); xmlFree(name); ret->bits = bits; D_RETURN(3, ret); } -static geist_list * -geist_style_bits_parse_xml(xmlDocPtr doc, xmlNsPtr ns, xmlNodePtr cur) +static gib_list * +gib_style_bits_parse_xml(xmlDocPtr doc, xmlNsPtr ns, xmlNodePtr cur) { - geist_list *ret = NULL; + gib_list *ret = NULL; D_ENTER(3); @@ -644,7 +644,7 @@ r = geist_xml_read_int(cur, "R", 255); g = geist_xml_read_int(cur, "G", 255); b = geist_xml_read_int(cur, "B", 255); - ret = geist_list_add_end(ret, geist_style_bit_new(x_off, y_off, r,g,b,a)); + ret = gib_list_add_end(ret, gib_style_bit_new(x_off, y_off, r,g,b,a)); } cur = cur->next; } @@ -704,7 +704,7 @@ xmlDocPtr doc; xmlNodePtr tree, subtree; xmlNsPtr ns; - geist_list *kids; + gib_list *kids; D_ENTER(3); @@ -749,7 +749,7 @@ { /* recursive */ xmlNodePtr newlayer, subtree = NULL; - geist_list *kids; + gib_list *kids; D_ENTER(3); @@ -865,7 +865,7 @@ geist_save_style_xml(geist_text * txt, xmlNodePtr parent, xmlNsPtr ns) { xmlNodePtr subtree; - geist_list *l; + gib_list *l; D_ENTER(3); subtree = xmlNewChild(parent, ns, "Style", NULL); @@ -883,7 +883,7 @@ } static void -geist_save_style_bit_xml(geist_style_bit * b, xmlNodePtr parent, xmlNsPtr ns) +geist_save_style_bit_xml(gib_style_bit * b, xmlNodePtr parent, xmlNsPtr ns) { xmlNodePtr subtree; @@ -903,7 +903,7 @@ static void geist_save_poly_xml(geist_poly * poly, xmlNodePtr parent, xmlNsPtr ns) { - geist_list *kids; + gib_list *kids; xmlNodePtr subtree; D_ENTER(3); =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_fill.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- geist_fill.c 2000/09/24 15:51:55 1.2 +++ geist_fill.c 2000/11/12 16:07:28 1.3 @@ -71,7 +71,7 @@ { D_ENTER(3); - geist_imlib_image_fill_rectangle(dest, x, y, w, h, fill->r, fill->g, fill->b, + gib_imlib_image_fill_rectangle(dest, x, y, w, h, fill->r, fill->g, fill->b, fill->a); D_RETURN_(3); =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_fill.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- geist_fill.h 2000/09/24 15:51:55 1.2 +++ geist_fill.h 2000/11/12 16:07:28 1.3 @@ -30,7 +30,6 @@ #include "geist.h" #include "geist_object.h" #include "geist_document.h" -#include "geist_list.h" #define GEIST_FILL(O) ((geist_fill *)O) =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_image.c,v retrieving revision 1.50 retrieving revision 1.51 diff -u -3 -r1.50 -r1.51 --- geist_image.c 2000/10/21 16:19:12 1.50 +++ geist_image.c 2000/11/12 16:07:28 1.51 @@ -24,7 +24,7 @@ */ #include "geist.h" -#include "geist_imlib.h" +#include "gib_imlib.h" #include "geist_image.h" static gboolean img_load_cancel_cb(GtkWidget * widget, gpointer data); @@ -135,7 +135,7 @@ if (img->filename) efree(img->filename); if (img->im) - geist_imlib_free_image(img->im); + gib_imlib_free_image(img->im); efree(img); @@ -158,15 +158,15 @@ /* - dw = geist_imlib_image_get_width(dest); - dh = geist_imlib_image_get_height(dest); - sw = geist_imlib_image_get_width(im->im); - sh = geist_imlib_image_get_height(im->im); + dw = gib_imlib_image_get_width(dest); + dh = gib_imlib_image_get_height(dest); + sw = gib_imlib_image_get_width(im->im); + sh = gib_imlib_image_get_height(im->im); D(3, ("Rendering image %p with filename %s\n", obj, im->filename)); - geist_imlib_blend_image_onto_image(dest, im->im, 0, 0, 0, sw, sh, obj->x, + gib_imlib_blend_image_onto_image(dest, im->im, 0, 0, 0, sw, sh, obj->x, obj->y, sw, sh, 1, - geist_imlib_image_has_alpha(im->im), + gib_imlib_image_has_alpha(im->im), obj->alias); */ @@ -210,9 +210,9 @@ dh)); D(3, ("Rendering partial image %s\n", im->filename)); - geist_imlib_blend_image_onto_image(dest, im->im, 0, sx, sy, sw, sh, dx, dy, + gib_imlib_blend_image_onto_image(dest, im->im, 0, sx, sy, sw, sh, dx, dy, dw, dh, 1, - geist_imlib_image_has_alpha(im->im), + gib_imlib_image_has_alpha(im->im), obj->alias); D_RETURN_(5); @@ -228,7 +228,7 @@ D_ENTER(5); if (img->im) - geist_imlib_free_image(img->im); + gib_imlib_free_image(img->im); ret = geist_imlib_load_image(&img->im, filename); @@ -237,9 +237,9 @@ obj = (geist_object *) img; if (img->orig_im) - geist_imlib_free_image(img->orig_im); - obj->w = obj->rendered_w = geist_imlib_image_get_width(img->im); - obj->h = obj->rendered_h = geist_imlib_image_get_height(img->im); + gib_imlib_free_image(img->orig_im); + obj->w = obj->rendered_w = gib_imlib_image_get_width(img->im); + obj->h = obj->rendered_h = gib_imlib_image_get_height(img->im); } D_RETURN(5, ret); @@ -309,7 +309,7 @@ refresh_image_mods_cb(GtkWidget * widget, gpointer * type) { int p[4], i; - geist_list *list, *l; + gib_list *list, *l; geist_object *obj = NULL; D_ENTER(3); @@ -333,7 +333,7 @@ geist_object_dirty(GEIST_OBJECT(obj)); } } - geist_list_free(list); + gib_list_free(list); geist_document_render_updates(GEIST_OBJECT_DOC(obj),1); D_RETURN_(3); } @@ -397,8 +397,8 @@ gboolean refresh_aa_cb(GtkWidget * widget, gpointer * data) { geist_object *obj = NULL; - geist_list *l = NULL; - geist_list *list = NULL; + gib_list *l = NULL; + gib_list *list = NULL; D_ENTER(3); @@ -413,7 +413,7 @@ geist_object_update_positioning(obj); geist_object_dirty(obj); } - geist_list_free(list); + gib_list_free(list); geist_document_render_updates(GEIST_OBJECT_DOC(obj),1); } D_RETURN(3, TRUE); @@ -554,17 +554,17 @@ img = GEIST_IMAGE(obj); - w = geist_imlib_image_get_width(img->im); - h = geist_imlib_image_get_height(img->im); + w = gib_imlib_image_get_width(img->im); + h = gib_imlib_image_get_height(img->im); if ((obj->rendered_w != w) || (obj->rendered_h != h) || (obj->alias != obj->last.alias) || (img->orig_im && - ((geist_imlib_image_get_width + ((gib_imlib_image_get_width (img->orig_im) != obj->rendered_w) || - (geist_imlib_image_get_height + (gib_imlib_image_get_height (img->orig_im) != obj->rendered_h)) && @@ -579,17 +579,17 @@ /* need to resize */ if (!img->orig_im) { - img->orig_im = geist_imlib_clone_image(img->im); + img->orig_im = gib_imlib_clone_image(img->im); } else { - w = geist_imlib_image_get_width(img->orig_im); - h = geist_imlib_image_get_height(img->orig_im); + w = gib_imlib_image_get_width(img->orig_im); + h = gib_imlib_image_get_height(img->orig_im); } has_resized = 1; - geist_imlib_free_image_and_decache(img->im); + gib_imlib_free_image_and_decache(img->im); img->im = - geist_imlib_create_cropped_scaled_image(img->orig_im, 0, 0, w, h, + gib_imlib_create_cropped_scaled_image(img->orig_im, 0, 0, w, h, obj->rendered_w, obj->rendered_h, obj->alias); } @@ -615,18 +615,18 @@ { if (!img->orig_im) { - img->orig_im = geist_imlib_clone_image(img->im); + img->orig_im = gib_imlib_clone_image(img->im); } else { - geist_imlib_free_image_and_decache(img->im); - img->im = geist_imlib_clone_image(img->orig_im); + gib_imlib_free_image_and_decache(img->im); + img->im = gib_imlib_clone_image(img->orig_im); } } - w = geist_imlib_image_get_width(img->im); - h = geist_imlib_image_get_height(img->im); + w = gib_imlib_image_get_width(img->im); + h = gib_imlib_image_get_height(img->im); - geist_imlib_image_set_has_alpha(img->im, 1); + gib_imlib_image_set_has_alpha(img->im, 1); for (i = 0; i < 256; i++) { @@ -658,7 +658,7 @@ hb++; btab[i] = (DATA8) (hb); } - geist_imlib_apply_color_modifier_to_rectangle(img->im, 0, 0, w, h, rtab, + gib_imlib_apply_color_modifier_to_rectangle(img->im, 0, 0, w, h, rtab, gtab, btab, atab); } D_RETURN_(3); @@ -698,13 +698,13 @@ case SIZEMODE_NONE: if (img->orig_im) { - ww = geist_imlib_image_get_width(img->orig_im); - hh = geist_imlib_image_get_height(img->orig_im); + ww = gib_imlib_image_get_width(img->orig_im); + hh = gib_imlib_image_get_height(img->orig_im); } else { - ww = geist_imlib_image_get_width(img->im); - hh = geist_imlib_image_get_height(img->im); + ww = gib_imlib_image_get_width(img->im); + hh = gib_imlib_image_get_height(img->im); } obj->rendered_w = ww; obj->rendered_h = hh; @@ -718,13 +718,13 @@ hhh = obj->h; if (img->orig_im) { - ww = geist_imlib_image_get_width(img->orig_im); - hh = geist_imlib_image_get_height(img->orig_im); + ww = gib_imlib_image_get_width(img->orig_im); + hh = gib_imlib_image_get_height(img->orig_im); } else { - ww = geist_imlib_image_get_width(img->im); - hh = geist_imlib_image_get_height(img->im); + ww = gib_imlib_image_get_width(img->im); + hh = gib_imlib_image_get_height(img->im); } ratio = ((double) ww / hh) / ((double) www / hhh); if (ratio > 1.0) @@ -773,7 +773,7 @@ if (img->image_mods[A] != FULL_OPACITY) D_RETURN(3, TRUE); - D_RETURN(3, geist_imlib_image_has_alpha(img->im)); + D_RETURN(3, gib_imlib_image_has_alpha(img->im)); } void =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_image.h,v retrieving revision 1.26 retrieving revision 1.27 diff -u -3 -r1.26 -r1.27 --- geist_image.h 2000/09/24 15:51:55 1.26 +++ geist_image.h 2000/11/12 16:07:28 1.27 @@ -27,6 +27,7 @@ #define GEIST_IMAGE_H #include "geist.h" +#include "geist_imlib.h" #include "geist_object.h" #define GEIST_IMAGE(O) ((geist_image *) O) =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_imlib.c,v retrieving revision 1.24 retrieving revision 1.25 diff -u -3 -r1.24 -r1.25 --- geist_imlib.c 2000/10/29 23:57:48 1.24 +++ geist_imlib.c 2000/11/12 16:07:28 1.25 @@ -1,4 +1,4 @@ -/* geist_imlib.c +/* gib_imlib.c Copyright (C) 1999,2000 Tom Gilbert. @@ -24,7 +24,6 @@ */ #include "geist_imlib.h" -#include "geist_style.h" int geist_imlib_load_image(Imlib_Image * im, char *filename) @@ -91,465 +90,6 @@ return (1); } -int -geist_imlib_image_get_width(Imlib_Image im) -{ - imlib_context_set_image(im); - return imlib_image_get_width(); -} - -int -geist_imlib_image_get_height(Imlib_Image im) -{ - imlib_context_set_image(im); - return imlib_image_get_height(); -} - -int -geist_imlib_image_has_alpha(Imlib_Image im) -{ - imlib_context_set_image(im); - return imlib_image_has_alpha(); -} - -void -geist_imlib_free_image_and_decache(Imlib_Image im) -{ - imlib_context_set_image(im); - imlib_free_image_and_decache(); -} - -void -geist_imlib_free_image(Imlib_Image im) -{ - imlib_context_set_image(im); - imlib_free_image(); -} - -const char * -geist_imlib_image_get_filename(Imlib_Image im) -{ - if (im) - { - imlib_context_set_image(im); - return imlib_image_get_filename(); - } - else - return NULL; -} - -void -geist_imlib_render_image_on_drawable(Drawable d, Imlib_Image im, int x, int y, - char dither, char blend, char alias) -{ - imlib_context_set_image(im); - imlib_context_set_drawable(d); - imlib_context_set_anti_alias(alias); - imlib_context_set_dither(dither); - imlib_context_set_blend(blend); - imlib_context_set_angle(0); - imlib_render_image_on_drawable(x, y); -} - -void -geist_imlib_render_image_on_drawable_with_rotation(Drawable d, Imlib_Image im, - int x, int y, double angle, - char dither, char blend, - char alias) -{ - Imlib_Image new_im; - - imlib_context_set_image(im); - imlib_context_set_anti_alias(alias); - imlib_context_set_dither(dither); - imlib_context_set_blend(blend); - imlib_context_set_angle(angle); - imlib_context_set_drawable(d); - new_im = imlib_create_rotated_image(angle); - imlib_context_set_image(new_im); - imlib_render_image_on_drawable(x, y); - imlib_free_image(); -} - -void -geist_imlib_render_image_on_drawable_at_size(Drawable d, Imlib_Image im, - int x, int y, int w, int h, - char dither, char blend, - char alias) -{ - imlib_context_set_image(im); - imlib_context_set_drawable(d); - imlib_context_set_anti_alias(alias); - imlib_context_set_dither(dither); - imlib_context_set_blend(blend); - imlib_context_set_angle(0); - imlib_render_image_on_drawable_at_size(x, y, w, h); -} - -void -geist_imlib_render_image_on_drawable_at_size_with_rotation(Drawable d, - Imlib_Image im, - int x, int y, - int w, int h, - double angle, - char dither, - char blend, - char alias) -{ - Imlib_Image new_im; - - imlib_context_set_image(im); - imlib_context_set_drawable(d); - imlib_context_set_anti_alias(alias); - imlib_context_set_dither(dither); - imlib_context_set_blend(blend); - imlib_context_set_angle(angle); - new_im = imlib_create_rotated_image(angle); - imlib_context_set_image(new_im); - imlib_render_image_on_drawable_at_size(x, y, w, h); - imlib_free_image_and_decache(); -} - -void -geist_imlib_render_image_part_on_drawable_at_size(Drawable d, Imlib_Image im, - int sx, int sy, int sw, - int sh, int dx, int dy, - int dw, int dh, char dither, - char blend, char alias) -{ - imlib_context_set_image(im); - imlib_context_set_drawable(d); - imlib_context_set_anti_alias(alias); - imlib_context_set_dither(dither); - imlib_context_set_blend(blend); - imlib_context_set_angle(0); - imlib_render_image_part_on_drawable_at_size(sx, sy, sw, sh, dx, dy, dw, - dh); -} - -void -geist_imlib_render_image_part_on_drawable_at_size_with_rotation(Drawable d, - Imlib_Image - im, int sx, - int sy, - int sw, - int sh, - int dx, - int dy, - int dw, - int dh, - double angle, - char dither, - char blend, - char alias) -{ - Imlib_Image new_im; - - imlib_context_set_image(im); - imlib_context_set_drawable(d); - imlib_context_set_anti_alias(alias); - imlib_context_set_dither(dither); - imlib_context_set_angle(angle); - imlib_context_set_blend(blend); - new_im = imlib_create_rotated_image(angle); - imlib_context_set_image(new_im); - imlib_render_image_part_on_drawable_at_size(sx, sy, sw, sh, dx, dy, dw, - dh); - imlib_free_image_and_decache(); -} - -void -geist_imlib_image_fill_rectangle(Imlib_Image im, int x, int y, int w, int h, - int r, int g, int b, int a) -{ - imlib_context_set_image(im); - imlib_context_set_color(r, g, b, a); - imlib_image_fill_rectangle(x, y, w, h); -} - -void -geist_imlib_image_fill_polygon(Imlib_Image im, ImlibPolygon poly, int r, - int g, int b, int a, unsigned char alias, - int cx, int cy, int cw, int ch) -{ - imlib_context_set_image(im); - imlib_context_set_color(r, g, b, a); - imlib_context_set_anti_alias(alias); - imlib_context_set_cliprect(cx, cy, cw, ch); - imlib_image_fill_polygon(poly); - imlib_context_set_cliprect(0, 0, 0, 0); -} - -void -geist_imlib_image_draw_polygon(Imlib_Image im, ImlibPolygon poly, int r, - int g, int b, int a, unsigned char closed, - unsigned char alias, int cx, int cy, int cw, - int ch) -{ - imlib_context_set_image(im); - imlib_context_set_color(r, g, b, a); - imlib_context_set_anti_alias(alias); - imlib_context_set_cliprect(cx, cy, cw, ch); - imlib_image_draw_polygon(poly, closed); - imlib_context_set_cliprect(0, 0, 0, 0); -} - - -void -geist_imlib_image_draw_rectangle(Imlib_Image im, int x, int y, int w, int h, - int r, int g, int b, int a) -{ - imlib_context_set_image(im); - imlib_context_set_color(r, g, b, a); - imlib_image_draw_rectangle(x, y, w, h); -} - - -void -geist_imlib_text_draw(Imlib_Image im, Imlib_Font fn, geist_style * s, int x, - int y, char *text, Imlib_Text_Direction dir, int r, - int g, int b, int a) -{ - imlib_context_set_image(im); - imlib_context_set_font(fn); - imlib_context_set_direction(dir); - if (s) - { - int min_x = 0, min_y = 0; - geist_style_bit *bb; - geist_list *l; - - /* here we shift the draw to accomodate bits with negative offsets, - * which would be drawn at negative coords otherwise */ - l = s->bits; - while (l) - { - bb = (geist_style_bit *) l->data; - if (bb) - { - if (bb->x_offset < min_x) - min_x = bb->x_offset; - if (bb->y_offset < min_y) - min_y = bb->y_offset; - } - l = l->next; - } - x -= min_x; - y -= min_y; - - /* Now draw the bits */ - l = s->bits; - while (l) - { - bb = (geist_style_bit *) l->data; - if (bb) - { - if((bb->r + bb->g + bb->b + bb->a) == 0) - imlib_context_set_color(r,g,b,a); - else - imlib_context_set_color(bb->r, bb->g, bb->b, bb->a); - imlib_text_draw(x +bb->x_offset, y + bb->y_offset, text); - } - l = l->next; - } - } - else - { - imlib_context_set_color(r, g, b, a); - imlib_text_draw(x, y, text); - } -} - -char ** -geist_imlib_list_fonts(int *num) -{ - return imlib_list_fonts(num); -} - - -void -geist_imlib_get_text_size(Imlib_Font fn, char *text, geist_style * s, int *w, - int *h, Imlib_Text_Direction dir) -{ - - imlib_context_set_font(fn); - imlib_context_set_direction(dir); - imlib_get_text_size(text, w, h); - if (s) - { - geist_style_bit *b; - int max_x_off = 0, min_x_off = 0, max_y_off = 0, min_y_off = 0; - geist_list *l; - - l = s->bits; - while (l) - { - b = (geist_style_bit *) l->data; - if (b) - { - if (b->x_offset > max_x_off) - max_x_off = b->x_offset; - else if (b->x_offset < min_x_off) - min_x_off = b->x_offset; - if (b->y_offset > max_y_off) - max_y_off = b->y_offset; - else if (b->y_offset < min_y_off) - min_y_off = b->y_offset; - } - l = l->next; - } - if (h) - { - *h += max_y_off; - *h -= min_y_off; - } - if (w) - { - *w += max_x_off; - *w -= min_x_off; - } - } -} - -Imlib_Image geist_imlib_clone_image(Imlib_Image im) -{ - imlib_context_set_image(im); - return imlib_clone_image(); -} - -char * -geist_imlib_image_format(Imlib_Image im) -{ - imlib_context_set_image(im); - return imlib_image_format(); -} - -void -geist_imlib_blend_image_onto_image(Imlib_Image dest_image, - Imlib_Image source_image, char merge_alpha, - int sx, int sy, int sw, int sh, int dx, - int dy, int dw, int dh, char dither, - char blend, char alias) -{ - imlib_context_set_image(dest_image); - imlib_context_set_anti_alias(alias); - imlib_context_set_dither(dither); - imlib_context_set_blend(blend); - imlib_context_set_angle(0); - imlib_blend_image_onto_image(source_image, merge_alpha, sx, sy, sw, sh, dx, - dy, dw, dh); -} - -void -geist_imlib_blend_image_onto_image_with_rotation(Imlib_Image dest_image, - Imlib_Image source_image, - char merge_alpha, int sx, - int sy, int sw, int sh, - int dx, int dy, int dw, - int dh, double angle, - char dither, char blend, - char alias) -{ - imlib_context_set_image(dest_image); - imlib_context_set_anti_alias(alias); - imlib_context_set_dither(dither); - imlib_context_set_blend(blend); - imlib_context_set_angle(angle); - imlib_blend_image_onto_image_at_angle(source_image, merge_alpha, sx, sy, - sw, sh, dx, dy, (int) angle, - (int) angle); - return; - dw = 0; - dh = 0; -} - -Imlib_Image geist_imlib_create_cropped_scaled_image(Imlib_Image im, int sx, - int sy, int sw, int sh, - int dw, int dh, - char alias) -{ - imlib_context_set_image(im); - imlib_context_set_anti_alias(alias); - return imlib_create_cropped_scaled_image(sx, sy, sw, sh, dw, dh); -} - -void -geist_imlib_apply_color_modifier_to_rectangle(Imlib_Image im, int x, int y, - int w, int h, DATA8 * rtab, - DATA8 * gtab, DATA8 * btab, - DATA8 * atab) -{ - Imlib_Color_Modifier cm; - - imlib_context_set_image(im); - cm = imlib_create_color_modifier(); - imlib_context_set_color_modifier(cm); - imlib_set_color_modifier_tables(rtab, gtab, btab, atab); - imlib_apply_color_modifier_to_rectangle(x, y, w, h); - imlib_free_color_modifier(); -} - -void -geist_imlib_image_set_has_alpha(Imlib_Image im, int alpha) -{ - imlib_context_set_image(im); - imlib_image_set_has_alpha(alpha); -} - -void -geist_imlib_save_image(Imlib_Image im, char *file) -{ - char *tmp; - imlib_context_set_image(im); - tmp = strrchr(file, '.'); - if (tmp) - imlib_image_set_format(tmp + 1); - imlib_save_image(file); -} - -void -geist_imlib_free_font(Imlib_Font fn) -{ - imlib_context_set_font(fn); - imlib_free_font(); -} - -void -geist_imlib_image_draw_line(Imlib_Image im, int x1, int y1, int x2, int y2, - char make_updates, int r, int g, int b, int a) -{ - imlib_context_set_image(im); - imlib_context_set_color(r, g, b, a); - imlib_image_draw_line(x1, y1, x2, y2, make_updates); -} - -Imlib_Image geist_imlib_create_rotated_image(Imlib_Image im, double angle) -{ - imlib_context_set_image(im); - return (imlib_create_rotated_image(angle)); -} - -void -geist_imlib_image_tile(Imlib_Image im) -{ - imlib_context_set_image(im); - imlib_image_tile(); -} - -void -geist_imlib_image_blur(Imlib_Image im, int radius) -{ - imlib_context_set_image(im); - imlib_image_blur(radius); -} - -void -geist_imlib_image_sharpen(Imlib_Image im, int radius) -{ - imlib_context_set_image(im); - imlib_image_sharpen(radius); -} - DATA8 geist_imlib_image_part_is_transparent(Imlib_Image im, int x, int y) { @@ -594,14 +134,4 @@ return 0; return 1; -} - -void -geist_imlib_line_clip_and_draw(Imlib_Image dest, int x0, int y0, int x1, - int y1, int cx, int cy, int cw, int ch, int r, - int g, int b, int a) -{ - imlib_context_set_cliprect(cx, cy, cw, ch); - geist_imlib_image_draw_line(dest, x0, y0, x1, y1, 0, r, g, b, a); - imlib_context_set_cliprect(0, 0, 0, 0); } =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_imlib.h,v retrieving revision 1.17 retrieving revision 1.18 diff -u -3 -r1.17 -r1.18 --- geist_imlib.h 2000/10/19 23:21:52 1.17 +++ geist_imlib.h 2000/11/12 16:07:28 1.18 @@ -42,130 +42,6 @@ } int geist_imlib_load_image(Imlib_Image * im, char *filename); -int geist_imlib_image_get_width(Imlib_Image im); -int geist_imlib_image_get_height(Imlib_Image im); -int geist_imlib_image_has_alpha(Imlib_Image im); -const char *geist_imlib_image_get_filename(Imlib_Image im); -void geist_imlib_free_image_and_decache(Imlib_Image im); -void geist_imlib_render_image_on_drawable(Drawable d, Imlib_Image im, int x, - int y, char dither, char blend, - - char alias); -void geist_imlib_render_image_on_drawable_with_rotation(Drawable d, - Imlib_Image im, int x, - int y, double angle, - - char dither, - char blend, - char alias); -void geist_imlib_render_image_part_on_drawable_at_size(Drawable d, - Imlib_Image im, int sx, - int sy, int sw, int sh, - int dx, int dy, int dw, - int dh, char dither, - - char blend, - char alias); -void geist_imlib_render_image_part_on_drawable_at_size_with_rotation(Drawable - d, - - Imlib_Image - im, - int sx, - int sy, - int sw, - int sh, - int dx, - int dy, - int dw, - int dh, - double - angle, - char - dither, - char - blend, - char - alias); -void geist_imlib_image_fill_rectangle(Imlib_Image im, int x, int y, int w, - int h, int r, int g, int b, int a); -void geist_imlib_text_draw(Imlib_Image im, Imlib_Font fn, geist_style *s,int x, int y, - char *text, Imlib_Text_Direction dir, int r, int g, - int b, int a); -void geist_imlib_get_text_size(Imlib_Font fn, char *text, geist_style *s, int *w, int *h, - Imlib_Text_Direction dir); -Imlib_Image geist_imlib_clone_image(Imlib_Image im); -char *geist_imlib_image_format(Imlib_Image im); -char **geist_imlib_list_fonts(int *num); -void geist_imlib_render_image_on_drawable_at_size(Drawable d, Imlib_Image im, - int x, int y, int w, int h, - char dither, char blend, - - char alias); -void geist_imlib_render_image_on_drawable_at_size_with_rotation(Drawable d, - Imlib_Image - im, int x, - int y, int w, - - int h, - double angle, - char dither, - char blend, - char alias); -void geist_imlib_blend_image_onto_image(Imlib_Image dest_image, - Imlib_Image source_image, - char merge_alpha, int sx, int sy, - int sw, int sh, int dx, int dy, - int dw, int dh, char dither, - char blend, char alias); -void geist_imlib_blend_image_onto_image_with_rotation(Imlib_Image dest_image, - Imlib_Image - source_image, - char merge_alpha, - int sx, int sy, int sw, - int sh, int dx, int dy, - int dw, int dh, - double angle, - - char dither, char blend, - char alias); -Imlib_Image geist_imlib_create_cropped_scaled_image(Imlib_Image im, int sx, - int sy, int sw, int sh, - int dw, int dh, - - char alias); -void geist_imlib_apply_color_modifier_to_rectangle(Imlib_Image im, int x, - int y, int w, int h, - DATA8 * rtab, DATA8 * gtab, - DATA8 * btab, - - DATA8 * atab); -void geist_imlib_image_set_has_alpha(Imlib_Image im, int alpha); -void geist_imlib_save_image(Imlib_Image im, char *file); -void geist_imlib_free_font(Imlib_Font fn); -void geist_imlib_free_image(Imlib_Image im); -void geist_imlib_image_draw_line(Imlib_Image im, int x1, int y1, int x2, - int y2, char make_updates, int r, int g, - int b, int a); -void geist_imlib_image_set_has_alpha(Imlib_Image im, int alpha); -void geist_image_save_image(Imlib_Image im, char *file); -void geist_imlib_free_font(Imlib_Font fn); -Imlib_Image geist_imlib_create_rotated_image(Imlib_Image im, double angle); -void geist_imlib_image_tile(Imlib_Image im); -void geist_imlib_image_blur(Imlib_Image im, int radius); -void geist_imlib_image_sharpen(Imlib_Image im, int radius); -void geist_imlib_image_draw_rectangle(Imlib_Image im, int x, int y, int w, - int h, int r, int g, int b, int a); DATA8 geist_imlib_image_part_is_transparent(Imlib_Image im, int x, int y); -void geist_imlib_line_clip_and_draw(Imlib_Image dest, int x0, int y0, int x1, - int y1, int cx, int cy, int cw, int ch, - int r, int g, int b, int a); -void geist_imlib_image_fill_polygon(Imlib_Image im, ImlibPolygon poly, int r, - int g, int b, int a, unsigned char alias, - int cx, int cy, int cw, int ch); -void geist_imlib_image_draw_polygon(Imlib_Image im, ImlibPolygon poly, int r, - int g, int b, int a, unsigned char closed, - unsigned char alias, int cx, int cy, - int cw, int ch); #endif =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_interface.c,v retrieving revision 1.46 retrieving revision 1.47 diff -u -3 -r1.46 -r1.47 --- geist_interface.c 2000/10/25 22:08:10 1.46 +++ geist_interface.c 2000/11/12 16:07:28 1.47 @@ -134,7 +134,7 @@ geist_update_statusbar(geist_document * doc) { geist_object *obj; - geist_list *list; + gib_list *list; char buff[35]; gint contextid; @@ -143,7 +143,7 @@ list = geist_document_get_selected_list(doc); if (list) { - if (geist_list_has_more_than_one_item(list)) + if (gib_list_has_more_than_one_item(list)) { gtk_statusbar_push(GTK_STATUSBAR(statusbar), contextid, "[Multiple selection]"); @@ -474,7 +474,7 @@ D_RETURN(5, 1); if (event->button == 1) { - geist_list *l, *list; + gib_list *l, *list; int row; /* First check for resizes */ @@ -514,7 +514,7 @@ geist_document_render_updates(doc, 1); D_RETURN(5, 1); } - geist_list_free(list); + gib_list_free(list); } obj = geist_document_find_clicked_object(doc, event->x, event->y); @@ -606,7 +606,7 @@ gint evbox_buttonrelease_cb(GtkWidget * widget, GdkEventButton * event, gpointer user_data) { - geist_list *list, *l; + gib_list *list, *l; geist_object *obj; geist_document *doc; int dragged = 0; @@ -628,7 +628,7 @@ obj->clicked_x = obj->clicked_y = 0; geist_object_dirty(obj); } - geist_list_free(list); + gib_list_free(list); gtk_object_set_data_full(GTK_OBJECT(widget), "draglist", NULL, NULL); dragged = 1; } @@ -644,7 +644,7 @@ obj->clicked_x = obj->clicked_y = 0; geist_object_dirty(obj); } - geist_list_free(list); + gib_list_free(list); gtk_object_set_data_full(GTK_OBJECT(widget), "resizelist", NULL, NULL); resized = 1; } @@ -652,7 +652,7 @@ { int x, y, w, h; int row; - geist_list *l, *ll; + gib_list *l, *ll; /* this is a bit hackish: we didnt resize or drag, so no object was * clicked. If there are updates now, they're the boundaries of the @@ -723,7 +723,7 @@ gint evbox_mousemove_cb(GtkWidget * widget, GdkEventMotion * event, gpointer user_data) { - geist_list *l, *list; + gib_list *l, *list; geist_object *obj; geist_document *doc; int x, y; @@ -801,9 +801,9 @@ } /*draw selection rect */ - geist_imlib_image_fill_rectangle(doc->im, rect_x, rect_y, w, h, 170, + gib_imlib_image_fill_rectangle(doc->im, rect_x, rect_y, w, h, 170, 210, 170, 120); - geist_imlib_image_draw_rectangle(doc->im, rect_x, rect_y, w, h, 0, + gib_imlib_image_draw_rectangle(doc->im, rect_x, rect_y, w, h, 0, 0, 0, 255); /*render on top of everything else */ @@ -888,7 +888,7 @@ gboolean obj_cpy_cb(GtkWidget * widget, gpointer * data) { geist_object *new; - geist_list *l, *list; + gib_list *l, *list; geist_object *obj; int row; @@ -917,7 +917,7 @@ gtk_clist_select_row(GTK_CLIST(obj_list), row, 0); } } - geist_list_free(list); + gib_list_free(list); geist_document_render_updates(current_doc, 1); } D_RETURN(3, TRUE); @@ -926,7 +926,7 @@ gboolean obj_del_cb(GtkWidget * widget, gpointer * data) { geist_object *obj; - geist_list *l, *list; + gib_list *l, *list; D_ENTER(3); if (doc_list) @@ -948,7 +948,7 @@ geist_document_remove_object(current_doc, obj); geist_object_free(obj); } - geist_list_free(list); + gib_list_free(list); geist_document_render_updates(current_doc, 1); } D_RETURN(3, TRUE); @@ -1144,12 +1144,12 @@ obj_vis_cb(GtkWidget * widget, gpointer * data) { geist_object *obj = NULL; - geist_list *l = NULL; - geist_list *list = NULL; + gib_list *l = NULL; + gib_list *list = NULL; D_ENTER(3); list = geist_document_get_selected_list(current_doc); - if (geist_list_length(list) > 1) + if (gib_list_length(list) > 1) { for (l = list; l; l = l->next) { @@ -1169,7 +1169,7 @@ geist_object_hide(obj); } geist_document_render_updates(GEIST_OBJECT_DOC(obj), 1); - geist_list_free(list); + gib_list_free(list); D_RETURN_(3); } @@ -1177,11 +1177,11 @@ refresh_name_cb(GtkWidget * widget, gpointer * data) { geist_object *obj = NULL; - geist_list *list = NULL; + gib_list *list = NULL; list = geist_document_get_selected_list(current_doc); D_ENTER(3); - if (geist_list_length(list) > 1) + if (gib_list_length(list) > 1) printf("Implement me!\n"); else { @@ -1190,7 +1190,7 @@ efree(obj->name); obj->name = estrdup(gtk_entry_get_text(GTK_ENTRY(widget))); } - geist_list_free(list); + gib_list_free(list); D_RETURN_(3); } @@ -1198,8 +1198,8 @@ refresh_sizemode_cb(GtkWidget * widget, gpointer * data) { geist_object *obj = NULL; - geist_list *l = NULL; - geist_list *list = NULL; + gib_list *l = NULL; + gib_list *list = NULL; list = geist_document_get_selected_list(current_doc); D_ENTER(3); @@ -1214,7 +1214,7 @@ geist_object_dirty(obj); } geist_document_render_updates(GEIST_OBJECT_DOC(obj), 1); - geist_list_free(list); + gib_list_free(list); D_RETURN_(3); } @@ -1223,8 +1223,8 @@ refresh_alignment_cb(GtkWidget * widget, gpointer * data) { geist_object *obj = NULL; - geist_list *l = NULL; - geist_list *list = NULL; + gib_list *l = NULL; + gib_list *list = NULL; list = geist_document_get_selected_list(current_doc); D_ENTER(3); @@ -1239,7 +1239,7 @@ geist_object_dirty(obj); } geist_document_render_updates(GEIST_OBJECT_DOC(obj), 1); - geist_list_free(list); + gib_list_free(list); D_RETURN_(3); } @@ -1248,8 +1248,8 @@ buttons_cb(GtkWidget * widget, gpointer * data) { geist_object *obj = NULL; - geist_list *l = NULL; - geist_list *list = NULL; + gib_list *l = NULL; + gib_list *list = NULL; D_ENTER(3); list = geist_document_get_selected_list(current_doc); @@ -1290,7 +1290,7 @@ } geist_update_statusbar(current_doc); geist_document_render_updates(GEIST_OBJECT_DOC(obj), 1); - geist_list_free(list); + gib_list_free(list); D_RETURN_(3); } @@ -1298,8 +1298,8 @@ rotation_cb(GtkWidget * widget, gpointer * data) { geist_object *obj = NULL; - geist_list *l = NULL; - geist_list *list = NULL; + gib_list *l = NULL; + gib_list *list = NULL; double angle; list = geist_document_get_selected_list(current_doc); @@ -1316,7 +1316,7 @@ } geist_update_statusbar(current_doc); geist_document_render_updates(GEIST_OBJECT_DOC(obj), 1); - geist_list_free(list); + gib_list_free(list); D_RETURN_(3); } @@ -1545,9 +1545,9 @@ { geist_object *obj; GtkWidget *new_hbox; - geist_list *list; + gib_list *list; geist_object *obj_first; - geist_list *l; + gib_list *l; char *align_string = NULL; char *sizemode_string = NULL; @@ -1580,7 +1580,7 @@ { /*update the values in the generic part */ - if (geist_list_has_more_than_one_item(list)) + if (gib_list_has_more_than_one_item(list)) { /*grey out the name entry box */ gtk_entry_set_text(GTK_ENTRY(name), ""); @@ -1631,7 +1631,7 @@ gtk_window_set_title(GTK_WINDOW(obj_win), obj->name); ... [truncated message content] |
From: <enl...@li...> - 2000-11-12 16:07:58
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Modified Files: ChangeLog Makefile.am configure.in Log Message: Sun Nov 12 16:05:00 2000 Tom Gilbert <gil...@li...> * geist now requires giblib. =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/ChangeLog,v retrieving revision 1.60 retrieving revision 1.61 diff -u -3 -r1.60 -r1.61 --- ChangeLog 2000/10/27 00:52:38 1.60 +++ ChangeLog 2000/11/12 16:07:28 1.61 @@ -1,3 +1,7 @@ +Sun Nov 12 16:05:00 2000 Tom Gilbert <gil...@li...> + + * geist now requires giblib. + Fri Oct 27 01:54:49 2000 Tom Gilbert <gil...@li...> * Style loading/saving to an ascii format now works. We have our =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/Makefile.am,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- Makefile.am 2000/10/27 01:42:33 1.2 +++ Makefile.am 2000/11/12 16:07:28 1.3 @@ -6,25 +6,3 @@ docsdir = $(prefix)/doc/geist EXTRA_DIST= geist.spec $(docs_DATA) - -install-data-local: - @$(NORMAL_INSTALL) - if test -d $(srcdir)/pixmaps; then \ - $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)/pixmaps; \ - for pixmap in $(srcdir)/pixmaps/*; do \ - if test -f $$pixmap; then \ - $(INSTALL_DATA) $$pixmap $(DESTDIR)$(pkgdatadir)/pixmaps; \ - fi \ - done \ - fi - -dist-hook: - if test -d pixmaps; then \ - mkdir $(distdir)/pixmaps; \ - for pixmap in pixmaps/*; do \ - if test -f $$pixmap; then \ - cp -p $$pixmap $(distdir)/pixmaps; \ - fi \ - done \ - fi - =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/configure.in,v retrieving revision 1.19 retrieving revision 1.20 diff -u -3 -r1.19 -r1.20 --- configure.in 2000/10/27 02:25:33 1.19 +++ configure.in 2000/11/12 16:07:28 1.20 @@ -17,25 +17,16 @@ AM_PATH_GTK(1.2.0, , AC_MSG_ERROR(Cannot find GTK: Is gtk-config in path?)) -dnl AC_ARG_WITH(imlib2, -dnl [ --with-imlib2=DIR use imlib2 in <DIR>], -dnl [CFLAGS="$CFLAGS -I$withval/include" -dnl LIBS="-L$withval/lib $LIBS"]) - -dnl AC_CHECK_LIB(Imlib2, imlib_load_image, , [ -dnl echo "ERROR: You need libImlib2 to build geist."; -dnl AC_MSG_ERROR([Fatal: libImlib2 not found.])], -lm) - -AC_PATH_GENERIC(imlib2, 1.0.0, [ - AC_SUBST(IMLIB_LIBS) - AC_SUBST(IMLIB_CFLAGS) ], - AC_MSG_ERROR(Cannot find imlib2: Is imlib2-config in the path?) ) +AC_PATH_GENERIC(giblib, 1.0.1, [ + AC_SUBST(GIBLIB_LIBS) + AC_SUBST(GIBLIB_CFLAGS) ], + AC_MSG_ERROR(Cannot find giblib: Is giblib-config in the path?) ) dnl the above doesn't work for some reason :/ -IMLIB_LIBS=`imlib2-config --libs` -IMLIB_CFLAGS=`imlib2-config --cflags` -AC_SUBST(IMLIB_LIBS) -AC_SUBST(IMLIB_CFLAGS) +GIBLIB_LIBS=`giblib-config --libs` +GIBLIB_CFLAGS=`giblib-config --cflags` +AC_SUBST(GIBLIB_LIBS) +AC_SUBST(GIBLIB_CFLAGS) AC_PATH_GENERIC(xml, 2.0.0, [ AC_SUBST(XML_LIBS) @@ -48,32 +39,6 @@ echo " running geist a much more pleasurable experience."]) LIBS="$LIBS -lm" -dnl Set PACKAGE_LOCALE_DIR in config.h. -if test "x${prefix}" = "xNONE"; then - AC_DEFINE_UNQUOTED(PACKAGE_LOCALE_DIR, "${ac_default_prefix}/${DATADIRNAME}/locale") -else - AC_DEFINE_UNQUOTED(PACKAGE_LOCALE_DIR, "${prefix}/${DATADIRNAME}/locale") -fi - -dnl Set PACKAGE_DATA_DIR in config.h. -if test "x${datadir}" = 'x${prefix}/share'; then - if test "x${prefix}" = "xNONE"; then - AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${ac_default_prefix}/share/${PACKAGE}") - else - AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${prefix}/share/${PACKAGE}") - fi -else - AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${datadir}/${PACKAGE}") -fi - -dnl Set PACKAGE_SOURCE_DIR in config.h. -packagesrcdir=`cd $srcdir && pwd` -AC_DEFINE_UNQUOTED(PACKAGE_SOURCE_DIR, "${packagesrcdir}") - -dnl Subst PACKAGE_PIXMAPS_DIR. -PACKAGE_PIXMAPS_DIR="${datadir}/${PACKAGE}/pixmaps" -AC_SUBST(PACKAGE_PIXMAPS_DIR) - CFLAGS="$CFLAGS -Wall" AM_CONFIG_HEADER(config.h) @@ -92,8 +57,8 @@ Configuration: -------------- -Imlib2 libs: $IMLIB_LIBS -Imlib2 cflags: $IMLIB_CFLAGS +giblib libs: $GIBLIB_LIBS +giblib cflags: $GIBLIB_CFLAGS XML libs: $XML_LIBS XML cflags: $XML_CFLAGS CFLAGS: $CFLAGS |
From: <enl...@li...> - 2000-12-18 19:23:03
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Dir : misc/geist/src/cpp Log Message: Directory /cvsroot/enlightenment/misc/geist/src/cpp added to the repository |
From: <enl...@li...> - 2000-12-18 19:25:11
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Dir : misc/geist/src/cpp Added Files: .cvsignore Makefile geist.h geist_debug.h geist_document.h geist_image.h geist_object.h main.cpp Log Message: Initial design work for the new geist. Please don't expect this to work, there's not even a UI yet, it's just .h files for groundwork. I'm commiting it so I can play with it from work. Comments welcome of course. |
From: <enl...@li...> - 2000-12-18 19:25:41
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Dir : misc/geist/src Modified Files: geist_document.c geist_object.c geist_object.h Log Message: Initial design work for the new geist. Please don't expect this to work, there's not even a UI yet, it's just .h files for groundwork. I'm commiting it so I can play with it from work. Comments welcome of course. =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_document.c,v retrieving revision 1.40 retrieving revision 1.41 diff -u -3 -r1.40 -r1.41 --- geist_document.c 2000/11/12 16:07:28 1.40 +++ geist_document.c 2000/12/18 19:25:11 1.41 @@ -1,4 +1,4 @@ -/* geist_document.c +/* geist_document.cpp Copyright (C) 1999,2000 Tom Gilbert. =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_object.c,v retrieving revision 1.65 retrieving revision 1.66 diff -u -3 -r1.65 -r1.66 --- geist_object.c 2000/11/12 16:07:28 1.65 +++ geist_object.c 2000/12/18 19:25:11 1.66 @@ -1,4 +1,4 @@ -/* geist_object.c +/* geist_object.cpp Copyright (C) 1999,2000 Tom Gilbert. =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_object.h,v retrieving revision 1.57 retrieving revision 1.58 diff -u -3 -r1.57 -r1.58 --- geist_object.h 2000/11/12 16:07:28 1.57 +++ geist_object.h 2000/12/18 19:25:11 1.58 @@ -29,6 +29,7 @@ #include "geist.h" #include "geist_document.h" + extern GtkWidget *obj_list; #define GEIST_OBJECT(O) ((geist_object *) O) |
From: <enl...@li...> - 2000-12-18 20:59:41
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Dir : misc/geist/src Modified Files: geist_document.c geist_object.c Log Message: no. that's not right. =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_document.c,v retrieving revision 1.41 retrieving revision 1.42 diff -u -3 -r1.41 -r1.42 --- geist_document.c 2000/12/18 19:25:11 1.41 +++ geist_document.c 2000/12/18 20:59:11 1.42 @@ -1,4 +1,4 @@ -/* geist_document.cpp +/* geist_document.c Copyright (C) 1999,2000 Tom Gilbert. =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_object.c,v retrieving revision 1.66 retrieving revision 1.67 diff -u -3 -r1.66 -r1.67 --- geist_object.c 2000/12/18 19:25:11 1.66 +++ geist_object.c 2000/12/18 20:59:11 1.67 @@ -1,4 +1,4 @@ -/* geist_object.cpp +/* geist_object.c Copyright (C) 1999,2000 Tom Gilbert. |
From: <enl...@li...> - 2000-12-18 20:59:42
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Dir : misc/geist/src/cpp Modified Files: geist.h geist_object.h Log Message: no. that's not right. =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/cpp/geist.h,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- geist.h 2000/12/18 19:25:11 1.1 +++ geist.h 2000/12/18 20:59:11 1.2 @@ -23,6 +23,9 @@ */ +#ifndef GEIST_H +#define GEIST_H + #include <X11/Xlib.h> #include <Imlib2.h> #include <iostream> @@ -40,4 +43,8 @@ #define D(a,b) GeistDebug::instance()->print(a,b) #else #define D(a,b) +#endif + +class eGeneric { }; // generic exception class + #endif =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/cpp/geist_object.h,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- geist_object.h 2000/12/18 19:25:11 1.1 +++ geist_object.h 2000/12/18 20:59:11 1.2 @@ -29,7 +29,7 @@ #include "geist.h" // exceptions -class eNoChildren { }; // can't add or remove children to a leaf +class eNoChildren : public eGeneric { }; // can't add or remove children to a leaf typedef int Coord; struct Point |
From: <enl...@li...> - 2001-12-29 18:18:37
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Dir : misc/geist/src/cpp Modified Files: GeistDocument.h GeistObject.h Makefile Log Message: Geist is really kinda dead. I gave up when I reached the limits of what I could do with imlib2. There just isn't enough there to do what I wanted. However I'm going to use the canvas and editing from geist for another project, so this commit just makes it all compile again, for me anyway. =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/cpp/GeistDocument.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- GeistDocument.h 2000/12/23 17:56:43 1.2 +++ GeistDocument.h 2001/12/29 18:18:36 1.3 @@ -41,7 +41,7 @@ virtual void dirty() { }; virtual void dirty(Rect r) { }; - Imlib_Image get_image() { return _image; }; + Imlib_Image get_image() const { return _image; }; protected: =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/cpp/GeistObject.h,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- GeistObject.h 2000/12/23 17:56:43 1.3 +++ GeistObject.h 2001/12/29 18:18:36 1.4 @@ -57,18 +57,14 @@ struct Rect { - Rect() + Rect() : _p(0,0) { - _p._x = 0; - _p._y = 0; _w = 0; _h = 0; }; - Rect(Point p, Coord w, Coord h) + Rect(Point p, Coord w, Coord h) : _p(p._x, p._y) { - _p._x = p._x; - _p._y = p._y; _w = w; _h = h; }; @@ -82,7 +78,7 @@ { public: - virtual ~ GeistObject(); + virtual ~GeistObject(); // defined in the base class, all objects have a name - can be // overridden in case a name change requires a rerender or something @@ -90,7 +86,7 @@ { _name = name; }; - virtual string get_name() + virtual string get_name() const { return _name; }; @@ -104,7 +100,7 @@ { throw eNoChildren(); }; - virtual GeistObject *get_parent() + virtual GeistObject *get_parent() const { return _parent; }; @@ -142,7 +138,7 @@ else throw eDisownedObject(); }; - virtual Rect get_rect() + virtual Rect get_rect() const { return _rect; }; =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/cpp/Makefile,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- Makefile 2000/12/23 17:56:43 1.4 +++ Makefile 2001/12/29 18:18:36 1.5 @@ -1,5 +1,5 @@ -CPPFLAGS = -O2 -W +CPPFLAGS = -O2 -Wall -g OBJS = GeistCompositeObject.o GeistDebug.o GeistDocument.o GeistImage.o GeistObject.o main.o geist: $(OBJS) |
From: <enl...@li...> - 2001-12-29 18:19:06
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Dir : misc/geist Modified Files: configure.in Log Message: Geist is really kinda dead. I gave up when I reached the limits of what I could do with imlib2. There just isn't enough there to do what I wanted. However I'm going to use the canvas and editing from geist for another project, so this commit just makes it all compile again, for me anyway. =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/configure.in,v retrieving revision 1.20 retrieving revision 1.21 diff -u -3 -r1.20 -r1.21 --- configure.in 2000/11/12 16:07:28 1.20 +++ configure.in 2001/12/29 18:18:36 1.21 @@ -28,9 +28,9 @@ AC_SUBST(GIBLIB_LIBS) AC_SUBST(GIBLIB_CFLAGS) -AC_PATH_GENERIC(xml, 2.0.0, [ - AC_SUBST(XML_LIBS) - AC_SUBST(XML_CFLAGS) ], +AC_PATH_GENERIC(xml2, 2.0.0, [ + AC_SUBST(XML2_LIBS) + AC_SUBST(XML2_CFLAGS) ], AC_MSG_ERROR(Cannot find libXML: Is xml-config in the path?) ) AC_CHECK_LIB(pr0n,huge_nekkid_pictures_of_pabs_mom, , [ |
From: <enl...@li...> - 2001-12-29 18:19:06
|
Enlightenment CVS committal Author : gilbertt Project : misc Module : geist Dir : misc/geist/src Modified Files: Makefile.am geist_document_xml.h Log Message: Geist is really kinda dead. I gave up when I reached the limits of what I could do with imlib2. There just isn't enough there to do what I wanted. However I'm going to use the canvas and editing from geist for another project, so this commit just makes it all compile again, for me anyway. =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/Makefile.am,v retrieving revision 1.18 retrieving revision 1.19 diff -u -3 -r1.18 -r1.19 --- Makefile.am 2000/11/12 16:07:28 1.18 +++ Makefile.am 2001/12/29 18:18:36 1.19 @@ -4,7 +4,7 @@ INCLUDES = \ -I. -I$(top_srcdir) \ -@GTK_CFLAGS@ -DPREFIX=\""$(prefix)"\" @XML_CFLAGS@ @GIBLIB_CFLAGS@ +@GTK_CFLAGS@ -DPREFIX=\""$(prefix)"\" @XML2_CFLAGS@ @GIBLIB_CFLAGS@ bin_PROGRAMS = geist @@ -36,4 +36,4 @@ geist_utils.c geist_utils.h \ imlib.c -geist_LDADD = @GTK_LIBS@ @GIBLIB_LIBS@ @XML_LIBS@ +geist_LDADD = @GTK_LIBS@ @GIBLIB_LIBS@ @XML2_LIBS@ =================================================================== RCS file: /cvsroot/enlightenment/misc/geist/src/geist_document_xml.h,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- geist_document_xml.h 2000/10/09 15:33:23 1.9 +++ geist_document_xml.h 2001/12/29 18:18:36 1.10 @@ -34,8 +34,8 @@ #include "geist_line.h" #include "geist_poly.h" -#include <parser.h> -#include <xmlmemory.h> +#include <libxml/parser.h> +#include <libxml/xmlmemory.h> enum xml_load_err {ERR_NO_FILE, ERR_EMPTY_FILE, ERR_WRONG_TYPE}; |