|
|
|
@ -97,7 +97,29 @@ void on_toggle_button_toggled(GtkWidget *self, main_window *widgets){
|
|
|
|
|
|
|
|
|
|
|
|
} else if (self == widgets->RepositoriesRepoListConfigurationCheck||self == widgets->RepositoriesDisableSystemReposCheck){
|
|
|
|
} else if (self == widgets->RepositoriesRepoListConfigurationCheck||self == widgets->RepositoriesDisableSystemReposCheck){
|
|
|
|
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->RepositoriesRepoListConfigurationCheck))){
|
|
|
|
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->RepositoriesRepoListConfigurationCheck))){
|
|
|
|
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->RepositoriesDisableSystemReposCheck))){
|
|
|
|
int disable_repo_active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->RepositoriesDisableSystemReposCheck));
|
|
|
|
|
|
|
|
GtkTreeModel *model = GTK_TREE_MODEL(widgets->ReposList);
|
|
|
|
|
|
|
|
GtkTreeIter iter;
|
|
|
|
|
|
|
|
int size;
|
|
|
|
|
|
|
|
config_str parsed = yon_config_load(get_all_standard_repos,&size);
|
|
|
|
|
|
|
|
for(int i=0;i<size;i++){
|
|
|
|
|
|
|
|
free(yon_char_divide_search(parsed[i],"[",-1));
|
|
|
|
|
|
|
|
char *temp = yon_char_divide_search(parsed[i],"]",-1);
|
|
|
|
|
|
|
|
free(parsed[i]);
|
|
|
|
|
|
|
|
parsed[i]=temp;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
for_iter(model,&iter){
|
|
|
|
|
|
|
|
char *name;
|
|
|
|
|
|
|
|
gtk_tree_model_get(model,&iter,1,&name,-1);
|
|
|
|
|
|
|
|
if (yon_char_parsed_check_exist(parsed,size,name)!=-1){
|
|
|
|
|
|
|
|
if (disable_repo_active){
|
|
|
|
|
|
|
|
gtk_list_store_set(widgets->ReposList,&iter,5,!disable_repo_active,-1);
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (disable_repo_active){
|
|
|
|
yon_config_register(REPOSITORY_parameter,REPOSITORY_parameter_command,"only");
|
|
|
|
yon_config_register(REPOSITORY_parameter,REPOSITORY_parameter_command,"only");
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
yon_config_register(REPOSITORY_parameter,REPOSITORY_parameter_command,"enable");
|
|
|
|
yon_config_register(REPOSITORY_parameter,REPOSITORY_parameter_command,"enable");
|
|
|
|
@ -233,16 +255,6 @@ void yon_interface_update(main_window *widgets){
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->RepositoriesRepoListConfigurationCheck),0);
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->RepositoriesRepoListConfigurationCheck),0);
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->RepositoriesDisableSystemReposCheck),0);
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->RepositoriesDisableSystemReposCheck),0);
|
|
|
|
if (!yon_char_is_empty(repo_config)){
|
|
|
|
if (!yon_char_is_empty(repo_config)){
|
|
|
|
if (!strcmp(repo_config,"disable")){
|
|
|
|
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->RepositoriesRepoListConfigurationCheck),0);
|
|
|
|
|
|
|
|
} else if (!strcmp(repo_config,"enable")){
|
|
|
|
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->RepositoriesRepoListConfigurationCheck),1);
|
|
|
|
|
|
|
|
}else if (!strcmp(repo_config,"only")){
|
|
|
|
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->RepositoriesDisableSystemReposCheck),1);
|
|
|
|
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->RepositoriesRepoListConfigurationCheck),1);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
config_str repos = yon_config_get_all_by_key(REPOSITORY_search,&size);
|
|
|
|
config_str repos = yon_config_get_all_by_key(REPOSITORY_search,&size);
|
|
|
|
for (int i=0;i<size;i++){
|
|
|
|
for (int i=0;i<size;i++){
|
|
|
|
char *current = yon_char_new(repos[i]);
|
|
|
|
char *current = yon_char_new(repos[i]);
|
|
|
|
@ -255,13 +267,41 @@ void yon_interface_update(main_window *widgets){
|
|
|
|
gtk_list_store_append(widgets->ReposList,&iter);
|
|
|
|
gtk_list_store_append(widgets->ReposList,&iter);
|
|
|
|
char *temp = strstr(parsed[0],",")?yon_char_replace(parsed[0],",","\n"):parsed[0];
|
|
|
|
char *temp = strstr(parsed[0],",")?yon_char_replace(parsed[0],",","\n"):parsed[0];
|
|
|
|
parsed[0] = temp;
|
|
|
|
parsed[0] = temp;
|
|
|
|
gtk_list_store_set(widgets->ReposList,&iter,0,(cur_size>3&&!strcmp(parsed[3],""))||cur_size<3?1:0,1,key,2,parsed[0],3,cur_size>1?parsed[1]:"",4,cur_size>2?parsed[2]:"",-1);
|
|
|
|
gtk_list_store_set(widgets->ReposList,&iter,0,(cur_size>3&&!strcmp(parsed[3],""))||cur_size<3?1:0,1,key,2,parsed[0],3,cur_size>1?parsed[1]:"",4,cur_size>2?parsed[2]:"",5,1,-1);
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
free(key);
|
|
|
|
free(key);
|
|
|
|
free(current);
|
|
|
|
free(current);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
yon_char_parsed_free(repos,size);
|
|
|
|
yon_char_parsed_free(repos,size);
|
|
|
|
|
|
|
|
if (!strcmp(repo_config,"disable")){
|
|
|
|
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->RepositoriesRepoListConfigurationCheck),0);
|
|
|
|
|
|
|
|
} else if (!strcmp(repo_config,"enable")){
|
|
|
|
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->RepositoriesRepoListConfigurationCheck),1);
|
|
|
|
|
|
|
|
}else if (!strcmp(repo_config,"only")){
|
|
|
|
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->RepositoriesDisableSystemReposCheck),1);
|
|
|
|
|
|
|
|
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widgets->RepositoriesRepoListConfigurationCheck),1);
|
|
|
|
|
|
|
|
int disable_repo_active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widgets->RepositoriesDisableSystemReposCheck));
|
|
|
|
|
|
|
|
GtkTreeModel *model = GTK_TREE_MODEL(widgets->ReposList);
|
|
|
|
|
|
|
|
GtkTreeIter iter;
|
|
|
|
|
|
|
|
int size;
|
|
|
|
|
|
|
|
config_str parsed = yon_config_load(get_all_standard_repos,&size);
|
|
|
|
|
|
|
|
for(int i=0;i<size;i++){
|
|
|
|
|
|
|
|
free(yon_char_divide_search(parsed[i],"[",-1));
|
|
|
|
|
|
|
|
char *temp = yon_char_divide_search(parsed[i],"]",-1);
|
|
|
|
|
|
|
|
free(parsed[i]);
|
|
|
|
|
|
|
|
parsed[i]=temp;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
for_iter(model,&iter){
|
|
|
|
|
|
|
|
char *name;
|
|
|
|
|
|
|
|
gtk_tree_model_get(model,&iter,1,&name,-1);
|
|
|
|
|
|
|
|
if (yon_char_parsed_check_exist(parsed,size,name)!=-1){
|
|
|
|
|
|
|
|
gtk_list_store_set(widgets->ReposList,&iter,5,!disable_repo_active,-1);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
{
|
|
|
|
{
|
|
|
|
int repos_size;
|
|
|
|
int repos_size;
|
|
|
|
|