Added optional dependence - timezonemap

pull/207/head
parent 5d0c7df8a4
commit 25d01cea30

@ -23,7 +23,13 @@ include_directories(${PWQUALITY_INCLUDE_DIRS})
link_directories(${PWQUALITY_LIBRARY_DIRS})
add_definitions(${PWQUALITY_CFLAGS_OTHER})
# pkg_check_modules(TIMEZONEMAP REQUIRED timezonemap)
# include_directories(${TIMEZONEMAP_INCLUDE_DIRS})
# link_directories(${TIMEZONEMAP_LIBRARY_DIRS})
# add_definitions(${TIMEZONEMAP_CFLAGS_OTHER})
find_library(WEBKIT_LIBRARIES_FOUND webkit2gtk-4.0 webkit2gtk-web-extension-4.0)
find_library(TIMEZONEMAP_LIBRARIES_FOUND timezonemap)
option(WEBKIT_FOUND "No" OFF)
if(WEBKIT_LIBRARIES_FOUND)
@ -33,6 +39,14 @@ if(WEBKIT_LIBRARIES_FOUND)
link_directories(${WEBKIT_LIBRARY_DIRS})
add_definitions(${WEBKIT_CFLAGS_OTHER})
endif()
if(TIMEZONEMAP_LIBRARIES_FOUND)
message("TIMEZONEMAP ENABLED")
add_definitions(-DTIMEZONEMAP_INCLUDE)
PKG_CHECK_MODULES(TIMEZONEMAP REQUIRED timezonemap)
include_directories(${TIMEZONEMAP_INCLUDE_DIRS})
link_directories(${TIMEZONEMAP_LIBRARY_DIRS})
add_definitions(${TIMEZONEMAP_CFLAGS_OTHER})
endif()
set(GRESOURCE_C resources.c)
set(GRESOURCE_XML gresource.xml)
@ -156,8 +170,10 @@ set(LIBRARIES
${VTE291_LIBRARIES}
${JSON_LIBRARIES}
${PWQUALITY_LIBRARIES}
${TIMEZONEMAP_LIBRARIES}
pthread
ublsettings
timezonemap
ublsettings-gtk3
ublsettingsui-gtk3
)

