#include #include #include #include #include #include #include #include #include #include #include #include #ifdef WEBKIT_FOUND #include #endif #include "ubl-strings.h" #define WIKI_LINK "https://wiki.ublinux.ru/ru/Программное_обеспечение/Программы_и_утилиты/Все/ubl-settings-system" #define _(String) gettext(String) #define glade_path "/com/ublinux/ui/ubl-settings-system.glade" #define glade_locales_path "/com/ublinux/ui/ubl-settings-system-layouts.glade" #define banner_path "/com/ublinux/images/ubl-settings-system-banner.png" #define CssPath "/com/ublinux/css/ubl-settings-system.css" #define config_path yon_char_unite(yon_ubl_user_get_home_directory(),"/.config/",LocaleName,"/",LocaleName,".conf",NULL) #define locale_transcriptions_path "/usr/share/ubl-settings-system/csv/locales.csv" #define LocalePath "/usr/share/locale" #define LocaleName "ubl-settings-system" #define config_global_load_command "ubconfig --source global get " #define config_local_load_command "ubconfig --source system get " #define get_locales_command "grep '' /usr/share/ubl-settings-system/csv/locales.csv" #define get_fonts_command "grep '' /usr/share/ubl-settings-system/csv/fonts.csv" #define get_id_command "grep '' /etc/machine-id" // #define get_fonts_command "ls /usr/share/kbd/consolefonts/ |grep -v \"README\"|grep -oE \"^[-a-zA-Z0-9_]{3,}.psf\"|sed -e 's/\\.psf//g'" #define config_get_local_command "ubconfig --source system get system HOSTNAME MACHINEID", "ubconfig --source system get locale CONSOLE_FONT LOCALE LANG" #define config_get_global_command "ubconfig --source global get system HOSTNAME MACHINEID", "ubconfig --source global get locale CONSOLE_FONT LOCALE LANG" #define config_get_default_command "" #define config_get_global_only_parameters "" #define config_get_local_only_parameters "" #define hostname_parameter "HOSTNAME" #define id_parameter "MACHINEID" #define keyboard_layout_parameter "XKBLAYOUT" #define console_font_parameter "CONSOLE_FONT" #define num_lock_boot_parameter "NUMLOCK" #define language_parameter "LANG" #define locale_parameter "LOCALE" #define LOCALE_get_command "ubconfig --source global get [locale] LOCALE" #define HOSTNAME_get_command "ubconfig --source global get [system] HOSTNAME" #define MACHINEID_get_command "ubconfig --source global get [system] MACHINEID" #define CONSOLE_FONT_get_command "ubconfig --source global get [locale] CONSOLE_FONT" // #define NUMLOCK_get_command "ubconfig --source global get [locale] NUMLOCK" #define LANG_get_command "ubconfig --source global get [locale] LANG" typedef char* string; string version_application; char *local; typedef struct { // Standard config. DO NOT EDIT - MUST BE SAME AS ublsettings-ui's template_config STRUCT { int socket_id; int load_socket_id; int save_socket_id; int lock_help; int lock_save_local; int lock_save_global; int lock_load_global; int lock_load_system; int load_mode; int always_open_documentation; // } Standard config. DO NOT EDIT - MUST BE SAME AS ublsettings-ui's template_config STRUCT // Type custom parameters below: GtkListStore *localeslist; } config; typedef struct { // Standard widgets. DO NOT EDIT - MUST BE SAME AS ublsettings-ui's template_main_window STRUCT { GtkWidget *Window; GtkWidget *HeadLabel; GtkWidget *PlugBox; GtkWidget *HeadOverlay; GtkWidget *HeadImage; GtkWidget *HeadBox; GtkWidget *HeadTitleLabel; GtkWidget *HeadInfoLabel; GtkWidget *StatusBox; GtkWidget *StatusIcon; GtkWidget *StatusLabel; GtkWidget *SaveMenuItem; GtkWidget *SaveGlobalMenuItem; GtkWidget *SaveLocalMenuItem; GtkWidget *RightBox; GtkWidget *LoadGlobalMenuItem; GtkWidget *LoadLocalMenuItem; GtkWidget *LeftBox; GtkWidget *DocumentationMenuItem; GtkWidget *AboutMenuItem; GtkWidget *InterfaceBox; // } Standard widgets. DO NOT EDIT - MUST BE SAME AS ublsettings-ui's template_main_window STRUCT // Type custom parameters below: // Custom GtkWidget *HostnameEntry; GtkWidget *IDCombo; GtkWidget *IDEntry; GtkWidget *IDCopyButton; GtkWidget *ConsoleFontCombo; GtkWidget *LanguageCombo; GtkWidget *LocaleButton; GtkWidget *LocaleEntry; GtkListStore *fontlist; GtkListStore *languagelist; } main_window; typedef struct { GtkWidget *Window; GtkWidget *HatText; GtkWidget *HeaderText; GtkWidget *InfoText; GtkWidget *AlwaysOpenCheck; GtkWidget *CloseButton; GtkWidget *AcceptButton; } documentation_confirmation_window; typedef struct { GtkWidget *Window; GtkWidget *MainTree; GtkWidget *CloseButton; GtkWidget *AcceptButton; GtkCellRenderer *ToggleCell; } locals_window; main_window *setup_window(); void on_id_changed(GtkEntry *self, main_window *widgets);