|
|
|
|
@ -114,6 +114,21 @@ void on_file_chooser_entry_changed(GtkEntry *self, file_chooser_window *window){
|
|
|
|
|
if (!yon_char_is_empty(text)) free(pattern);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void on_file_chooser_file_activate(GtkFileChooser *self, repo_add_window *window){
|
|
|
|
|
GtkTreeIter iter;
|
|
|
|
|
GSList *list = gtk_file_chooser_get_filenames(self);
|
|
|
|
|
for (int i=0;i<g_slist_length(list);i++){
|
|
|
|
|
char *path = g_slist_nth_data(list,i);
|
|
|
|
|
char *filename = yon_char_new(path);
|
|
|
|
|
free(yon_char_divide(filename,yon_char_find_last(filename,'/')));
|
|
|
|
|
gtk_list_store_append(window->PackagesList,&iter);
|
|
|
|
|
gtk_list_store_set(window->PackagesList,&iter,1,filename,2,path,-1);
|
|
|
|
|
free(filename);
|
|
|
|
|
g_slist_free(list);
|
|
|
|
|
}
|
|
|
|
|
gtk_widget_destroy(gtk_widget_get_toplevel(GTK_WIDGET(self)));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
file_chooser_window *yon_file_chooser_window_new(){
|
|
|
|
|
file_chooser_window *window = malloc(sizeof(file_chooser_window));
|
|
|
|
|
GtkBuilder *builder = gtk_builder_new_from_resource(glade_path_filechooser);
|
|
|
|
|
@ -221,7 +236,7 @@ void on_storage_disable(GtkWidget *self, storage_config_window *window){
|
|
|
|
|
data->data=NULL;
|
|
|
|
|
GtkTreeIter iter,itar;
|
|
|
|
|
if (gtk_combo_box_get_active_iter(GTK_COMBO_BOX(window->StoragePathCombo),&iter)){
|
|
|
|
|
if (yon_confirmation_dialog_call(self,data)){GtkTreeIter itar;
|
|
|
|
|
if (yon_confirmation_dialog_call(self,data)){
|
|
|
|
|
char *storage;
|
|
|
|
|
const char *id = gtk_combo_box_get_active_id(GTK_COMBO_BOX(window->StoragePathCombo));
|
|
|
|
|
if (id){
|
|
|
|
|
@ -632,6 +647,7 @@ void on_add_package(GtkWidget *self, repo_add_window *window){
|
|
|
|
|
gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(dialog->FileChooserWidget),filter);
|
|
|
|
|
g_signal_connect(G_OBJECT(dialog->CancelButton),"clicked",G_CALLBACK(on_subwindow_close),NULL);
|
|
|
|
|
g_signal_connect(G_OBJECT(dialog->ChooseButton),"clicked",G_CALLBACK(on_add_accept),dict);
|
|
|
|
|
g_signal_connect(G_OBJECT(dialog->FileChooserWidget),"file-activated",G_CALLBACK(on_file_chooser_file_activate),window);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void on_remove_package(GtkWidget *self, repo_add_window *window){
|
|
|
|
|
@ -961,6 +977,7 @@ void on_move_add_package(GtkWidget *self, repo_add_window *window){
|
|
|
|
|
|
|
|
|
|
g_signal_connect(G_OBJECT(dialog->FileChooserWidget),"current-folder-changed",G_CALLBACK(on_folder_changed),dialog);
|
|
|
|
|
g_signal_connect(G_OBJECT(dialog->ChooseButton),"clicked",G_CALLBACK(on_move_add_accept),dict);
|
|
|
|
|
g_signal_connect(G_OBJECT(dialog->FileChooserWidget),"file-activated",G_CALLBACK(on_file_chooser_file_activate),window);
|
|
|
|
|
gtk_widget_show(dialog->Window);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@ -1135,6 +1152,7 @@ void on_remove_add_package(GtkWidget *self, repo_add_window *window){
|
|
|
|
|
|
|
|
|
|
g_signal_connect(G_OBJECT(dialog->FileChooserWidget),"current-folder-changed",G_CALLBACK(on_folder_changed),dialog);
|
|
|
|
|
g_signal_connect(G_OBJECT(dialog->ChooseButton),"clicked",G_CALLBACK(on_move_add_accept),dict);
|
|
|
|
|
g_signal_connect(G_OBJECT(dialog->FileChooserWidget),"file-activated",G_CALLBACK(on_file_chooser_file_activate),window);
|
|
|
|
|
gtk_widget_show(dialog->Window);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|