diff --git a/source/ubl-settings-video.c b/source/ubl-settings-video.c index 0967090..628fc5b 100644 --- a/source/ubl-settings-video.c +++ b/source/ubl-settings-video.c @@ -754,16 +754,54 @@ void yon_monitor_view_draw_all(GtkWidget *cnt){ gtk_container_remove(GTK_CONTAINER(container),window->templateMonitorscreenOverlay); } } - if (container) + dictionary *boxes=NULL; + if (videoconfig.monitor_output_layers) + for_dictionaries(boxes,videoconfig.monitor_output_layers){ + gtk_widget_destroy((GtkWidget*)boxes->data); + if (boxes->prev) + free(boxes->prev); + boxes->prev=NULL; + } + free(boxes); + videoconfig.monitor_output_layers=NULL; + int overall_width=10; + yon_dictionary_add_or_create_if_exists_with_data(videoconfig.monitor_output_layers,"Box",gtk_box_new(GTK_ORIENTATION_HORIZONTAL,0)); + gtk_box_pack_start(GTK_BOX(videoconfig.pack_box),(GtkWidget*)videoconfig.monitor_output_layers->data,0,0,0); + gtk_widget_show((GtkWidget*)videoconfig.monitor_output_layers->data); for_dictionaries(dict,videoconfig.monitor_visuals){ monitor_window *window = yon_dictionary_get_data(dict,monitor_window*); if(dict->first==dict) {} else { - gtk_box_pack_start(GTK_BOX(container),window->templateMonitorscreenOverlay,0,0,0); + overall_width+=150; + gtk_box_pack_start(GTK_BOX(((GtkWidget*)videoconfig.monitor_output_layers->data)),window->templateMonitorscreenOverlay,0,0,0); + } + int width=0; + GdkWindow *cur_window = gtk_widget_get_window(videoconfig.pack_box); + if(cur_window) + width = gdk_window_get_width(cur_window); + printf("%d - %d\n",width,overall_width); + if (overall_width+150>width){ + overall_width=10; + yon_dictionary_add_or_create_if_exists_with_data(videoconfig.monitor_output_layers,"Box",gtk_box_new(GTK_ORIENTATION_HORIZONTAL,0)); + gtk_box_pack_start(GTK_BOX(videoconfig.pack_box),(GtkWidget*)videoconfig.monitor_output_layers->data,0,0,0); } + } + gtk_widget_show((GtkWidget*)videoconfig.monitor_output_layers->data); monitor_window *window = yon_dictionary_get_data(videoconfig.monitor_visuals->first,monitor_window*); - gtk_box_pack_start(GTK_BOX(container),window->templateMonitorscreenOverlay,0,0,0); + gtk_box_pack_start(GTK_BOX(((GtkWidget*)videoconfig.monitor_output_layers->data)),window->templateMonitorscreenOverlay,0,0,0); + + + // if (container) + // for_dictionaries(dict,videoconfig.monitor_visuals){ + // monitor_window *window = yon_dictionary_get_data(dict,monitor_window*); + // if(dict->first==dict) {} + // else { + // gtk_box_pack_start(GTK_BOX(container),window->templateMonitorscreenOverlay,0,0,0); + // } + // } + // monitor_window *window = yon_dictionary_get_data(videoconfig.monitor_visuals->first,monitor_window*); + // gtk_box_pack_start(GTK_BOX(container),window->templateMonitorscreenOverlay,0,0,0); } yon_monitor_view_update(); } @@ -1417,9 +1455,10 @@ void yon_adapter_window_setup(widgets_dict *widgets){ yon_char_divide_search(product,"=",-1); char *vendor = yon_config_get_parameter(rtn,size,"vendor"); yon_char_divide_search(vendor,"=",-1); - char *driver_use = yon_config_get_parameter(rtn,size,"Kernel_driver_in_use"); + char *driver_use = yon_config_get_parameter(rtn,size,"Kernel-driver-in-use"); yon_char_divide_search(driver_use,"=",-1); - char *driver_all = yon_config_get_parameter(rtn,size,"Kernel_modules"); + char *driver_all = yon_config_get_parameter(rtn,size,"Kernel-modules"); + driver_all = yon_char_replace(driver_all,"-"," "); yon_char_divide_search(driver_all,"=",-1); char *final_text = yon_char_unite("",DESCRIPTION_LABEL,": ",_(desc), "\n",VENDOR_LABEL,": ",vendor, @@ -1554,8 +1593,8 @@ void yon_setup_widgets(widgets_dict *widgets) widgets->driverDriverColumn = GTK_TREE_VIEW_COLUMN(gtk_builder_get_object(widgets->builder, "driverDriverColumn")); widgets->driverDescriptionColumn = GTK_TREE_VIEW_COLUMN(gtk_builder_get_object(widgets->builder, "driverDescriptionColumn")); widgets->driverSupportedColumn = GTK_TREE_VIEW_COLUMN(gtk_builder_get_object(widgets->builder, "driverSupportedColumn")); - - gtk_window_set_title(GTK_WINDOW(widgets->MainWindow),TITLE_LABEL); + videoconfig.pack_box=widgets->mainMonitorVisualConfigurationBox; + gtk_window_set_title(GTK_WINDOW(widgets->MainWindow),SETTINGS_VIDEO_TITLE_LABEL); videoconfig.list = GTK_LIST_STORE(gtk_builder_get_object(widgets-> builder, "liststore6")); videoconfig.list2 = GTK_LIST_STORE(gtk_builder_get_object(widgets-> builder, "liststore1")); @@ -1736,7 +1775,7 @@ int main(int argc, char *argv[]) } } - if (0){ + if (getuid()!=0){ char *args=""; for (int i=0;i 5 5 5 - 10 + vertical