#include #include #include "ubl-utils.h" #include #include #include #include #include #include #include #include #include #include "../compile/ubl-cmake.h" #ifdef WEBKIT_FOUND #include #endif #include "ubl-strings.h" #define WIKI_LINK "https://wiki.ublinux.ru/ru/Программное_обеспечение/Программы_и_утилиты/Все/ubl-settings-repomanager" #define _(String) gettext(String) #define glade_path "/com/ublinux/ui/ubl-settings-repomanager.glade" #define glade_repo_path "/com/ublinux/ui/ubl-settings-repomanager-windows.glade" #define banner_path "/com/ublinux/images/ubl-settings-repomanager-banner.png" #define CssPath "/com/ublinux/css/ubl-settings-repomanager.css" #define config_path yon_char_unite(yon_ubl_user_get_home_directory(),"/.config/",LocaleName,"/",LocaleName,".conf",NULL) #define LocalePath "/usr/share/locale" #define LocaleName "ubl-settings-repomanager" typedef char* string; #define get_package_info_command(filename) yon_char_unite("LC_ALL=EN pacman -Q --info --file ",filename," |grep -E \"Name|Version|Architecture\" |sed -e 's/ *//g'",NULL) string version_application; char *local; typedef struct { GtkTreeStore *tree_store; int always_open_documentation; int win_pos_x; int win_pos_y; int win_width; int win_height; 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; } config; typedef struct { GtkWidget *Window; GtkWidget *HatLabel; GtkWidget *PlugBox; GtkWidget *HeadOverlay; GtkWidget *HeadImage; GtkWidget *HeadBox; GtkWidget *HeadTitleLabel; GtkWidget *HeadInfoLabel; GtkWidget *StatusBox; GtkWidget *StatusIcon; GtkWidget *StatusLabel; GtkWidget *SaveLabel; GtkWidget *SaveMenuItem; GtkWidget *SaveGlobalMenuItem; GtkWidget *SaveLocalMenuItem; GtkWidget *RightBox; GtkWidget *LoadLabel; GtkWidget *LoadGlobalMenuItem; GtkWidget *LoadLocalMenuItem; GtkWidget *LeftBox; GtkWidget *DocumentationMenuItem; GtkWidget *AboutMenuItem; GtkWidget *GeneralTabLabel; GtkWidget *PublicationTabLabel; GtkWidget *CreateButton; GtkWidget *LoadFromNetButton; GtkWidget *ConfigureButton; GtkWidget *DeleteButton; GtkWidget *LoadFromLocalButton; GtkWidget *SwitchPublishButton; GtkWidget *CheckDependencesButton; GtkWidget *SignButton; GtkWidget *AddPackageButton; GtkWidget *RemovePackageButton; GtkWidget *RepoTree; GtkWidget *TrustedRepoCheck; GtkWidget *ServerTypeLabel; GtkWidget *ServerTypeCombo; GtkWidget *IpAdressLabel; GtkWidget *IpAdressCombo; GtkWidget *PortLabel; GtkWidget *PortSpin; GtkWidget *OutputEntry; GtkWidget *CopyButton; GtkWidget *PublishButton; GtkWidget *CodeNameLabel; GtkWidget *CodeNameInfoLabel; GtkWidget *BranchLabel; GtkWidget *BranchInfoLabel; GtkWidget *VersionLabel; GtkWidget *VersionInfoLabel; GtkWidget *ArchitectureLabel; GtkWidget *ArchitectureInfoLabel; GtkWidget *ComponentsLabel; GtkWidget *ComponentsInfoLabel; GtkWidget *SignatureLabel; GtkWidget *SignatureInfoLabel; GtkWidget *Finder; GtkWidget *SaveButton; } main_window; typedef struct { GtkWidget *Window; GtkWidget *NameEntry; GtkWidget *BranchesTree; GtkWidget *CancelButton; GtkWidget *SaveButton; GtkCellRenderer *BranchCell; GtkWidget *repoChooseFolderButton; GtkListStore *BranchesListStore; GtkWidget *PathLabel; char *path; } repo_create_window; typedef struct { GtkWidget *Window; GtkWidget *HatText; GtkWidget *HeaderText; GtkWidget *InfoText; GtkWidget *AlwaysOpenCheck; GtkWidget *CloseButton; GtkWidget *AcceptButton; } documentation_confirmation_window; typedef enum { YON_REPO_LINE_REPO_TYPE, YON_REPO_LINE_FILE_TYPE, YON_REPO_LINE_BRANCH_TYPE } YON_REPO_LINE_TYPE; main_window *setup_window(); void yon_add_file(main_window *widgets); GtkTreeIter *yon_repo_append(main_window *widgets, char *name, YON_REPO_LINE_TYPE type); void yon_repo_remove_package(main_window *widgets); void yon_repo_remove(main_window *widgets); void on_repo_configure_done(GtkWidget *self, dictionary *dict);