Enlightenment CVS committal
Author : davemds
Project : e17
Module : proto/edje_editor
Dir : e17/proto/edje_editor/src/bin
Modified Files:
callbacks.c inout.c interface.c
Log Message:
* resolve toolbar error causing segfault on etk_main
* remove ecore_exe_handler after use
* make text glow on creation (readable on every bg color)
* Split up SaveEDJ in SaveEDC+SaveEDJ
===================================================================
RCS file: /cvs/e/e17/proto/edje_editor/src/bin/callbacks.c,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -3 -r1.30 -r1.31
--- callbacks.c 25 Nov 2007 18:42:55 -0000 1.30
+++ callbacks.c 26 Nov 2007 03:04:33 -0000 1.31
@@ -47,7 +47,9 @@
ShowFilechooser(FILECHOOSER_SAVE_EDJ);
break;
case TOOLBAR_SAVE_EDC:
- ShowFilechooser(FILECHOOSER_SAVE_EDC);
+ ShowAlert("Not yet implemented");
+ //ShowFilechooser(FILECHOOSER_SAVE_EDC);
+ //SaveEDC("/home/dave/test/auto.edc");
break;
case TOOLBAR_SAVE_EDJ:
ShowFilechooser(FILECHOOSER_SAVE_EDJ);
@@ -1174,15 +1176,6 @@
printf("Item Activated Signal on AddMenu EMITTED\n");
- /* if (!Cur.eg && ((int)data != NEW_DESC) && ((int)data != NEW_GROUP))
- {
- group = engrave_group_new();
- engrave_group_name_set (group, "New group");
- engrave_file_group_add (Cur.ef, group);
-
- AddGroupToTree(group);
- Cur.eg = group;
- }*/
switch ((int)data)
{
case NEW_RECT:
@@ -1248,7 +1241,10 @@
engrave_part_state_rel2_relative_set(new_state, 0.9, 0.9);
engrave_part_state_text_size_set(new_state,16);
engrave_part_state_text_text_set(new_state,"something to say...");
+
engrave_part_state_add(part,new_state);
+ engrave_part_effect_set(part,ENGRAVE_TEXT_EFFECT_GLOW);
+
AddStateToTree(new_state);
Cur.ep = part;
===================================================================
RCS file: /cvs/e/e17/proto/edje_editor/src/bin/inout.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- inout.c 23 Nov 2007 02:26:00 -0000 1.7
+++ inout.c 26 Nov 2007 03:04:33 -0000 1.8
@@ -14,6 +14,8 @@
Etk_Widget *Save_ProgBar;
Etk_Widget *Save_TextView;
Ecore_Timer *progress_bar_timer;
+
+Ecore_Event_Handler *eeh1, *eeh2, *eeh3;
void
etk_textview_append(Etk_Widget *tv, char *str)
@@ -129,14 +131,47 @@
return FALSE;
}
+char*
+SaveEDC(char *file_name)
+{
+ char tmpn[1024];
+ int fd = 0;
+ char *file;
+
+ if (!file_name)
+ {
+ //Create tmp file
+ strcpy(tmpn, "/tmp/edje_editor_tmp.edc-XXXXXX");
+ fd = mkstemp(tmpn);
+ if (fd < 0)
+ {
+ printf("Can't create temp file: %s\nError: %s\n",
+ tmpn,strerror(errno));
+ return NULL;
+ }
+ file = tmpn;
+ }
+ else
+ file = file_name;
+
+ printf("SaveEDC file: %s\n",file);
+
+ engrave_edc_output(Cur.ef, file);
+
+ //TODO check engrave output on error
+ if (!ecore_file_exists(file))
+ return NULL;
+
+ return file;
+}
+
int
SaveEDJ(char *file_name)
{
- char tmpn[1024];
+ char *tmpn;
char ipart[1024], fpart[1024];
char buf[4096];
char cmd[2048];
- int fd = 0;
const char *imgdir, *fontdir;
create_save_window();
@@ -148,24 +183,19 @@
//backup existing file
backup_file(file_name);
- //Create tmp file
- strcpy(tmpn, "/tmp/edje_editor_tmp.edc-XXXXXX");
- fd = mkstemp(tmpn);
- if (fd < 0)
+ //Create temp edc file
+ tmpn = SaveEDC(NULL); //TODO remove the temp file
+ if (!tmpn)
{
- snprintf(buf,4096,"<font color=#FF0000><b>Can't create temp file:</b>
%s\n<b>Error:</b> %s</font>\n",
- tmpn,strerror(errno));
+ snprintf(buf,4096,"<font color=#FF0000><b>Can't create edc tmp file:</b>
%s\n</font>\n", tmpn);
etk_textview_append(Save_TextView,buf);
stop_bar(Save_ProgBar,"Error");
return 0;
}
- close(fd);
- snprintf(buf,4096,"<b>Create temp file:</b> %s\n",tmpn);
+
+ snprintf(buf,4096,"<b>Created edc tmp file:</b> %s\n",tmpn);
etk_textview_append(Save_TextView,buf);
-
- //TODO check engrave success
- engrave_edc_output(Cur.ef, tmpn);
-
+
//Get image and font directory
imgdir = engrave_file_image_dir_get(Cur.ef);
fontdir = engrave_file_font_dir_get(Cur.ef);
@@ -186,11 +216,10 @@
etk_textview_append(Save_TextView, buf);
//Execute edje_cc through a pipe
- Ecore_Exe* exe;
- ecore_event_handler_add(ECORE_EXE_EVENT_DATA, pipe_data, Save_TextView);
- ecore_event_handler_add(ECORE_EXE_EVENT_ERROR, pipe_data, Save_TextView);
- ecore_event_handler_add(ECORE_EXE_EVENT_DEL, save_pipe_exit, Save_TextView);
- exe = ecore_exe_pipe_run(cmd,
+ eeh1 = ecore_event_handler_add(ECORE_EXE_EVENT_DATA, pipe_data,
Save_TextView);
+ eeh2 = ecore_event_handler_add(ECORE_EXE_EVENT_ERROR, pipe_data,
Save_TextView);
+ eeh3 = ecore_event_handler_add(ECORE_EXE_EVENT_DEL, save_pipe_exit,
Save_TextView);
+ ecore_exe_pipe_run(cmd,
ECORE_EXE_PIPE_READ | ECORE_EXE_PIPE_READ_LINE_BUFFERED |
ECORE_EXE_PIPE_ERROR | ECORE_EXE_PIPE_ERROR_LINE_BUFFERED,
(void*)SAVE_WIN);
@@ -272,11 +301,10 @@
snprintf(buf,4096,"<b>Executing: </b>%s\n",cmd);
etk_textview_append(Load_TextView, buf);
- Ecore_Exe* exe;
- ecore_event_handler_add(ECORE_EXE_EVENT_DATA, pipe_data, Load_TextView);
- ecore_event_handler_add(ECORE_EXE_EVENT_ERROR, pipe_data, Load_TextView);
- ecore_event_handler_add(ECORE_EXE_EVENT_DEL, load_pipe_exit, NULL);
- exe = ecore_exe_pipe_run(cmd,
+ eeh1 = ecore_event_handler_add(ECORE_EXE_EVENT_DATA, pipe_data,
Load_TextView);
+ eeh2 = ecore_event_handler_add(ECORE_EXE_EVENT_ERROR, pipe_data,
Load_TextView);
+ eeh3 = ecore_event_handler_add(ECORE_EXE_EVENT_DEL, load_pipe_exit, NULL);
+ ecore_exe_pipe_run(cmd,
ECORE_EXE_PIPE_READ | ECORE_EXE_PIPE_READ_LINE_BUFFERED |
ECORE_EXE_PIPE_ERROR | ECORE_EXE_PIPE_ERROR_LINE_BUFFERED,
(void*)LOAD_WIN);
@@ -332,6 +360,11 @@
}
etk_textview_append(Save_TextView,buf);
+
+ ecore_event_handler_del(eeh1);
+ ecore_event_handler_del(eeh2);
+ ecore_event_handler_del(eeh3);
+
return 0;
}
@@ -340,7 +373,7 @@
{
char buf[4096];
Ecore_Exe_Event_Del *e = (Ecore_Exe_Event_Del *)ev;
-
+
if (e->exit_code)
{
snprintf(buf,sizeof(buf),"<font color=#FF0000><b>Error in edje_decc,
exit code: </b> %d</font>\n",
@@ -381,7 +414,9 @@
stop_bar(Load_ProgBar, "Done !!");
}
}
-
+ ecore_event_handler_del(eeh1);
+ ecore_event_handler_del(eeh2);
+ ecore_event_handler_del(eeh3);
return 0;
}
===================================================================
RCS file: /cvs/e/e17/proto/edje_editor/src/bin/interface.c,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -3 -r1.38 -r1.39
--- interface.c 25 Nov 2007 21:23:14 -0000 1.38
+++ interface.c 26 Nov 2007 03:04:33 -0000 1.39
@@ -1065,7 +1065,7 @@
//ToolBar
UI_Toolbar = etk_toolbar_new ();
etk_toolbar_orientation_set (ETK_TOOLBAR(UI_Toolbar), o);
-
etk_object_properties_set(ETK_OBJECT(UI_Toolbar),"theme-group","etk/iconbox/label");
+
//etk_object_properties_set(ETK_OBJECT(UI_Toolbar),"theme-group","etk/iconbox/label");
//etk_theme_edje_object_set(Evas_Object *object, const char *file, const
char *group, const char *parent_group)
//NewButton
@@ -1094,13 +1094,13 @@
etk_signal_connect("clicked", ETK_OBJECT(button),
ETK_CALLBACK(on_AllButton_click),
(void*)TOOLBAR_SAVE_EDJ);
-/* //SaveEDCButton
+ //SaveEDCButton
button = etk_tool_button_new_from_stock(ETK_STOCK_DOCUMENT_SAVE);
etk_object_properties_set(ETK_OBJECT(button),"label","Export edc",NULL);
- etk_toolbar_append(ETK_TOOLBAR(ToolBar), button, ETK_BOX_START);
+ etk_toolbar_append(ETK_TOOLBAR(UI_Toolbar), button, ETK_BOX_START);
etk_signal_connect("clicked", ETK_OBJECT(button),
ETK_CALLBACK(on_AllButton_click),
(void*)TOOLBAR_SAVE_EDC);
- */
+
sep = etk_vseparator_new();
etk_toolbar_append(ETK_TOOLBAR(UI_Toolbar), sep, ETK_BOX_START);
@@ -1217,6 +1217,7 @@
//OptionsButton
button = etk_tool_button_new_from_stock(ETK_STOCK_PREFERENCES_SYSTEM);
+ etk_object_properties_set(ETK_OBJECT(button),"label","Options",NULL);
etk_signal_connect("clicked", ETK_OBJECT(button),
ETK_CALLBACK(on_AllButton_click), (void*)TOOLBAR_OPTIONS);
etk_toolbar_append(ETK_TOOLBAR(UI_Toolbar), button, ETK_BOX_START);
@@ -2287,7 +2288,7 @@
_embed_position_set, UI_ecore_MainWin);
etk_widget_show_all(UI_ToolbarEmbed);
evas_object_move(etk_embed_object_get(ETK_EMBED(UI_ToolbarEmbed)), 130, 0);
- evas_object_resize(etk_embed_object_get(ETK_EMBED(UI_ToolbarEmbed)), 300,
50);
+ evas_object_resize(etk_embed_object_get(ETK_EMBED(UI_ToolbarEmbed)), 0, 50);
//Tree
create_tree();
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
enlightenment-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs