|
|
|
@ -430,6 +430,20 @@ void on_add_target_arch_selection_changed(GtkWidget *target,repo_add_window *win
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
gtk_widget_set_sensitive(window->RepoSignCombo,1);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
gtk_widget_set_sensitive(window->RepoSignCombo,0);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void on_arch_chosen(GtkWidget *target,repo_add_window *window){
|
|
|
|
|
|
|
|
char *path_str = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(window->ArchitectureCombo));
|
|
|
|
|
|
|
|
if (!yon_char_is_empty(path_str)){
|
|
|
|
|
|
|
|
gtk_widget_set_sensitive(window->PackageSignCombo,1);
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
gtk_widget_set_sensitive(window->PackageSignCombo,0);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@ -522,6 +536,10 @@ void on_add_accept(GtkWidget *self, dictionary *dict){
|
|
|
|
if (yon_char_parsed_check_exist(parsed,size,current)==-1){
|
|
|
|
if (yon_char_parsed_check_exist(parsed,size,current)==-1){
|
|
|
|
int name_size;
|
|
|
|
int name_size;
|
|
|
|
config_str name = yon_config_load(yon_get_package_name_from_filename(current),&name_size);
|
|
|
|
config_str name = yon_config_load(yon_get_package_name_from_filename(current),&name_size);
|
|
|
|
|
|
|
|
if (name_size<=0){
|
|
|
|
|
|
|
|
yon_ubl_status_box_spawn(GTK_CONTAINER(dialog->StatusBox),PACKAGE_NAME_ERROR_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
}
|
|
|
|
yon_char_remove_last_symbol(name[0],'\n');
|
|
|
|
yon_char_remove_last_symbol(name[0],'\n');
|
|
|
|
if (name_size<=0){
|
|
|
|
if (name_size<=0){
|
|
|
|
yon_ubl_status_box_spawn(GTK_CONTAINER(dialog->StatusBox),PACKAGE_NAME_ERROR_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
|
|
|
|
yon_ubl_status_box_spawn(GTK_CONTAINER(dialog->StatusBox),PACKAGE_NAME_ERROR_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
|
|
|
|
@ -568,16 +586,7 @@ void on_remove_package(GtkWidget *self, repo_add_window *window){
|
|
|
|
gtk_tree_model_get_iter_from_string(GTK_TREE_MODEL(window->tree_copy),&iter,id);
|
|
|
|
gtk_tree_model_get_iter_from_string(GTK_TREE_MODEL(window->tree_copy),&iter,id);
|
|
|
|
if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(window->PackagesTree)),&model,&itar)){
|
|
|
|
if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(window->PackagesTree)),&model,&itar)){
|
|
|
|
gtk_tree_model_get(GTK_TREE_MODEL(window->tree_copy),&iter,2,&repo,3,&path,-1);
|
|
|
|
gtk_tree_model_get(GTK_TREE_MODEL(window->tree_copy),&iter,2,&repo,3,&path,-1);
|
|
|
|
char *temp = yon_char_divide(path,yon_char_find_last(path,'/'));
|
|
|
|
gtk_list_store_remove(window->PackagesList,&itar);
|
|
|
|
free(path);
|
|
|
|
|
|
|
|
path=temp;
|
|
|
|
|
|
|
|
free(yon_char_divide(path,yon_char_find_last(path,'/')));
|
|
|
|
|
|
|
|
char *cur_name, *cur_path;
|
|
|
|
|
|
|
|
gtk_tree_model_get(GTK_TREE_MODEL(window->PackagesList),&itar,1,&cur_name,2,&cur_path,-1);
|
|
|
|
|
|
|
|
char *command = remove_packages_command(storage,path,repo,cur_name);
|
|
|
|
|
|
|
|
yon_debug_output("%s\n",command);
|
|
|
|
|
|
|
|
yon_launch(command);
|
|
|
|
|
|
|
|
on_add_target_package_selection_changed(window->ArchitectureCombo,window);
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (!gtk_tree_model_get_iter_first(GTK_TREE_MODEL(window->tree_copy),&iter)){
|
|
|
|
if (!gtk_tree_model_get_iter_first(GTK_TREE_MODEL(window->tree_copy),&iter)){
|
|
|
|
gtk_widget_set_sensitive(window->StorageCombo,1);
|
|
|
|
gtk_widget_set_sensitive(window->StorageCombo,1);
|
|
|
|
@ -726,6 +735,7 @@ void on_add_clicked(GtkWidget *self, main_window *widgets){
|
|
|
|
|
|
|
|
|
|
|
|
g_signal_connect(G_OBJECT(window->StorageCombo),"changed",G_CALLBACK(on_add_target_repo_selection_changed),window);
|
|
|
|
g_signal_connect(G_OBJECT(window->StorageCombo),"changed",G_CALLBACK(on_add_target_repo_selection_changed),window);
|
|
|
|
g_signal_connect(G_OBJECT(window->RepositoryCombo),"changed",G_CALLBACK(on_add_target_arch_selection_changed),window);
|
|
|
|
g_signal_connect(G_OBJECT(window->RepositoryCombo),"changed",G_CALLBACK(on_add_target_arch_selection_changed),window);
|
|
|
|
|
|
|
|
g_signal_connect(G_OBJECT(window->ArchitectureCombo),"changed",G_CALLBACK(on_arch_chosen),window);
|
|
|
|
g_signal_connect(G_OBJECT(window->ArchitectureCombo),"changed",G_CALLBACK(on_add_target_package_selection_changed),window);
|
|
|
|
g_signal_connect(G_OBJECT(window->ArchitectureCombo),"changed",G_CALLBACK(on_add_target_package_selection_changed),window);
|
|
|
|
g_signal_connect(G_OBJECT(window->AddButton),"clicked",G_CALLBACK(on_add_packages_accept),dict);
|
|
|
|
g_signal_connect(G_OBJECT(window->AddButton),"clicked",G_CALLBACK(on_add_packages_accept),dict);
|
|
|
|
g_signal_connect(G_OBJECT(window->AddPackageButton),"clicked",G_CALLBACK(on_add_package),window);
|
|
|
|
g_signal_connect(G_OBJECT(window->AddPackageButton),"clicked",G_CALLBACK(on_add_package),window);
|
|
|
|
@ -991,6 +1001,7 @@ void on_remove_clicked(GtkWidget *self, main_window *widgets){
|
|
|
|
|
|
|
|
|
|
|
|
gtk_widget_hide(gtk_widget_get_parent(window->PackageSignCombo));
|
|
|
|
gtk_widget_hide(gtk_widget_get_parent(window->PackageSignCombo));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
g_signal_connect(G_OBJECT(window->ArchitectureCombo),"changed",G_CALLBACK(on_arch_chosen),window);
|
|
|
|
g_signal_connect(G_OBJECT(window->StorageCombo),"changed",G_CALLBACK(on_add_target_repo_selection_changed),window);
|
|
|
|
g_signal_connect(G_OBJECT(window->StorageCombo),"changed",G_CALLBACK(on_add_target_repo_selection_changed),window);
|
|
|
|
g_signal_connect(G_OBJECT(window->RepositoryCombo),"changed",G_CALLBACK(on_add_target_arch_selection_changed),window);
|
|
|
|
g_signal_connect(G_OBJECT(window->RepositoryCombo),"changed",G_CALLBACK(on_add_target_arch_selection_changed),window);
|
|
|
|
g_signal_connect(G_OBJECT(window->ArchitectureCombo),"changed",G_CALLBACK(on_remove_arch_selection_changed),window);
|
|
|
|
g_signal_connect(G_OBJECT(window->ArchitectureCombo),"changed",G_CALLBACK(on_remove_arch_selection_changed),window);
|
|
|
|
@ -1092,12 +1103,17 @@ void on_main_tree_selection_changed(GtkWidget *self, main_window *widgets){
|
|
|
|
config_str parsed = yon_file_ls(target,&size);
|
|
|
|
config_str parsed = yon_file_ls(target,&size);
|
|
|
|
for (int i=0;i<size;i++){
|
|
|
|
for (int i=0;i<size;i++){
|
|
|
|
if (strstr(parsed[i],".tar.")&&!strstr(parsed[i],".files.")&&!strstr(parsed[i],".db.")&&!strstr(parsed[i],".sig")){
|
|
|
|
if (strstr(parsed[i],".tar.")&&!strstr(parsed[i],".files.")&&!strstr(parsed[i],".db.")&&!strstr(parsed[i],".sig")){
|
|
|
|
|
|
|
|
int load_size;
|
|
|
|
gtk_list_store_append(widgets->RepoFileList,&itar);
|
|
|
|
gtk_list_store_append(widgets->RepoFileList,&itar);
|
|
|
|
char *name = yon_char_new(parsed[i]);
|
|
|
|
char *name = yon_char_unite(target,"/",parsed[i]);
|
|
|
|
char *temp = yon_char_divide_search(name,".",-1);
|
|
|
|
config_str load = yon_config_load(yon_get_package_name_from_filename(name),&load_size);
|
|
|
|
|
|
|
|
yon_char_remove_last_symbol(load[i],'\n');
|
|
|
|
|
|
|
|
char *temp = load[0];
|
|
|
|
free(name);
|
|
|
|
free(name);
|
|
|
|
name=temp;
|
|
|
|
name=temp;
|
|
|
|
gtk_list_store_set(widgets->RepoFileList,&itar,1,name,3,parsed[i],-1);
|
|
|
|
gtk_list_store_set(widgets->RepoFileList,&itar,1,name,3,parsed[i],-1);
|
|
|
|
|
|
|
|
free(name);
|
|
|
|
|
|
|
|
yon_char_parsed_free(load,load_size);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|