Сделал открытие всех дочерних окон

pull/24/head
Igor Belitskiy 2 years ago
parent d68681b823
commit fa3d859ab8

@ -105,7 +105,7 @@ uninstall:
install: check uninstall install: check uninstall
@echo "Install ..." @echo "Install ..."
#################################################### УДАЛИТЬ ПЕРЕД КОММИТОМ ################################################################################ #################################################### УДАЛИТЬ ПЕРЕД КОММИТОМ ################################################################################
@gcc source/ubl-cmake.h compile/resources.c compile/ubl-cmake.h source/view_filters.c source/view_filters.h source/view_add_u_g.c source/view_add_u_g.h source/controler.h source/controler.c source/model/philos_utils.h source/model/philos_utils.c source/model/my_device.h source/model/save.h source/model/save.c source/model/my_device.c source/model/model.h source/model/load.h source/model/load.c source/model/model.c source/ubl-settings-diskquota.c source/ubl-settings-diskquota.h source/ubl-strings.h source/model/ubl-utils.c source/model/ubl-utils.h -o ubl-settings-diskquota `pkg-config --cflags --libs gtk+-3.0 vte-2.91 webkit2gtk-4.0 webkit2gtk-web-extension-4.0` -g @gcc source/ubl-cmake.h compile/resources.c compile/ubl-cmake.h source/view_filters.c source/view_filters.h source/view_temp_u_g_p.c source/view_temp_u_g_p.h source/controler.h source/controler.c source/model/philos_utils.h source/model/philos_utils.c source/model/my_device.h source/model/save.h source/model/save.c source/model/my_device.c source/model/model.h source/model/load.h source/model/load.c source/model/model.c source/ubl-settings-diskquota.c source/ubl-settings-diskquota.h source/ubl-strings.h source/model/ubl-utils.c source/model/ubl-utils.h -o ubl-settings-diskquota `pkg-config --cflags --libs gtk+-3.0 vte-2.91 webkit2gtk-4.0 webkit2gtk-web-extension-4.0` -g
#################################################### УДАЛИТЬ ПЕРЕД КОММИТОМ ################################################################################ #################################################### УДАЛИТЬ ПЕРЕД КОММИТОМ ################################################################################
@for FILE_PO in $(wildcard *.po); do \ @for FILE_PO in $(wildcard *.po); do \
LANG=$${FILE_PO##*_};LANG=$${LANG%.*}; \ LANG=$${FILE_PO##*_};LANG=$${LANG%.*}; \

@ -75,8 +75,8 @@ set(SOURCE_FILES
ubl-strings.h ubl-strings.h
view_filters.c view_filters.c
view_filters.h view_filters.h
view_add_u_g.c view_temp_u_g_p.c
view_add_u_g.h view_temp_u_g_p.h
model/ubl-utils.h model/ubl-utils.h
model/ubl-utils.c model/ubl-utils.c
model/model.h model/model.h

@ -136,33 +136,42 @@ void control_event(main_window* _config_main_gui, custom_window* _config_custom_
} }
void wrapper_filters_user_show() { void wrapper_filters_user_show() {
filters_set_name("user");
filters_show(NULL, glade_path); filters_show(NULL, glade_path);
} }
void wrapper_filters_group_show() { void wrapper_filters_group_show() {
filters_set_name("group");
filters_show(NULL, glade_path); filters_show(NULL, glade_path);
} }
void wrapper_filters_project_show() { void wrapper_filters_project_show() {
filters_set_name("project");
filters_show(NULL, glade_path); filters_show(NULL, glade_path);
} }
void wrapper_add_user_show() { void wrapper_add_user_show() {
add_show(NULL, glade_path); set_temp_menu("user", "add");
temp_show(NULL, glade_path);
} }
void wrapper_edit_user_show() { void wrapper_edit_user_show() {
add_show(NULL, glade_path); set_temp_menu("user", "edit");
temp_show(NULL, glade_path);
} }
void wrapper_add_group_show() { void wrapper_add_group_show() {
add_show(NULL, glade_path); set_temp_menu("group", "add");
temp_show(NULL, glade_path);
} }
void wrapper_edit_group_show() { void wrapper_edit_group_show() {
add_show(NULL, glade_path); set_temp_menu("group", "edit");
temp_show(NULL, glade_path);
} }
void wrapper_add_project_show() { void wrapper_add_project_show() {
//add_show(NULL, glade_path); set_temp_menu("project", "add");
temp_show(NULL, glade_path);
} }
void wrapper_edit_project_show() { void wrapper_edit_project_show() {
//add_show(NULL, glade_path); set_temp_menu("project", "edit");
temp_show(NULL, glade_path);
} }
int main(int argc, char *argv[]){ int main(int argc, char *argv[]){

@ -1,5 +1,5 @@
#include "ubl-settings-diskquota.h" #include "ubl-settings-diskquota.h"
#include "view_add_u_g.h" #include "view_temp_u_g_p.h"
char *local; char *local;

@ -38,6 +38,29 @@ typedef struct {
GtkWidget* Window; GtkWidget* Window;
GtkWidget* btnSaveTempSave; GtkWidget* btnSaveTempSave;
GtkWidget* btnTempCancel; GtkWidget* btnTempCancel;
GtkWidget* lblSetUGP;
GtkWidget* lblHeadQuotasEditWindow;
GtkWidget* btnOpenUserGroup;
GtkWidget* lblOpenUserGroup;
GtkWidget* btnReviewProject;
GtkWidget* btnGenerateProject;
GtkWidget* lblSetUGPData;
GtkWidget* entryCatalogProject;
GtkWidget* chbAuto;
GtkWidget* entryProjectName;
GtkWidget* boxProjectAddEdit;
GtkWidget* boxProject;
GtkWidget* lblCatalogProjectEdit;
GtkWidget* lblProjectIdValueEdit;
GtkWidget* entryProjectId;
GtkWidget* wndChooseFileWallpaper;
GtkWidget* btnFilemangerOk;
GtkWidget* btnFilemangerExit;
} temp_set_window; } temp_set_window;
void philos_array_string_remove_char(char*** array, char* str_remove, int size); void philos_array_string_remove_char(char*** array, char* str_remove, int size);
void philos_set_pow_size_memory(char* str_find, int** array_size,int index, char** array_size_pow); void philos_set_pow_size_memory(char* str_find, int** array_size,int index, char** array_size_pow);

@ -1,54 +0,0 @@
#include "view_add_u_g.h"
temp_set_window *add_widgets = NULL;
temp_set_window *get_widget_add() {
return add_widgets;
}
temp_set_window *add_setup_window(char* _glade_path) {
if (add_widgets == NULL) {
add_widgets = malloc(sizeof(temp_set_window));
GtkBuilder *builder = gtk_builder_new_from_resource(_glade_path);
add_widgets->Window = yon_gtk_builder_get_widget(builder,"QuotasEditWindow");
add_widgets->btnSaveTempSave = yon_gtk_builder_get_widget(builder,"quotegroupSaveButton");
add_widgets->btnTempCancel = yon_gtk_builder_get_widget(builder,"quotegroupCancelButton");
add_event(add_widgets);
add_init_windows();
add_localization(add_widgets);
}
return add_widgets;
}
void add_show(GtkWidget *self, char* _glade_path) {
if (add_widgets != NULL) {
gtk_widget_show_all(add_widgets->Window);
add_init_windows();
}
else {
add_setup_window(_glade_path);
gtk_widget_show_all(add_widgets->Window);
}
}
void add_localization(temp_set_window* add_widgets) {
}
void add_init_windows() {
}
void add_event(temp_set_window* add_widgets) {
}
void add_destroy(GtkWidget *self) {
add_widgets = NULL;
}
void add_on_destroy_subwindow(GtkWidget *self) {
gtk_widget_destroy(gtk_widget_get_toplevel(self));
add_widgets = NULL;
}

@ -1,20 +0,0 @@
#include <gtk/gtk.h>
#include <gtk/gtkx.h>
#include "model/ubl-utils.h"
#include <locale.h>
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <libintl.h>
#include <getopt.h>
#include <libintl.h>
#include "ubl-cmake.h"
#include "model/model.h"
#include "model/load.h"
#include "ubl-strings.h"
temp_set_window *add_setup_window(char* _glade_path);
void add_show(GtkWidget *self, char* _glade_path);
void add_init_windows();
void add_event(temp_set_window* add_widgets);
void add_localization(temp_set_window* add_widgets);

@ -1,7 +1,7 @@
#include "view_filters.h" #include "view_filters.h"
char* flag_filters_u_g_p = NULL;
filters_window *filters_widgets = NULL; filters_window *filters_widgets = NULL;
gboolean flag_filters[8]; gboolean flag_filters[10];
filters_window *filters_setup_window(char* glade_path){ filters_window *filters_setup_window(char* glade_path){
if (filters_widgets == NULL) { if (filters_widgets == NULL) {
filters_widgets = malloc(sizeof(filters_window)); filters_widgets = malloc(sizeof(filters_window));
@ -19,9 +19,12 @@ filters_window *filters_setup_window(char* glade_path){
filters_widgets->btnFiltersSave = yon_gtk_builder_get_widget(builder,"btnFiltersSave"); filters_widgets->btnFiltersSave = yon_gtk_builder_get_widget(builder,"btnFiltersSave");
filters_widgets->chbFilterHardLimitFile = yon_gtk_builder_get_widget(builder,"chbFilterHardLimitFile"); filters_widgets->chbFilterHardLimitFile = yon_gtk_builder_get_widget(builder,"chbFilterHardLimitFile");
filters_widgets->chbFilterHardLimitFileDelay = yon_gtk_builder_get_widget(builder,"chbFilterHardLimitFileDelay"); filters_widgets->chbFilterHardLimitFileDelay = yon_gtk_builder_get_widget(builder,"chbFilterHardLimitFileDelay");
filters_widgets->chbTemplate = yon_gtk_builder_get_widget(builder,"chbTemplate"); filters_widgets->chbProjectName = yon_gtk_builder_get_widget(builder,"chbProjectName");
if (strstr(filters_widgets->name,"Project")) { if (strcmp(flag_filters_u_g_p,"project")==0) {
gtk_button_set_label(GTK_BUTTON(filters_widgets->chbFilterName), _("ID"));
}
else {
gtk_widget_hide(filters_widgets->chbProjectName);
} }
filters_event(filters_widgets); filters_event(filters_widgets);
@ -29,10 +32,8 @@ filters_window *filters_setup_window(char* glade_path){
filters_set_flag(); filters_set_flag();
return filters_widgets; return filters_widgets;
} }
void filters_set_name(char* name) { void filters_set_name(char* _flag_filters_u_g_p) {
if (strstr(name,"Project")) { flag_filters_u_g_p = _flag_filters_u_g_p;
filters_widgets->name = name;
}
} }
@ -60,11 +61,11 @@ filters_window *get_widget_filters() {
void filters_show(GtkWidget *self, char* glade_path) { void filters_show(GtkWidget *self, char* glade_path) {
if (filters_widgets != NULL) { if (filters_widgets != NULL) {
gtk_widget_show_all(filters_widgets->Window); gtk_widget_show(filters_widgets->Window);
} }
else { else {
filters_setup_window(glade_path); filters_setup_window(glade_path);
gtk_widget_show_all(filters_widgets->Window); gtk_widget_show(filters_widgets->Window);
} }
} }
@ -79,6 +80,9 @@ gboolean* filters_get_flag() {
flag_filters[7] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSize)); flag_filters[7] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSize));
flag_filters[8] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFile)); flag_filters[8] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFile));
flag_filters[9] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFileDelay)); flag_filters[9] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFileDelay));
if (strcmp(flag_filters_u_g_p,"project")==0) {
flag_filters[10] = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filters_widgets->chbProjectName));
}
return flag_filters; return flag_filters;
} }
@ -93,6 +97,9 @@ void filters_init_flag() {
flag_filters[7] = 1; flag_filters[7] = 1;
flag_filters[8] = 1; flag_filters[8] = 1;
flag_filters[9] = 1; flag_filters[9] = 1;
if (strcmp(flag_filters_u_g_p,"project")==0) {
flag_filters[10] = 1;
}
} }
void filters_set_flag() { void filters_set_flag() {
@ -106,4 +113,7 @@ void filters_set_flag() {
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSize), flag_filters[7]); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterSize), flag_filters[7]);
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFile), flag_filters[8]); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFile), flag_filters[8]);
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFileDelay), flag_filters[9]); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbFilterHardLimitFileDelay), flag_filters[9]);
if (strcmp(flag_filters_u_g_p,"project")==0) {
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filters_widgets->chbProjectName), flag_filters[10]);
}
} }

