TILP_EXPORT void on_tilp_button3_clicked(GtkButton* button, gpointer user_data) { if(options.backup_as_tigroup && tifiles_is_flash(options.calc_model)) on_tilp_button7_clicked(button, user_data); else on_tilp_button3b_clicked(button, user_data); }
void ctree_set_basetree(void) { GtkTreeIter clc_node; GtkTreeIter *top_node = NULL; GtkTreeIter lcd_node, rom_node, idl_node, clk_node; gchar* str; // clear tree gtk_tree_store_clear(tree); // top node #if 1 str = g_strdup_printf(_("%s -> %s:#%i"), tifiles_model_to_string(options.calc_model), ticables_model_to_string(options.cable_model), options.cable_port); top_node = &clc_node; gtk_tree_store_append(tree, top_node, NULL); gtk_tree_store_set(tree, &clc_node, COLUMN_NAME, str, COLUMN_DATA, (gpointer) NULL, -1); g_free(str); #endif // lcd, rom, vars & apps nodes gtk_tree_store_append(tree, &lcd_node, top_node); gtk_tree_store_set(tree, &lcd_node, COLUMN_NAME, NODE1, COLUMN_DATA, (gpointer) NULL, -1); gtk_tree_store_append(tree, &rom_node, top_node); gtk_tree_store_set(tree, &rom_node, COLUMN_NAME, NODE2, COLUMN_DATA, (gpointer) NULL, -1); gtk_tree_store_append(tree, &vars_node, top_node); gtk_tree_store_set(tree, &vars_node, COLUMN_NAME, NODE3, COLUMN_DATA, (gpointer) NULL, -1); if (tifiles_is_flash(options.calc_model)) { gtk_tree_store_append(tree, &apps_node, top_node); gtk_tree_store_set(tree, &apps_node, COLUMN_NAME, NODE4, COLUMN_DATA, (gpointer) NULL, -1); gtk_tree_store_append(tree, &idl_node, top_node); gtk_tree_store_set(tree, &idl_node, COLUMN_NAME, NODE5, COLUMN_DATA, (gpointer) NULL, -1); gtk_tree_store_append(tree, &clk_node, top_node); gtk_tree_store_set(tree, &clk_node, COLUMN_NAME, NODE6, COLUMN_DATA, (gpointer) NULL, -1); } gtk_tree_view_expand_all(GTK_TREE_VIEW(ctree_wnd)); }
void ctree_set_basetree(void) { GtkTreeIter *top_node = NULL; // clear tree gtk_tree_store_clear(tree); gtk_tree_store_append(tree, &vars_node, top_node); gtk_tree_store_set(tree, &vars_node, COLUMN_NAME, NODE3, COLUMN_DATA, (gpointer) NULL, -1); if (tifiles_is_flash(GFMFile.model)) { gtk_tree_store_append(tree, &apps_node, top_node); gtk_tree_store_set(tree, &apps_node, COLUMN_NAME, NODE4, COLUMN_DATA, (gpointer) NULL, -1); } gtk_tree_view_expand_all(GTK_TREE_VIEW(gfm_widget.tree)); }
// The main function int main(int argc, char **argv) { char *msg = NULL; char buffer[256]; int i; int ret; // init library tifiles_library_init(); // test tifiles.c printf("Library version : <%s>\n", tifiles_version_get()); printf("--\n"); // test error.c tifiles_error_get(515, &msg); printf("Error message: <%s>\n", msg); #ifndef __WIN32__ free(msg); #endif printf("--\n"); // test type2str.c printf("tifiles_string_to_model: <%i> <%i>\n", CALC_TI92, tifiles_string_to_model(tifiles_model_to_string(CALC_TI92))); printf("tifiles_string_to_attribute: <%i> <%i>\n", ATTRB_LOCKED, tifiles_string_to_attribute(tifiles_attribute_to_string(ATTRB_LOCKED))); printf("tifiles_string_to_class: <%i> <%i>\n", TIFILE_SINGLE, tifiles_string_to_class(tifiles_class_to_string(TIFILE_SINGLE))); printf("--\n"); // test filetypes.c for(i = CALC_TI73; i <= CALC_V200; i++) { printf("%s (%i) ", tifiles_fext_of_group(i), i); } printf("\n"); for(i = CALC_TI73; i <= CALC_V200; i++) { printf("%s ", tifiles_fext_of_backup(i)); } printf("\n"); for(i = CALC_TI73; i <= CALC_V200; i++) { printf("%s ", tifiles_fext_of_flash_os(i)); } printf("\n"); for(i = CALC_TI73; i <= CALC_V200; i++) { printf("%s ", tifiles_fext_of_flash_app(i)); } printf("\n"); printf("--\n"); printf("<%s> <%s>\n", "foo.bar", tifiles_fext_get("foo.bar")); ret = tifiles_file_is_ti(PATH("misc/str.92s")); printf("tifiles_file_is_ti: %i\n", ret); ret = tifiles_file_is_single(PATH("misc/str.92s")); printf("tifiles_file_is_single: %i\n", ret); ret = tifiles_file_is_group(PATH("misc/group.92g")); printf("tifiles_file_is_group: %i\n", ret); ret = tifiles_file_is_regular(PATH("misc/str.92s")); printf("tifiles_file_is_regular: %i\n", ret); ret = tifiles_file_is_regular(PATH("misc/group.92g")); printf("tifiles_file_is_regular: %i\n", ret); ret = tifiles_file_is_backup(PATH("misc/backup.83b")); printf("tifiles_file_is_backup: %i\n", ret); ret = tifiles_file_is_flash(PATH("misc/ticabfra.89k")); printf("tifiles_file_is_flash: %i\n", ret); ret = tifiles_file_is_flash(PATH("misc/TI73_OS160.73U")); printf("tifiles_file_is_flash: %i\n", ret); ret = tifiles_file_is_tib(PATH("misc/ams100.tib")); printf("tifiles_file_is_tib: %i\n", ret); ret = tifiles_file_is_tigroup(PATH("misc/test.tig")); printf("tifiles_file_is_tigroup: %i\n", ret); printf("--\n"); // test typesxx.c printf("tifiles_file_get_model: %s\n", tifiles_model_to_string(tifiles_file_get_model(PATH("misc/str.92s")))); printf("tifiles_file_get_class: %s\n", tifiles_class_to_string(tifiles_file_get_class(PATH("misc/group.92g")))); printf("tifiles_file_get_type: %s\n", tifiles_file_get_type(PATH("misc/TI73_OS160.73U"))); printf("tifiles_file_get_icon: %s\n", tifiles_file_get_icon(PATH("misc/str.92s"))); printf("--\n"); // test misc.c printf("tifiles_calc_is_ti8x: %i\n", tifiles_calc_is_ti8x(CALC_TI83)); printf("tifiles_calc_is_ti9x: %i\n", tifiles_calc_is_ti9x(CALC_TI89)); printf("tifiles_has_folder: %i\n", tifiles_has_folder(CALC_TI92)); printf("tifiles_is_flash: %i\n", tifiles_is_flash(CALC_TI73)); printf("tifiles_get_varname: <%s>\n", tifiles_get_varname("fld\\var")); printf("tifiles_get_fldname: <%s>\n", tifiles_get_fldname("fld\\var")); tifiles_build_fullname(CALC_TI89, buffer, "fld", "var"); printf("tifiles_build_fullname: <%s>\n", buffer); printf("--\n"); // test filesxx.c & grouped.c do { // TI73 support change_dir(PATH("ti73")); ret = test_ti73_backup_support(); if (ret) break; ret = test_ti73_regular_support(); if (ret) break; ret = test_ti73_group_support(); if (ret) break; ret = test_ti73_ungroup_support(); if (ret) break; // TI82 support change_dir(PATH("ti82")); ret = test_ti82_backup_support(); if (ret) break; ret = test_ti82_regular_support(); if (ret) break; ret = test_ti82_group_support(); if (ret) break; ret = test_ti82_ungroup_support(); if (ret) break; // TI83 support change_dir(PATH("ti83")); ret = test_ti83_backup_support(); if (ret) break; ret = test_ti83_regular_support(); if (ret) break; ret = test_ti83_group_support(); if (ret) break; ret = test_ti83_ungroup_support(); if (ret) break; // TI84+ support change_dir(PATH("ti84p")); ret = test_ti84p_regular_support(); if (ret) break; ret = test_ti84p_group_support(); if (ret) break; ret = test_ti84p_ungroup_support(); if (ret) break; ret = test_ti84p_flash_support(); if (ret) break; // TI85 support change_dir(PATH("ti85")); ret = test_ti85_regular_support(); if (ret) break; // TI86 support change_dir(PATH("ti86")); ret = test_ti86_backup_support(); if (ret) break; ret = test_ti86_regular_support(); if (ret) break; ret = test_ti86_group_support(); if (ret) break; ret = test_ti86_ungroup_support(); if (ret) break; // TI89 support change_dir(PATH("ti89")); ret = test_ti89_regular_support(); if (ret) break; ret = test_ti89_flash_support(); if (ret) break; ret = test_v200_regular_support(); if (ret) break; // TI92 support change_dir(PATH("ti92")); ret = test_ti92_backup_support(); if (ret) break; ret = test_ti92_regular_support(); if (ret) break; ret = test_ti92_group_support(); if (ret) break; ret = test_ti92_ungroup_support(); if (ret) break; // TIXX certificates change_dir(PATH("certs")); ret = test_ti8x_cert_support(); if (ret) break; ret = test_ti9x_cert_support(); if (ret) break; // Add/Del files change_dir(PATH("misc")); ret = test_ti8x_group_merge(); if (ret) break; change_dir(PATH("tig")); ret = test_tigroup(); } while(0); // end of test tifiles_library_exit(); return ret; }
GLADE_CB gboolean on_treeview1_button_press_event(GtkWidget * widget, GdkEventButton * event, gpointer user_data) { GtkTreeView *view = GTK_TREE_VIEW(gfm_widget.tree); GtkTreeModel *model = GTK_TREE_MODEL(tree); GtkTreePath *path; GtkTreeViewColumn *column; GtkTreeIter iter; VarEntry *ve; int col; gtk_tree_view_get_cursor(view, &path, &column); col = column2index(column); if (path == NULL) return FALSE; gtk_tree_model_get_iter(model, &iter, path); gtk_tree_model_get(model, &iter, COLUMN_DATA, &ve, -1); if (ve == NULL) return FALSE; if((event->type == GDK_2BUTTON_PRESS) && (col == COLUMN_ATTR)) { GdkPixbuf *pix1, *pix2, *pix3; pix1 = create_pixbuf("attr_none.xpm"); pix2 = create_pixbuf("attr_locked.xpm"); pix3 = create_pixbuf("attr_archived.xpm"); if(ve->type == tifiles_flash_type(GFMFile.model)) return FALSE; if(ve->attr == ATTRB_NONE) ve->attr = ATTRB_LOCKED; else if(ve->attr == ATTRB_LOCKED && tifiles_is_flash(GFMFile.model)) ve->attr = ATTRB_ARCHIVED; else if(ve->attr == ATTRB_LOCKED && !tifiles_is_flash(GFMFile.model)) ve->attr = ATTRB_NONE; else if(ve->attr == ATTRB_ARCHIVED) ve->attr = ATTRB_NONE; switch (ve->attr) { case ATTRB_NONE: gtk_tree_store_set(tree, &iter, COLUMN_ATTR, pix1, -1); break; case ATTRB_LOCKED: gtk_tree_store_set(tree, &iter, COLUMN_ATTR, pix2, -1); break; case ATTRB_ARCHIVED: gtk_tree_store_set(tree, &iter, COLUMN_ATTR, pix3, -1); break; default: break; } g_object_unref(pix1); g_object_unref(pix2); g_object_unref(pix3); labels_refresh(); } return FALSE; }
void ctree_refresh(void) { GdkPixbuf *pix1, *pix2, *pix3, *pix4, *pix5, *pix6, *pix7; GdkPixbuf *pix9 = NULL; GtkTreeIter pareng_node; GtkTreeIter child_node; GNode *vars, *apps; int i, j; if (GFMFile.trees.vars == NULL) return; // place base nodes ctree_set_basetree(); memcpy(&pareng_node, &vars_node, sizeof(GtkTreeIter)); // load pixmaps pix1 = create_pixbuf("ctree_open_dir.xpm"); pix2 = create_pixbuf("TIicon2.ico"); pix3 = create_pixbuf("ctree_open_dir.xpm"); pix4 = create_pixbuf("attr_locked.xpm"); pix5 = create_pixbuf("attr_archived.xpm"); pix6 = create_pixbuf("TIicon4.ico"); pix7 = create_pixbuf("attr_none.xpm"); // variables tree vars = GFMFile.trees.vars; for (i = 0; i < (int)g_node_n_children(vars); i++) { GNode *parent = g_node_nth_child(vars, i); VarEntry *fe = (VarEntry *) (parent->data); if ((fe != NULL) || tifiles_calc_is_ti9x(GFMFile.model)) { char *utf8 = ticonv_varname_to_utf8(GFMFile.model, fe->name, -1); gtk_tree_store_append(tree, &pareng_node, &vars_node); gtk_tree_store_set(tree, &pareng_node, COLUMN_NAME, utf8, COLUMN_DATA, (gpointer) fe, COLUMN_ICON, pix1, COLUMN_EDIT, FALSE, -1); ticonv_utf8_free(utf8); } for (j = 0; j < (int)g_node_n_children(parent); j++) { GNode *node = g_node_nth_child(parent, j); gchar **row_text = g_malloc0((CTREE_NCOLS + 1) * sizeof(gchar *)); VarEntry *ve = (VarEntry *) (node->data); char icon_name[256]; char * utf8 = ticonv_varname_to_utf8(GFMFile.model, ve->name, ve->type); row_text[0] = g_strdup(utf8); ticonv_utf8_free(utf8); row_text[2] = g_strdup_printf("%s", tifiles_vartype2string(GFMFile.model, ve->type)); tilp_var_get_size(ve, &row_text[3]); strcpy(icon_name, tifiles_vartype2icon(GFMFile.model, ve->type)); strcat(icon_name, ".ico"); tilp_file_underscorize(icon_name); pix9 = create_pixbuf(icon_name); // ticonv wrapper tilp_vars_translate(row_text[0]); gtk_tree_store_append(tree, &child_node, &pareng_node); gtk_tree_store_set(tree, &child_node, COLUMN_NAME, row_text[0], COLUMN_TYPE, row_text[2], COLUMN_SIZE, row_text[3], COLUMN_DATA, (gpointer) ve, COLUMN_ICON, pix9, COLUMN_FONT, FONT_NAME, COLUMN_EDIT, TRUE, -1); switch (ve->attr) { case ATTRB_NONE: gtk_tree_store_set(tree, &child_node, COLUMN_ATTR, pix7, -1); break; case ATTRB_LOCKED: gtk_tree_store_set(tree, &child_node, COLUMN_ATTR, pix4, -1); break; case ATTRB_ARCHIVED: gtk_tree_store_set(tree, &child_node, COLUMN_ATTR, pix5, -1); break; default: break; } g_object_unref(pix9); g_strfreev(row_text); } } // appplications tree apps = GFMFile.trees.apps; for (i = 0; i < (int)g_node_n_children(apps) && tifiles_is_flash(GFMFile.model); i++) { GNode *parent = g_node_nth_child(apps, i); for (j = 0; j < (int)g_node_n_children(parent); j++) { GNode *node = g_node_nth_child(parent, j); gchar **row_text = g_malloc0((CTREE_NCOLS + 1) * sizeof(gchar *)); VarEntry *ve = (VarEntry *) (node->data); char icon_name[256]; char * utf8 = ticonv_varname_to_utf8(GFMFile.model, ve->name, ve->type); row_text[0] = g_strdup(utf8); ticonv_utf8_free(utf8); row_text[2] = g_strdup_printf("%s", tifiles_vartype2string(GFMFile.model, ve->type)); row_text[3] = g_strdup_printf("%u", (int) (ve->size)); strcpy(icon_name, tifiles_vartype2icon(GFMFile.model, ve->type)); strcat(icon_name, ".ico"); tilp_file_underscorize(icon_name); pix9 = create_pixbuf(icon_name); gtk_tree_store_append(tree, &child_node, &apps_node); gtk_tree_store_set(tree, &child_node, COLUMN_NAME, row_text[0], COLUMN_TYPE, row_text[2], COLUMN_SIZE, row_text[3], COLUMN_DATA, (gpointer) ve, COLUMN_ICON, pix9, COLUMN_FONT, FONT_NAME, -1); g_object_unref(pix9); g_strfreev(row_text); } } gtk_tree_view_expand_all(GTK_TREE_VIEW(gfm_widget.tree)); g_object_unref(pix1); g_object_unref(pix2); g_object_unref(pix3); g_object_unref(pix4); g_object_unref(pix5); g_object_unref(pix6); }