@ -1,4 +1,5 @@
#include "ubinstall-gtk.h"
#include "timezonemap/cc-timezone-map.h"
int yon_region_save(main_window *widgets){
if (gtk_combo_box_get_active(GTK_COMBO_BOX(widgets->RegionCombo))==-1){
@ -34,7 +35,37 @@ void on_region_changed(GtkComboBox *self, main_window *widgets){
free(active);
}
void on_map_selection_changed(GtkWidget *,CcTimezoneLocation *location,main_window *);
void on_map_selection_changed(GtkWidget *,CcTimezoneLocation *location,main_window *widgets){
char *zone = yon_char_new(cc_timezone_location_get_zone(location));
char *timezone = yon_char_divide_search(zone,"/",-1);
gtk_combo_box_set_active_id(GTK_COMBO_BOX(widgets->RegionCombo),timezone);
while(gtk_events_pending()) gtk_main_iteration();
gtk_combo_box_set_active_id(GTK_COMBO_BOX(widgets->ZoneCombo),zone);
}
void yon_region_init(main_window *widgets){
#ifdef TIMEZONEMAP_INCLUDE
yon_debug_output("%s\n","TIMEZONEMAP enabled");
GList *list = gtk_container_get_children(GTK_CONTAINER(widgets->RegionMapBox));
if (list){
GList *iter;
for (iter = list; iter; iter=iter->next){
gtk_widget_destroy(iter->data);
}
g_list_free(list);
}
widgets->RegionMapTarget = GTK_WIDGET(cc_timezone_map_new());
gtk_box_pack_start(GTK_BOX(widgets->RegionMapBox),GTK_WIDGET(widgets->RegionMapTarget),1,1,0);
g_signal_connect(G_OBJECT(widgets->RegionMapTarget),"location-changed",G_CALLBACK(on_map_selection_changed),widgets);
gtk_widget_show(GTK_WIDGET(widgets->RegionMapTarget));
char *config_param = config(zone_parameter);
if (!yon_char_is_empty(config_param)){
cc_timezone_map_set_timezone(CC_TIMEZONE_MAP(widgets->RegionMapTarget),config_param);
// cc_timezone_map_set_location(CC_TIMEZONE_MAP(widgets->RegionMapTarget),lon, lat);
}
#endif
int size;
config_str parsed = NULL;
parsed = yon_dir_get_contents(zone_path,&size);

@ -564,6 +564,8 @@ void yon_main_window_create(main_window *widgets){
widgets->InstallerCountryFilter=GTK_TREE_MODEL(gtk_builder_get_object(builder,"InstallerCountryFilter"));
widgets->InstallerLanguageList=GTK_LIST_STORE(gtk_builder_get_object(builder,"InstallerLanguageList"));
// widgets->LanguageCombo=yon_gtk_builder_get_widget(builder,"LanguageCombo");
widgets->RegionMapBox=yon_gtk_builder_get_widget(builder,"RegionMapBox");
widgets->RegionMapTarget=NULL;
widgets->RegionCombo=yon_gtk_builder_get_widget(builder,"RegionCombo");
widgets->ZoneCombo=yon_gtk_builder_get_widget(builder,"ZoneCombo");
widgets->RegionSensitiveSwitch = yon_gtk_builder_get_widget(builder,"RegionSensitiveSwitch");
@ -750,6 +752,7 @@ void yon_main_window_create(main_window *widgets){
g_signal_connect(G_OBJECT(widgets->RegionCombo),"changed",G_CALLBACK(on_region_changed),widgets);
g_signal_connect(G_OBJECT(widgets->RegionSensitiveSwitch),"state-set",G_CALLBACK(yon_gtk_widget_set_sensitive_from_switch),widgets->RegionCombo);
g_signal_connect(G_OBJECT(widgets->RegionSensitiveSwitch),"state-set",G_CALLBACK(yon_gtk_widget_set_sensitive_from_switch),widgets->ZoneCombo);
g_signal_connect(G_OBJECT(widgets->RegionSensitiveSwitch),"state-set",G_CALLBACK(yon_gtk_widget_set_sensitive_from_switch),widgets->RegionMapBox);
g_signal_connect(G_OBJECT(widgets->KeyboardLayoutTree),"cursor-changed",G_CALLBACK(on_layout_selection_changed),widgets);
g_signal_connect(G_OBJECT(widgets->KeyboardDefaultLayoutsSwitch),"state-set",G_CALLBACK(on_layout_default_toggled),widgets);

@ -496,6 +496,10 @@ typedef struct
GtkListStore *InstallerLanguageList;
GtkTreeModel *InstallerCountryFilter;
// GtkWidget *LanguageCombo;
GtkWidget *RegionMapBox;
GtkWidget *RegionMapTarget;
GtkWidget *RegionSensitiveSwitch;
GtkWidget *RegionCombo;
GtkWidget *ZoneCombo;
@ -640,7 +644,6 @@ typedef struct
GtkTreeModel *LanguagesFilter;
GtkTreeModel *LayoutsFilter;
GtkWidget *RegionSensitiveSwitch;
GtkWidget *HostnameSensitiveSwitch;
GtkWidget *KernelListBox;

@ -3643,7 +3643,6 @@ agreement</property>
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">center</property>
<property name="margin-top">10</property>
<property name="spacing">5</property>
<child>
<object class="GtkSwitch" id="RegionSensitiveSwitch">
@ -3746,6 +3745,32 @@ agreement</property>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="pack-type">end</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkAspectFrame">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label-xalign">0</property>
<property name="shadow-type">none</property>
<property name="ratio">35.299999237060547</property>
<child>
<object class="GtkBox" id="RegionMapBox">
<property name="visible">True</property>
<property name="sensitive">False</property>
<property name="can-focus">False</property>
<property name="orientation">vertical</property>
<child>
<placeholder/>
</child>
</object>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
@ -3757,12 +3782,13 @@ agreement</property>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="pack-type">end</property>
<property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">3</property>
</packing>

Loading…
Cancel
Save