@ -30,7 +30,7 @@ typedef struct {
GtkWidget* chbFilterSoftLimitFile; GtkWidget* chbFilterSoftLimitFile;
GtkWidget* chbFilterHardLimitFile; GtkWidget* chbFilterHardLimitFile;
GtkWidget* chbFilterHardLimitFileDelay; GtkWidget* chbFilterHardLimitFileDelay;
GtkWidget* chbTemplate; GtkWidget* chbProjectName;
char* name; char* name;
} filters_window; } filters_window;
@ -45,6 +45,6 @@ void filters_destroy(GtkWidget *self);
int* filters_get_flag(); int* filters_get_flag();
void filters_init_flag(); void filters_init_flag();
void filters_set_flag(); void filters_set_flag();
void filters_set_name(char *name); void filters_set_name(char* _flag_u_g_p);
void filters_show(GtkWidget *self, char* glade_path); void filters_show(GtkWidget *self, char* glade_path);
#endif #endif

@ -0,0 +1,151 @@
#include "view_temp_u_g_p.h"
temp_set_window *temp_widgets = NULL;
char* path_project = NULL;
char* flag_temp_u_g_p;
char* set_add_edit;
char* _glade_path = NULL;
temp_set_window *get_widget_temp() {
return temp_widgets;
}
temp_set_window *temp_setup_window_base(char* __glade_path) {
_glade_path = __glade_path;
if (temp_widgets == NULL) {
temp_widgets = malloc(sizeof(temp_set_window));
GtkBuilder *builder = gtk_builder_new_from_resource(_glade_path);
temp_widgets->Window = yon_gtk_builder_get_widget(builder,"QuotasEditWindow");
temp_widgets->btnSaveTempSave = yon_gtk_builder_get_widget(builder,"quotegroupSaveButton");
temp_widgets->btnTempCancel = yon_gtk_builder_get_widget(builder,"quotegroupCancelButton");
temp_setup_window_custom(temp_widgets, builder);
temp_event(temp_widgets);
temp_init_windows();
temp_localization(temp_widgets);
}
return temp_widgets;
}
temp_set_window *temp_setup_window_custom(temp_set_window* temp_widgets, GtkBuilder *builder) {
temp_widgets->lblSetUGP = yon_gtk_builder_get_widget(builder, "lblSetUGP");
temp_widgets->btnOpenUserGroup = yon_gtk_builder_get_widget(builder, "btnOpenUserGroup");
temp_widgets->btnReviewProject = yon_gtk_builder_get_widget(builder, "btnReviewProject");
temp_widgets->btnGenerateProject = yon_gtk_builder_get_widget(builder, "btnGenerateProject");
temp_widgets->lblSetUGPData = yon_gtk_builder_get_widget(builder, "lblSetUGPData");
temp_widgets->entryCatalogProject = yon_gtk_builder_get_widget(builder, "entryCatalogProject");
temp_widgets->chbAuto = yon_gtk_builder_get_widget(builder, "chbAuto");
temp_widgets->btnGenerateProject = yon_gtk_builder_get_widget(builder, "btnGenerateProject");
temp_widgets->entryProjectName = yon_gtk_builder_get_widget(builder, "entryProjectName");
temp_widgets->boxProjectAddEdit = yon_gtk_builder_get_widget(builder, "boxProjectAddEdit");
temp_widgets->boxProject = yon_gtk_builder_get_widget(builder, "boxProject");
temp_widgets->lblOpenUserGroup = yon_gtk_builder_get_widget(builder, "lblOpenUserGroup");
temp_widgets->lblHeadQuotasEditWindow = yon_gtk_builder_get_widget(builder, "lblHeadQuotasEditWindow");
if (strcmp(flag_temp_u_g_p,"project")==0) {
if (strcmp(set_add_edit, "add")==0) {
gtk_widget_hide(temp_widgets->btnOpenUserGroup);
gtk_widget_hide(temp_widgets->lblCatalogProjectEdit);
gtk_widget_hide(temp_widgets->lblProjectIdValueEdit);
gtk_label_set_label(GTK_LABEL(temp_widgets->lblHeadQuotasEditWindow), _("Settings disk quotas - Addition"));
}
else {
gtk_widget_hide(temp_widgets->btnReviewProject);
gtk_widget_hide(temp_widgets->entryCatalogProject);
gtk_widget_hide(temp_widgets->chbAuto);
gtk_widget_hide(temp_widgets->entryProjectId);
gtk_widget_hide(temp_widgets->btnGenerateProject);
gtk_label_set_label(GTK_LABEL(temp_widgets->lblHeadQuotasEditWindow), _("Settings disk quotas - Editing"));
}
}
else {
if (strcmp(flag_temp_u_g_p,"user")==0) {
gtk_label_set_label(GTK_LABEL(temp_widgets->lblOpenUserGroup), _("Users"));
}
else if (strcmp(flag_temp_u_g_p,"group")==0) {
gtk_label_set_label(GTK_LABEL(temp_widgets->lblOpenUserGroup), _("Groups"));
}
if (strcmp(set_add_edit, "add")==0) {
gtk_widget_hide(temp_widgets->boxProject);
gtk_widget_hide(temp_widgets->boxProjectAddEdit);
gtk_widget_hide(temp_widgets->lblSetUGPData);
gtk_label_set_label(GTK_LABEL(temp_widgets->lblHeadQuotasEditWindow), _("Settings disk quotas - Addition"));
}
else {
gtk_widget_hide(temp_widgets->boxProject);
gtk_widget_hide(temp_widgets->boxProjectAddEdit);
gtk_widget_hide(temp_widgets->btnOpenUserGroup);
gtk_label_set_label(GTK_LABEL(temp_widgets->lblHeadQuotasEditWindow), _("Settings disk quotas - Editing"));
}
}
}
void set_temp_menu(char* _flag_temp_u_g_p, char* _set_add_edit) {
flag_temp_u_g_p = _flag_temp_u_g_p;
set_add_edit = _set_add_edit;
}
void temp_show(GtkWidget *self, char* _glade_path) {
if (temp_widgets != NULL) {
gtk_widget_show(temp_widgets->Window);
temp_init_windows();
}
else {
temp_setup_window_base(_glade_path);
gtk_widget_show(temp_widgets->Window);
}
}
void temp_localization(temp_set_window* temp_widgets) {
}
void temp_init_windows() {
}
void temp_event(temp_set_window* temp_widgets) {
g_signal_connect(G_OBJECT(temp_widgets->btnTempCancel),"clicked",G_CALLBACK(temp_on_destroy_subwindow),NULL);
g_signal_connect(G_OBJECT(temp_widgets->Window), "destroy", G_CALLBACK(temp_destroy), NULL);
g_signal_connect(G_OBJECT(temp_widgets->btnOpenUserGroup),"clicked",G_CALLBACK(wrapper_show_file_manager),NULL);
}
void wrapper_show_file_manager() {
GtkBuilder *builder = gtk_builder_new_from_resource(_glade_path);
show_file_manger(temp_widgets, builder);
gtk_widget_show(temp_widgets->wndChooseFileWallpaper);
gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(temp_widgets->wndChooseFileWallpaper),"/home/");
}
void temp_destroy(GtkWidget *self) {
temp_widgets = NULL;
}
void temp_on_destroy_subwindow(GtkWidget *self) {
gtk_widget_destroy(gtk_widget_get_toplevel(self));
temp_widgets = NULL;
}
void show_file_manger(temp_set_window* temp_widgets, GtkBuilder *builder) {
temp_widgets->wndChooseFileWallpaper = yon_gtk_builder_get_widget(builder,"wndChooseFileWallpaper");
temp_widgets->btnFilemangerOk = yon_gtk_builder_get_widget(builder,"btnFilemangerOk");
temp_widgets->btnFilemangerExit = yon_gtk_builder_get_widget(builder,"btnFilemangerExit");
g_signal_connect(G_OBJECT(temp_widgets->btnFilemangerOk),"clicked",G_CALLBACK(btn_ok_file_manager), NULL);
g_signal_connect(G_OBJECT(temp_widgets->btnFilemangerExit),"clicked",G_CALLBACK(destroy_file_manager), NULL);
}
void destroy_file_manager(GtkWidget *self) {
gtk_widget_destroy(gtk_widget_get_toplevel(self));
temp_widgets->wndChooseFileWallpaper = NULL;
temp_widgets->btnFilemangerOk = NULL;
temp_widgets->btnFilemangerExit = NULL;
}
void btn_ok_file_manager(GtkWidget *self) {
path_project = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(temp_widgets->wndChooseFileWallpaper));
destroy_file_manager(self);
}

@ -0,0 +1,30 @@
#include <gtk/gtk.h>
#include <gtk/gtkx.h>
#include "model/ubl-utils.h"
#include <locale.h>
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <libintl.h>
#include <getopt.h>
#include <libintl.h>
#include "ubl-cmake.h"
#include "model/model.h"
#include "model/load.h"
#include "ubl-strings.h"
temp_set_window *temp_setup_window_base(char* _glade_path);
void temp_on_destroy_subwindow(GtkWidget *self);
void temp_destroy(GtkWidget *self);
void temp_show(GtkWidget *self, char* _glade_path);
void temp_init_windows();
void temp_event(temp_set_window* temp_widgets);
void temp_localization(temp_set_window* temp_widgets);
void btn_ok_file_manager(GtkWidget *self);
void set_temp_menu(char* _flag_u_g_p, char* _set_add_edit);
void destroy_file_manager(GtkWidget *self);
void show_file_manger(temp_set_window* temp_widgets, GtkBuilder *builder);
temp_set_window *temp_setup_window_custom(temp_set_window* temp_widgets, GtkBuilder *builder);
void wrapper_show_file_manager();

Binary file not shown.

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save