pull/1/head
parent 18b5433c43
commit 5f43294cbd

@ -46,8 +46,8 @@ depend:
exit 1; \ exit 1; \
fi; \ fi; \
done; \ done; \
$(CMAKE_UI_COMMAND) -S$(CMAKE_UI_SOURCE_DIR) -B${CMAKE_UI_BUILD_DIR} --check-build-system CMakeFiles/Makefile.cmake 1 || exit 1; \ $(CMAKE_UI_COMMAND) -DCMAKE_INSTALL_PREFIX=/usr -S$(CMAKE_UI_SOURCE_DIR) -B${CMAKE_UI_BUILD_DIR} --check-build-system CMakeFiles/Makefile.cmake 1 || exit 1; \
$(CMAKE_UTILS_COMMAND) -S$(CMAKE_UTILS_SOURCE_DIR) -B${CMAKE_UTILS_BUILD_DIR} --check-build-system CMakeFiles/Makefile.cmake 1 || exit 1; \ $(CMAKE_UTILS_COMMAND) -DCMAKE_INSTALL_PREFIX=/usr -S$(CMAKE_UTILS_SOURCE_DIR) -B${CMAKE_UTILS_BUILD_DIR} --check-build-system CMakeFiles/Makefile.cmake 1 || exit 1; \
echo "Check depends: OK" echo "Check depends: OK"
debug: debug:
@ -60,28 +60,37 @@ debug:
prepare: prepare:
@echo "Prepare ..."; \ @echo "Prepare ..."; \
if [ ! -d ${CMAKE_UI_BUILD_DIR} ]; then \ if [ ! -d ${CMAKE_UI_BUILD_DIR} ]; then \
$(CMAKE_UI_COMMAND) -S${CMAKE_UI_SOURCE_DIR} -B${CMAKE_UI_BUILD_DIR} -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="${PREFIX}"; \ $(CMAKE_UI_COMMAND) -DCMAKE_INSTALL_PREFIX=/usr -S${CMAKE_UI_SOURCE_DIR} -B${CMAKE_UI_BUILD_DIR} -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="${PREFIX}"; \
$(CMAKE_UTILS_COMMAND) -S${CMAKE_UTILS_SOURCE_DIR} -B${CMAKE_UTILS_BUILD_DIR} -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="${PREFIX}"; \ $(CMAKE_UTILS_COMMAND) -DCMAKE_INSTALL_PREFIX=/usr -S${CMAKE_UTILS_SOURCE_DIR} -B${CMAKE_UTILS_BUILD_DIR} -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="${PREFIX}"; \
fi; \ fi; \
echo "Prepare: OK" echo "Prepare: OK"
check: check:
@echo "Check ..."; \ @echo "Check ..."; \
if [ -f ${CMAKE_UI_BUILD_DIR}/lib${PKGNAME}.so ]; then \ if [ -f ${CMAKE_UTILS_BUILD_DIR}/libubl-utils.so ]; then \
echo "Check: OK"; \ echo "Check: OK"; \
else \ else \
echo "Check: ${CMAKE_UI_BUILD_DIR}/lib${PKGNAME}.so not found !"; \ echo "Check: ${CMAKE_UI_BUILD_DIR}/libubl-utils.so not found !"; \
exit 1; \ exit 1; \
fi fi
build: depend prepare build: depend prepare build-utils
@echo "Build ..."; \ @echo "Build ..."; \
$(MAKE_COMMAND) --directory=${CMAKE_UI_BUILD_DIR}; \
$(MAKE_COMMAND) --directory=${CMAKE_UTILS_BUILD_DIR}; \
sed -r "s/^(string version_application).*/\1;/" -i ${FILE_VER}; \ sed -r "s/^(string version_application).*/\1;/" -i ${FILE_VER}; \
echo "Build: OK" echo "Build: OK"
uninstall: build-ui:
@cd ./ubl-utils; \
$(MAKE_COMMAND) --directory=${CMAKE_UI_BUILD_DIR}; \
cd ../
build-utils:
@cd ./source; \
$(MAKE_COMMAND) --directory=${CMAKE_UTILS_BUILD_DIR}; \
cd ../
uninstall: uninstall-ui uninstall-util
@echo "Uninstall ..." @echo "Uninstall ..."
@for FILE_PO in $(wildcard *.po); do \ @for FILE_PO in $(wildcard *.po); do \
LANG=$${FILE_PO##*_};LANG=$${LANG%.*}; \ LANG=$${FILE_PO##*_};LANG=$${LANG%.*}; \
@ -98,10 +107,6 @@ uninstall:
$(RM) "${DESTDIR}${PREFIX}/share/icons/hicolor/$${SIZE}/status/$${FILE_SVG%.*}".{svg,png,jpg}; \ $(RM) "${DESTDIR}${PREFIX}/share/icons/hicolor/$${SIZE}/status/$${FILE_SVG%.*}".{svg,png,jpg}; \
done; \ done; \
done done
@$(RM) -r /usr/local/lib/libubl-utils.so*
@$(RM) -r /usr/local/lib/libublsettings-ui.a*
@$(RM) -r /usr/local/include/*ubl-utils.h*
@$(RM) -r /usr/local/include/*ublsettings-ui.h*
@$(RM) "${DESTDIR}${PREFIX}/share/applications/${PKGNAME}.desktop" @$(RM) "${DESTDIR}${PREFIX}/share/applications/${PKGNAME}.desktop"
@$(RM) "${DESTDIR}${PREFIX}/share/icons/hicolor/scalable/apps/com.ublinux.${PKGNAME}.svg" @$(RM) "${DESTDIR}${PREFIX}/share/icons/hicolor/scalable/apps/com.ublinux.${PKGNAME}.svg"
@$(RM) "${DESTDIR}/usr/share/polkit-1/actions/com.ublinux.${PKGNAME}${PKGIDENT}.policy" @$(RM) "${DESTDIR}/usr/share/polkit-1/actions/com.ublinux.${PKGNAME}${PKGIDENT}.policy"
@ -112,7 +117,17 @@ uninstall:
fi fi
@echo "Uninstall: OK" @echo "Uninstall: OK"
install: check uninstall uninstall-ui:
@echo "Uninstall ..."; \
$(RM) -r /usr/local/lib/libublsettings-ui.a*; \
$(RM) -r /usr/local/include/*ublsettings-ui.h*
uninstall-util:
@echo "Uninstall ..."; \
$(RM) -r /usr/local/lib/libubl-utils.so*; \
$(RM) -r /usr/local/include/*ubl-utils.h*
install: check install-util build-ui install-ui
@echo "Install ..." @echo "Install ..."
@for FILE_PO in $(wildcard *.po); do \ @for FILE_PO in $(wildcard *.po); do \
LANG=$${FILE_PO##*_};LANG=$${LANG%.*}; \ LANG=$${FILE_PO##*_};LANG=$${LANG%.*}; \
@ -128,9 +143,7 @@ install: check uninstall
done done
@install -Dm644 -t "${DESTDIR}${PREFIX}/share/icons/hicolor/scalable/apps/" "com.ublinux.${PKGNAME}.svg" @install -Dm644 -t "${DESTDIR}${PREFIX}/share/icons/hicolor/scalable/apps/" "com.ublinux.${PKGNAME}.svg"
@install -Dm644 -t "${DESTDIR}${PREFIX}/share/icons/hicolor/scalable/status/" "com.ublinux.${PKGNAME}.checked.svg" @install -Dm644 -t "${DESTDIR}${PREFIX}/share/icons/hicolor/scalable/status/" "com.ublinux.${PKGNAME}.checked.svg"
@install -Dm644 -t "${DESTDIR}${PREFIX}/share/icons/hicolor/scalable/status/" "com.ublinux.${PKGNAME}.warning.svg"; \ @install -Dm644 -t "${DESTDIR}${PREFIX}/share/icons/hicolor/scalable/status/" "com.ublinux.${PKGNAME}.warning.svg"
$(MAKE_COMMAND) install --directory=${CMAKE_UI_BUILD_DIR}; \
$(MAKE_COMMAND) install --directory=${CMAKE_UTILS_BUILD_DIR}
@if [ -z ${DESTDIR} ]; then \ @if [ -z ${DESTDIR} ]; then \
[ -d "${DESTDIR}${PREFIX}/share/icons/hicolor/" ] && gtk-update-icon-cache -fiq "${DESTDIR}${PREFIX}/share/icons/hicolor/" &>/dev/null || true; \ [ -d "${DESTDIR}${PREFIX}/share/icons/hicolor/" ] && gtk-update-icon-cache -fiq "${DESTDIR}${PREFIX}/share/icons/hicolor/" &>/dev/null || true; \
update-desktop-database --quiet &>/dev/null || true; \ update-desktop-database --quiet &>/dev/null || true; \
@ -138,6 +151,13 @@ install: check uninstall
fi fi
@echo "Install: OK" @echo "Install: OK"
install-ui: uninstall-ui
@$(MAKE_COMMAND) install --directory=${CMAKE_UI_BUILD_DIR}
install-util: uninstall-util
@$(MAKE_COMMAND) install --directory=${CMAKE_UTILS_BUILD_DIR}
clean: clean:
@echo "Clean ..." @echo "Clean ..."
@$(RM) -rd ${CMAKE_UI_BUILD_DIR} @$(RM) -rd ${CMAKE_UI_BUILD_DIR}

@ -62,19 +62,22 @@ add_custom_target(
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always \ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always \
-O2 -pipe -fno-plt -fexceptions \ -O2 -pipe -fno-plt -fexceptions \
-Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security \ -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security \
-fstack-clash-protection -fcf-protection") -fstack-clash-protection -fcf-protection -g")
add_library(${PROJECT_NAME} SHARED add_library(${PROJECT_NAME} SHARED
ublsettings-ui.c ublsettings-ui.c
ublsettings-ui.h) ublsettings-ui.h
${CMAKE_CURRENT_BINARY_DIR}/${GRESOURCE_C})
set(LIBRARIES set(LIBRARIES
${GTK_LIBRARIES} ${GTK_LIBRARIES}
${WEBKIT_LIBRARIES} ${WEBKIT_LIBRARIES}
# ${VTE291_LIBRARIES} ${VTE291_LIBRARIES}
pthread) ubl-utils
pthread)
message(${CMAKE_INSTALL_LIBDIR})
target_include_directories(${PROJECT_NAME} PUBLIC ${PROJECT_BINARY_DIR}) target_include_directories(${PROJECT_NAME} PUBLIC ${PROJECT_BINARY_DIR})
target_link_libraries(${PROJECT_NAME} PUBLIC ${LIBRARIES}) target_link_libraries(${PROJECT_NAME} PUBLIC ${LIBRARIES})

@ -165,11 +165,13 @@ int yon_ubl_window_setup(GtkWidget *interface, char *app_name, char *app_descrip
app_information.app_locale=locale; app_information.app_locale=locale;
} }
main_window *yon_ubl_window_init(){ main_window *yon_ubl_window_init(int argc, char *argv[]){
local=setlocale(LC_ALL, ""); local=setlocale(LC_ALL, "");
textdomain (app_information.app_locale); textdomain (app_information.app_locale);
gtk_init(&argc,&argv);
main_window *widgets = setup_window(); main_window *widgets = setup_window();
yon_ubl_header_setup_resource(widgets->HeadOverlay,widgets->HeadBox,widgets->HeadImage,ui_banner_path); yon_ubl_header_setup_resource(widgets->HeadOverlay,widgets->HeadBox,widgets->HeadImage,ui_banner_path);
@ -186,5 +188,7 @@ main_window *yon_ubl_window_init(){
gtk_style_context_add_provider_for_screen(gdk_screen_get_default(), gtk_style_context_add_provider_for_screen(gdk_screen_get_default(),
GTK_STYLE_PROVIDER(css), GTK_STYLE_PROVIDER(css),
-1); -1);
return widgets; return widgets;
gtk_main();
} }

@ -25,7 +25,7 @@
#define ui_LocalePath "/usr/share/locale" #define ui_LocalePath "/usr/share/locale"
#define ui_LocaleName "ublsettings-ui" #define ui_LocaleName "ublsettings-ui"
typedef char* string; typedef char* string;
string version_application = "0.0"; string version_application;
char *local; char *local;
@ -105,5 +105,5 @@ typedef struct {
#define SUCCESS_LABEL _("Operation succeeded") #define SUCCESS_LABEL _("Operation succeeded")
#define ROOT_WARNING_LABEL _("Warning! Application was launched without root - root-dependent actions are locked") #define ROOT_WARNING_LABEL _("Warning! Application was launched without root - root-dependent actions are locked")
main_window *yon_ubl_window_init(); main_window *yon_ubl_window_init(int argc, char *argv[]);
int yon_ubl_window_setup(GtkWidget *interface, char *app_name, char *app_description, char *locale); int yon_ubl_window_setup(GtkWidget *interface, char *app_name, char *app_description, char *locale);

@ -40,6 +40,8 @@ ${WEBKIT_LIBRARIES}
# ${VTE291_LIBRARIES} # ${VTE291_LIBRARIES}
pthread) pthread)
message(${CMAKE_INSTALL_LIBDIR})
target_include_directories(${PROJECT_NAME} PUBLIC ${PROJECT_BINARY_DIR}) target_include_directories(${PROJECT_NAME} PUBLIC ${PROJECT_BINARY_DIR})
target_link_libraries(${PROJECT_NAME} PUBLIC ${LIBRARIES}) target_link_libraries(${PROJECT_NAME} PUBLIC ${LIBRARIES})

@ -645,19 +645,18 @@ char **yon_char_parse(char *parameters, int *size, char *divider){
string=malloc(sizeof(char*)); string=malloc(sizeof(char*));
char *paramline=yon_char_new(parameters); char *paramline=yon_char_new(parameters);
char *param; char *param;
if (!strstr(parameters,divider)) return NULL;
while ((param=yon_char_divide_search(paramline,divider,1))){ while ((param=yon_char_divide_search(paramline,divider,1))){
if (strcmp(param,paramline)==0||param[0]=='\0') break;
string=realloc(string,sizeof(char*)*i); string=realloc(string,sizeof(char*)*i);
string[i-1]=yon_char_new(param); string[i-1]=yon_char_new(param);
i++; i++;
if (strcmp(param,paramline)==0) break;
} }
string=realloc(string,sizeof(char*)*i); string=realloc(string,sizeof(char*)*i);
string[i-1]=yon_char_new(paramline); string[i-1]=yon_char_new(paramline);
i++; i++;
// printf("%d\n",i);
*size=i-1; *size=i-1;
return string; return string;
} }
/**yon_char_parsed_rip(char **char_string, int *size, int item_to_delete) /**yon_char_parsed_rip(char **char_string, int *size, int item_to_delete)
@ -1582,7 +1581,7 @@ void yon_terminal_integrated_start(GtkWidget *terminal, char* command, void *end
return key; return key;
} }
/**yon_window_config_add_custom_parameter(GtkWidget *widget, char *param_name, char *widget_property) /**yon_window_config_add_listener(GtkWidget *widget, char *param_name, char *widget_property, enum YON_TYPE val_type)
* [EN] * [EN]
* *
* [RU] * [RU]
@ -1616,6 +1615,31 @@ void yon_terminal_integrated_start(GtkWidget *terminal, char* command, void *end
yon_dictionary_add_or_create_if_exists_with_data(__yon_main_window_config.deleted_parameters,param->parameter_name,param); yon_dictionary_add_or_create_if_exists_with_data(__yon_main_window_config.deleted_parameters,param->parameter_name,param);
} }
int yon_window_config_get_parameter(char *section, char *config_parameter, void *return_value, enum YON_TYPE type){
GError *err=NULL;
switch (type){
case YON_TYPE_BOOLEAN:
*((int*)return_value) = g_key_file_get_boolean(__yon_window_config_file,section,config_parameter,&err);
if (err) return 0; else return 1;
break;
case YON_TYPE_INT:
*((int*)return_value) = g_key_file_get_integer(__yon_window_config_file,section,config_parameter,&err);
if (err) return 0; else return 1;
break;
case YON_TYPE_STRING:
*((char**)return_value) = g_key_file_get_string(__yon_window_config_file,section,config_parameter,&err);
if (err) return 0; else return 1;
break;
case YON_TYPE_STRING_LIST:
gsize size=0;
*((char***)return_value) = g_key_file_get_string_list(__yon_window_config_file,section,config_parameter,&size,&err);
*((char***)return_value)=yon_remalloc(return_value,size+1);
*((char***)return_value)[size]=NULL;
if (err) return 0; else return 1;
break;
}
}
GtkWidget *yon_ubl_menu_item_about_new(char *buttonname){ GtkWidget *yon_ubl_menu_item_about_new(char *buttonname){
GtkWidget *menu_item = gtk_menu_item_new(); GtkWidget *menu_item = gtk_menu_item_new();
gtk_style_context_add_class(gtk_widget_get_style_context(menu_item),"menuitembottom"); gtk_style_context_add_class(gtk_widget_get_style_context(menu_item),"menuitembottom");

@ -15,7 +15,7 @@
#include <gtk/gtk.h> #include <gtk/gtk.h>
#include <gtk/gtkx.h> #include <gtk/gtkx.h>
#include "../utils-compile/ubl-cmake.h" #include "ubl-cmake.h"
#ifdef WEBKIT_FOUND #ifdef WEBKIT_FOUND
#include <webkit2/webkit2.h> #include <webkit2/webkit2.h>
#endif #endif
@ -218,6 +218,7 @@ void yon_terminal_integrated_start(GtkWidget *terminal, char* command, void *end
enum YON_TYPE{ enum YON_TYPE{
YON_TYPE_STRING, YON_TYPE_STRING,
YON_TYPE_STRING_LIST,
YON_TYPE_INT, YON_TYPE_INT,
YON_TYPE_BOOLEAN, YON_TYPE_BOOLEAN,
YON_TYPE_OTHER YON_TYPE_OTHER
@ -254,6 +255,8 @@ void yon_window_config_add_custom_parameter(char *param_name, char *section, voi
void yon_window_config_erase_custom_parameter(char *param_name, char *section); void yon_window_config_erase_custom_parameter(char *param_name, char *section);
int yon_window_config_get_parameter(char *section, char *config_parameter, void *return_value, enum YON_TYPE type);
int yon_gtk_combo_box_fill(GtkWidget *combo, char **parameters,int size); int yon_gtk_combo_box_fill(GtkWidget *combo, char **parameters,int size);
int yon_gtk_combo_box_text_find(GtkWidget *combo_box, char *text_to_find); int yon_gtk_combo_box_text_find(GtkWidget *combo_box, char *text_to_find);

Loading…
Cancel
Save