|
|
|
@ -1854,6 +1854,62 @@ void on_main_delete(GtkWidget *, main_window *widgets){
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void on_user_info_print(GtkWidget *,yon_user_info_window *window){
|
|
|
|
|
|
|
|
filechooser_window *dialog = yon_file_chooser_window_new(GTK_FILE_CHOOSER_ACTION_SAVE);
|
|
|
|
|
|
|
|
yon_gtk_window_setup(GTK_WINDOW(dialog->Window),GTK_WINDOW(window->Window),SAVE_USER_INFO_LABEL,icon_path,"filechooser_window");
|
|
|
|
|
|
|
|
GtkFileFilter *filter = gtk_file_filter_new();
|
|
|
|
|
|
|
|
gtk_file_filter_add_pattern(filter,"*.pdf");
|
|
|
|
|
|
|
|
gtk_file_filter_set_name(filter,"PDF");
|
|
|
|
|
|
|
|
gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(dialog->MainFileChooser),filter);
|
|
|
|
|
|
|
|
if (yon_file_chooser_start(dialog)==GTK_RESPONSE_APPLY){
|
|
|
|
|
|
|
|
char *path = dialog->last_success_selection;
|
|
|
|
|
|
|
|
char *command = user_info_pdf_command(window->target_user,path);
|
|
|
|
|
|
|
|
yon_launch(command);
|
|
|
|
|
|
|
|
free(command);
|
|
|
|
|
|
|
|
free(dialog);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void on_user_info_save(GtkWidget *,yon_user_info_window *window){
|
|
|
|
|
|
|
|
filechooser_window *dialog = yon_file_chooser_window_new(GTK_FILE_CHOOSER_ACTION_SAVE);
|
|
|
|
|
|
|
|
yon_gtk_window_setup(GTK_WINDOW(dialog->Window),GTK_WINDOW(window->Window),SAVE_USER_INFO_LABEL,icon_path,"filechooser_window");
|
|
|
|
|
|
|
|
GtkFileFilter *filter = gtk_file_filter_new();
|
|
|
|
|
|
|
|
gtk_file_filter_add_pattern(filter,"*.txt");
|
|
|
|
|
|
|
|
gtk_file_filter_set_name(filter,"TXT");
|
|
|
|
|
|
|
|
gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(dialog->MainFileChooser),filter);
|
|
|
|
|
|
|
|
if (yon_file_chooser_start(dialog)==GTK_RESPONSE_APPLY){
|
|
|
|
|
|
|
|
char *path = dialog->last_success_selection;
|
|
|
|
|
|
|
|
char *command = user_info_txt_command(window->target_user,path);
|
|
|
|
|
|
|
|
yon_launch(command);
|
|
|
|
|
|
|
|
free(command);
|
|
|
|
|
|
|
|
free(dialog);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
yon_user_info_window *yon_user_info_window_new(){
|
|
|
|
|
|
|
|
yon_user_info_window *window = new(yon_user_info_window);
|
|
|
|
|
|
|
|
GtkBuilder *builder = gtk_builder_new_from_resource(ui_glade_path_debug);
|
|
|
|
|
|
|
|
window->Window = yon_gtk_builder_get_widget(builder,"Window");
|
|
|
|
|
|
|
|
window->Terminal = yon_gtk_builder_get_widget(builder,"DebuggerTerminal");
|
|
|
|
|
|
|
|
window->HeaderImage = yon_gtk_builder_get_widget(builder,"HeaderImage");
|
|
|
|
|
|
|
|
window->PrintButton = gtk_button_new_from_icon_name(icon_path_print,GTK_ICON_SIZE_BUTTON);
|
|
|
|
|
|
|
|
window->SaveButton = gtk_button_new_from_icon_name(icon_path_save,GTK_ICON_SIZE_BUTTON);
|
|
|
|
|
|
|
|
window->target_user = NULL;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
g_signal_connect(G_OBJECT(window->PrintButton),"clicked",G_CALLBACK(on_user_info_print),window);
|
|
|
|
|
|
|
|
g_signal_connect(G_OBJECT(window->SaveButton),"clicked",G_CALLBACK(on_user_info_save),window);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
gtk_image_set_from_icon_name(GTK_IMAGE(window->HeaderImage),icon_path,GTK_ICON_SIZE_BUTTON);
|
|
|
|
|
|
|
|
gtk_widget_set_tooltip_markup(window->PrintButton,PRINT_TOOLTIP_LABEL);
|
|
|
|
|
|
|
|
gtk_widget_set_tooltip_markup(window->SaveButton,SAVE_LABEL);
|
|
|
|
|
|
|
|
GtkWidget *titlebar = gtk_window_get_titlebar(GTK_WINDOW(window->Window));
|
|
|
|
|
|
|
|
gtk_header_bar_pack_end(GTK_HEADER_BAR(titlebar),window->SaveButton);
|
|
|
|
|
|
|
|
gtk_header_bar_pack_end(GTK_HEADER_BAR(titlebar),window->PrintButton);
|
|
|
|
|
|
|
|
gtk_widget_show(window->PrintButton);
|
|
|
|
|
|
|
|
gtk_widget_show(window->SaveButton);
|
|
|
|
|
|
|
|
return window;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void on_user_info(GtkWidget *,main_window *widgets){
|
|
|
|
void on_user_info(GtkWidget *,main_window *widgets){
|
|
|
|
int page = gtk_notebook_get_current_page(GTK_NOTEBOOK(widgets->MainNotebook));
|
|
|
|
int page = gtk_notebook_get_current_page(GTK_NOTEBOOK(widgets->MainNotebook));
|
|
|
|
char *target_user = NULL;
|
|
|
|
char *target_user = NULL;
|
|
|
|
@ -1877,7 +1933,12 @@ void on_user_info(GtkWidget *,main_window *widgets){
|
|
|
|
}
|
|
|
|
}
|
|
|
|
gtk_tree_model_get(model,&iter,2,&target_user,-1);
|
|
|
|
gtk_tree_model_get(model,&iter,2,&target_user,-1);
|
|
|
|
char *command = user_info_command(target_user);
|
|
|
|
char *command = user_info_command(target_user);
|
|
|
|
yon_terminal_window_launch(GTK_WINDOW(widgets->Window),command,yon_char_get_localised_from_lib(SUCCESS_LABEL),yon_char_get_localised_from_lib(FAIL_LABEL));
|
|
|
|
// yon_terminal_window_launch(GTK_WINDOW(widgets->Window),command,yon_char_get_localised_from_lib(SUCCESS_LABEL),yon_char_get_localised_from_lib(FAIL_LABEL));
|
|
|
|
|
|
|
|
yon_user_info_window *window = yon_user_info_window_new();
|
|
|
|
|
|
|
|
window->target_user = target_user;
|
|
|
|
|
|
|
|
yon_gtk_window_setup(GTK_WINDOW(window->Window),GTK_WINDOW(widgets->Window),USER_INFO_LABEL,icon_path,"user_info_window");
|
|
|
|
|
|
|
|
yon_terminal_integrated_start(window->Terminal,command);
|
|
|
|
|
|
|
|
gtk_widget_show(window->Window);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void on_config_update(GtkWidget *, main_window *widgets){
|
|
|
|
void on_config_update(GtkWidget *, main_window *widgets){
|
|
|
|
|