From 1cba83454beb14442e4ef6b4d26604ce4310baad Mon Sep 17 00:00:00 2001 From: Wojciech Graj Date: Tue, 25 Apr 2023 01:25:49 +0200 Subject: [PATCH] Implement setting to change satellite size. --- res/shader/satellite.vert | 7 +- res/ui/ui.glade | 3198 +++++++++++++++++++------------------ src/entity/satellite.c | 11 +- src/phys/phys.c | 2 +- src/ui/setting.c | 33 +- src/ui/setting.h | 3 +- 6 files changed, 1665 insertions(+), 1589 deletions(-) diff --git a/res/shader/satellite.vert b/res/shader/satellite.vert index 6efc7af..693fe2d 100644 --- a/res/shader/satellite.vert +++ b/res/shader/satellite.vert @@ -5,15 +5,16 @@ layout (location = 0) in vec3 in_pos; layout (location = 1) in vec3 in_color; layout (location = 0) uniform mat4 transform; +layout (location = 1) uniform float scl; out vec3 color; -const float scaling_factor = 15.0; -const float max_size = 8.0; +const float scaling_factor = 15.0f; +const float max_size = 6.0f; void main() { gl_Position = transform * vec4(in_pos, 1.0f); - gl_PointSize = clamp(round(scaling_factor - scaling_factor * (gl_Position.z / gl_Position.w)), 1, max_size); + gl_PointSize = clamp(round(scaling_factor * scl * (1.0f - (gl_Position.z / gl_Position.w))), scl, max_size * (scl + 1.0f)); color = in_color; } diff --git a/res/ui/ui.glade b/res/ui/ui.glade index 2fb0dff..0c3d352 100644 --- a/res/ui/ui.glade +++ b/res/ui/ui.glade @@ -2,1635 +2,1321 @@ - - True - False - gtk-clear - - - True - False - gtk-clear - - - True - False - gtk-clear + + 1 + 4 + 1 + 1 + 1 + 1 + - + False - Catalog - 480 - + Settings + emblem-system + - + True - True - + False + vertical - + True False - vertical - - - True - True - edit-find-symbolic - False - False - - - - False - True - 0 - - + 0 + none - + True - True - never - always - in - False + False + 12 - + True - True - 0 - True - both - - - - - - fixed - Select - True - - - - - - fixed - ID - True - True - - - - - - fixed - Name - True - descending - - - - - - fixed - Intl Des - True - - - - - - fixed - Status - True - - - - - - fixed - Owner - True - - - - - - fixed - Launch Date - True - - - + False + vertical - - fixed - Period (min) - True - + + Lighting + True + True + False + 0 + True + True + + + False + True + 0 + - - fixed - Incl (°) - True - + + Clouds + True + True + False + 0 + True + True + + + False + True + 1 + - - fixed - Apo (km) - True - + + Local Time + True + True + False + 0 + True + True + + + False + True + 2 + - - fixed - Peri (km) - True - + + Invert Scroll Direction + True + True + False + 0 + True + + + False + True + 3 + - - - - - True - True - 1 - - - - - - - True - False - Catalog - - - False - - - - - True - False - vertical - - - True - False - 0 - none - - - True - False - 12 - - + True False - True True False - Name: - 1 + Satellite Scale: - 0 - 0 + False + False + 0 - + True - False - ID: - 1 + True + adjustment_scale + False + 0 + 0 + right - 0 - 1 - - - - - True - False - Payload: - 1 - - - 0 - 3 - - - - - True - False - Intl Des: - 1 - - - 0 - 2 - - - - - True - False - Launch Site: - 1 - - - 2 - 0 - - - - - True - False - Launch Date: - 1 - - - 2 - 1 - - - - - True - False - Owner: - 1 - - - 2 - 2 - - - - - True - False - Decay Date: - 1 - - - 2 - 3 - - - - - True - False - Period (min): - 1 - - - 4 - 0 - - - - - True - False - Incl (°): - 1 - - - 4 - 1 + True + True + 1 + + + False + True + 4 + + + + + True + False True False - Apogee (km): - 1 + Reference Frame: - 4 - 2 + False + True + 0 True False - Perigee (km): - 1 + Fixed - 4 - 3 + False + True + 1 - + True - False - Status: - 1 + True + - 0 - 4 + False + True + 2 True False - Radar Cross Section (m²): - 1 - - - 4 - 4 - - - - - True - False - 24 - 0 - - - 1 - 0 - - - - - True - False - 5 - 0 - - - 1 - 1 - - - - - True - False - 11 - 0 - - - 1 - 2 - - - - - True - False - 21 - 0 - - - 1 - 4 - - - - - True - False - 52 - 0 - - - 3 - 0 - - - - - True - False - 10 - 0 - - - 3 - 1 - - - - - True - False - 66 - 0 - - - 3 - 2 - - - - - True - False - 10 - 0 - - - 3 - 3 - - - - - True - False - 7 - 0 + Intertial - 5 - 0 - - - - - True - False - 5 - 0 - - - 5 - 1 - - - - - True - False - 6 - 0 - - - 5 - 2 - - - - - True - False - 21 - 0 - - - 5 - 3 - - - - - True - False - 8 - 0 - - - 5 - 4 - - - - - True - False - Orbital Status: - 1 - - - 2 - 4 - - - - - True - False - 3 - 0 - - - 3 - 4 - - - - - True - False - 3 - 0 - - - 1 - 3 + False + True + 3 + + False + True + 5 + + + + + Re-fetch Data + True + True + True + 0 + + + + False + True + 6 + - - - - - True - False - Info - - True - True - 0 - + + + True + False + Settings + + + + + False + True + 0 + + + + + True + False + 0 + none - + True False - 0 - none + 12 - + + True False - 12 - - + True False - True - True - - - True - False - Position (TEME) (km): - 1 - - - 0 - 0 - - - - - True - False - Position (ECEF) (km): - 1 - - - 0 - 1 - - - - - True - False - Velocity (km/s): - 1 - - - 2 - 0 - - - - - True - False - Position (LLH) (°,km): - 1 - - - 2 - 1 - - - - - True - False - 24 - 0 - - - 1 - 0 - - - - - True - False - 24 - 0 - - - 1 - 1 - - - - - True - False - 24 - 0 - - - 3 - 1 - - - - - True - False - 24 - 0 - - - 3 - 0 - - + FPS: + 1 + + 0 + 0 + - - - - - True - False - Orbit - - - - - True - True - 1 - - - - - True - False - 0 - none - - - True - False - 12 - + True False - - - Jump to - True - False - True - True - - - - False - True - 0 - - - - - True - False - - - True - True - 1 - - + Satellites: + 1 + + 0 + 1 + + + + + True + False + - + 0 + + + 1 + 0 + + + + + True + False + - + 0 + + + 1 + 1 + - - - - - True - False - Actions - - False - True - 2 - + + + + True + False + Performance + + False + True 1 - - + + True False - Details + 0 + none + + + True + False + 12 + + + True + False + + + + + + + True + False + About + + - 1 - False + False + True + 2 + + + + + True + False + gtk-clear + + + True + False + gtk-clear + + + True + False + gtk-clear + + + False + Catalog + 480 + + + + True + True + True False vertical - - + True - False - - - True - False - Status: - 1 - - - 0 - 0 - - - - - True - False - Launch Site: - 1 - - - 0 - 1 - - + True + edit-find-symbolic + False + False + + + + False + True + 0 + + + + + True + True + never + always + in + False - + True - False + True + 0 + True + both + + + - - True - True - + + fixed + Select + True + - - False - True - 0 - - - True - False - - + + fixed + ID + True + True + - - False - True - 1 - - - True - True - + + fixed + Name + True + descending + - - False - True - 2 - - - - - 3 - 2 - - - - - True - False - Launch Date: - 1 - - - 2 - 2 - - - - - True - False - Owner: - 1 - - - 0 - 2 - - - - - True - False - Period (min): - 1 - - - 2 - 0 - - - - - True - False - - - True - True - number - - - False - True - 0 - - - True - False - - + + fixed + Intl Des + True + - - False - True - 1 - - - True - True - number + + fixed + Status + True + - - False - True - 2 - - - - 3 - 0 - - - - - True - False - Incl (deg): - 1 - - - 2 - 1 - - - - - True - False - - True - True - number + + fixed + Owner + True + - - False - True - 0 - - - True - False - - + + fixed + Launch Date + True + - - False - True - 1 - - - True - True - number + + fixed + Period (min) + True + - - False - True - 2 - - - - 3 - 1 - - - - - True - False - Apogee (km): - 1 - - - 2 - 3 - - - - - True - False - Perigee (km): - 1 - - - 0 - 3 - - - - - True - False - - True - True - number + + fixed + Incl (°) + True + - - False - True - 0 - - - True - False - - + + fixed + Apo (km) + True + - - False - True - 1 - - - True - True - number + + fixed + Peri (km) + True + - - False - True - 2 - - - 3 - 3 - - - - - True - False - - - True - True - number - - - True - True - 0 - - - - - True - False - - - - - False - True - 1 - - - - - True - True - number - - - True - True - 2 - - - - - 1 - 3 - - - - - True - False - - - True - False - - - True - True - 0 - - - - - True - True - True - image_clear - - - - False - True - 1 - - - - - 1 - 0 - - - - - True - False - - - True - False - - - True - True - 0 - - - - - True - True - True - image_clear1 - - - - False - True - 1 - - - - - 1 - 1 - - - - - True - False - - - True - False - - - True - True - 0 - - - - - True - True - True - image_clear2 - - - - False - True - 1 - - - - - 1 - 2 - True True - 0 - - - - - True - False - - - True - False - True - vertical - - - False - True - 0 - - - - - gtk-clear - True - True - True - True - - - - False - True - 1 - - - - - gtk-apply - True - True - True - True - - - - False - True - 2 - - - - - False - True 1 - - 2 - True False - Filter + Catalog - 2 False - - - - - - - - - - - - - - - - - - - - - - - - - False - Orbit Visualizer - 1024 - 768 - - - - - True - False - vertical - + True False - both-horiz - False - 4 + vertical - + True False + 0 + none - + True - True - 28 - True - - - - - - False - True - - - - - True - False - - - False - True - - - - - True - False - True - media-playback-start - True - - - - False - True - - - - - True - False - Realtime - True - - - - False - True - - - - - True - False - - - False - True - - - - - True - False - True - media-seek-backward - - - - False - True - - - - - True - False - - + False + 12 + + + + True + False + True + + + True + False + Name: + 1 + + + 0 + 0 + + + + + True + False + ID: + 1 + + + 0 + 1 + + + + + True + False + Payload: + 1 + + + 0 + 3 + + + + + True + False + Intl Des: + 1 + + + 0 + 2 + + + + + True + False + Launch Site: + 1 + + + 2 + 0 + + + + + True + False + Launch Date: + 1 + + + 2 + 1 + + + + + True + False + Owner: + 1 + + + 2 + 2 + + + + + True + False + Decay Date: + 1 + + + 2 + 3 + + + + + True + False + Period (min): + 1 + + + 4 + 0 + + + + + True + False + Incl (°): + 1 + + + 4 + 1 + + + + + True + False + Apogee (km): + 1 + + + 4 + 2 + + + + + True + False + Perigee (km): + 1 + + + 4 + 3 + + + + + True + False + Status: + 1 + + + 0 + 4 + + + + + True + False + Radar Cross Section (m²): + 1 + + + 4 + 4 + + + + + True + False + 24 + 0 + + + 1 + 0 + + + + + True + False + 5 + 0 + + + 1 + 1 + + + + + True + False + 11 + 0 + + + 1 + 2 + + + + + True + False + 21 + 0 + + + 1 + 4 + + + + + True + False + 52 + 0 + + + 3 + 0 + + + + + True + False + 10 + 0 + + + 3 + 1 + + + + + True + False + 66 + 0 + + + 3 + 2 + + + + + True + False + 10 + 0 + + + 3 + 3 + + + + + True + False + 7 + 0 + + + 5 + 0 + + + + + True + False + 5 + 0 + + + 5 + 1 + + + + + True + False + 6 + 0 + + + 5 + 2 + + + + + True + False + 21 + 0 + + + 5 + 3 + + + + + True + False + 8 + 0 + + + 5 + 4 + + + + + True + False + Orbital Status: + 1 + + + 2 + 4 + + + + + True + False + 3 + 0 + + + 3 + 4 + + + + + True + False + 3 + 0 + + + 1 + 3 + + + + + + + + True - True - 6 - + False + Info - - False - True - - - - - True - False - True - media-seek-forward - - - - False - True - - - - - True - False - - - False - True - - - - - True - False - True - zoom-out - - - - False - True - - - - - True - False - True - zoom-in - - - - False - True - - - - - True - False - True - True - - - - - True - False - Catalog - True - - - - False - True + True + 0 - + True False + 0 + none + + + True + False + 12 + + + + True + False + True + True + + + True + False + Position (TEME) (km): + 1 + + + 0 + 0 + + + + + True + False + Position (ECEF) (km): + 1 + + + 0 + 1 + + + + + True + False + Velocity (km/s): + 1 + + + 2 + 0 + + + + + True + False + Position (LLH) (°,km): + 1 + + + 2 + 1 + + + + + True + False + 24 + 0 + + + 1 + 0 + + + + + True + False + 24 + 0 + + + 1 + 1 + + + + + True + False + 24 + 0 + + + 3 + 1 + + + + + True + False + 24 + 0 + + + 3 + 0 + + + + + + + + + True + False + Orbit + + - False - True + True + True + 1 - + True False - __glade_unnamed_17 - True - emblem-system - + 0 + none + + + True + False + 12 + + + True + False + + + Jump to + True + False + True + True + + + + False + True + 0 + + + + + True + False + + + True + True + 1 + + + + + + + + + True + False + Actions + + False - True + True + 2 - False - True - 0 - - - - - True - True - True - GDK_POINTER_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_SCROLL_MASK | GDK_SMOOTH_SCROLL_MASK - - - - - - - - True - True - False - True - True - - - - - - - - True - True 1 - - + + True False - 10 - 10 - 10 - 10 - 6 - 6 - vertical - 2 + Details - False - True - 2 + 1 + False - - - - - False - Settings - emblem-system - - - - True - False - vertical - + True False - 0 - none + vertical - + + True False - 12 + + + True + False + Status: + 1 + + + 0 + 0 + + + + + True + False + Launch Site: + 1 + + + 0 + 1 + + + + + True + False + + + True + True + + + + False + True + 0 + + + + + True + False + - + + + False + True + 1 + + + + + True + True + + + + False + True + 2 + + + + + 3 + 2 + + + + + True + False + Launch Date: + 1 + + + 2 + 2 + + + + + True + False + Owner: + 1 + + + 0 + 2 + + + + + True + False + Period (min): + 1 + + + 2 + 0 + + + + + True + False + + + True + True + number + + + False + True + 0 + + + + + True + False + - + + + False + True + 1 + + + + + True + True + number + + + False + True + 2 + + + + + 3 + 0 + + + + + True + False + Incl (deg): + 1 + + + 2 + 1 + + True False - vertical - - Lighting + True True - False - 0 - True - True - + number False @@ -1639,15 +1325,80 @@ - - Clouds + + True + False + - + + + False + True + 1 + + + + True True - False - 0 - True - True - + number + + + False + True + 2 + + + + + 3 + 1 + + + + + True + False + Apogee (km): + 1 + + + 2 + 3 + + + + + True + False + Perigee (km): + 1 + + + 0 + 3 + + + + + True + False + + + True + True + number + + + False + True + 0 + + + + + True + False + - False @@ -1656,239 +1407,536 @@ - - Local Time + True True - False - 0 - True - True - + number + + + False + True + 2 + + + + + 3 + 3 + + + + + True + False + + + True + True + number + + + True + True + 0 + + + + + True + False + - + + + False + True + 1 + + + + + True + True + number + + + True + True + 2 + + + + + 1 + 3 + + + + + True + False + + + True + False + + + True + True + 0 + + + + + True + True + True + image_clear + False True - 2 + 1 + + + + + 1 + 0 + + + + + True + False + + + True + False + + + True + True + 0 - - Invert Scroll Direction + True True - False - 0 - True - + True + image_clear1 + False True - 3 + 1 + + + 1 + 1 + + + + + True + False - + True False - - - True - False - Reference Frame: - - - False - True - 0 - - - - - True - False - Fixed - - - False - True - 1 - - - - - True - True - - - - False - True - 2 - - - - - True - False - Intertial - - - False - True - 3 - - - False + True True - 4 + 0 - - Re-fetch Data + True True True - 0 - + image_clear2 + False True - 5 + 1 + + 1 + 2 + + + + + True + True + 0 + + + + + True + False + + + True + False + True + vertical + + + False + True + 0 + + + + + gtk-clear + True + True + True + True + + + + False + True + 1 + + + + + gtk-apply + True + True + True + True + + + + False + True + 2 + + + + + False + True + 1 + + + + + 2 + + + + + True + False + Filter + + + 2 + False + + + + + + + + + + + + + + + + + + + + + + + + + + + False + Orbit Visualizer + 1024 + 768 + + + + + True + False + vertical + + + True + False + both-horiz + False + 4 + + + True + False + + + True + True + 28 + True + + + + False + True + + + + + True + False + + + False + True + + + + + True + False + True + media-playback-start + True + + + + False + True + + + + + True + False + Realtime + True + + + + False + True + - - + + True False - Settings + + False + True + - - - False - True - 0 - - - - - True - False - 0 - none - + + True + False + True + media-seek-backward + + + + False + True + + + + True False - 12 - - + True - False - - - True - False - FPS: - 1 - - - 0 - 0 - - - - - True - False - Satellites: - 1 - - - 0 - 1 - - - - - True - False - - - 0 - - - 1 - 0 - - - - - True - False - - - 0 - - - 1 - 1 - - + True + 6 + + + False + True + - - + + True False - Performance + True + media-seek-forward + + + + False + True + + + + + True + False + + + False + True + + + + + True + False + True + zoom-out + + + + False + True + + + + + True + False + True + zoom-in + + + + False + True + + + + + True + False + + + True + True + + + + + True + False + Catalog + True + + + + False + True + + + + + True + False + + + False + True + + + + + True + False + __glade_unnamed_17 + True + emblem-system + + + False + True + False True - 1 + 0 - + True - False - 0 - none + True + True + GDK_POINTER_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_SCROLL_MASK | GDK_SMOOTH_SCROLL_MASK + + + + + - - True - False - 12 - - - True - False - - - - - - + True + True False - About + True + True + + + + + True + True + 1 + + + + + True + False + 10 + 10 + 10 + 10 + 6 + 6 + vertical + 2 + False True diff --git a/src/entity/satellite.c b/src/entity/satellite.c index eff16d4..227ff8f 100644 --- a/src/entity/satellite.c +++ b/src/entity/satellite.c @@ -16,6 +16,7 @@ #include "hashmap.h" #include "satcat_code.h" +#include "setting.h" #include #include #include @@ -56,6 +57,7 @@ enum LayoutLoc { enum UniformLoc { LOCU_TRANSFORM = 0u, + LOCU_SCALE, }; enum DLMultiLoc { @@ -469,11 +471,12 @@ void satellites_phys_sync(void) void satellites_render(void) { - shader_bind(&shader); - camera_mvp_generate(&e_camera, &e_phys.teme_to_world, transform); - glUniformMatrix4fv(LOCU_TRANSFORM, 1, GL_FALSE, (const GLfloat *)&transform); - if (satellites_renderable) { + shader_bind(&shader); + camera_mvp_generate(&e_camera, &e_phys.teme_to_world, transform); + glUniformMatrix4fv(LOCU_TRANSFORM, 1, GL_FALSE, (const GLfloat *)&transform); + glUniform1f(LOCU_SCALE, es_satellite_scale); + vao_bind(&vao_satellites); glEnable(GL_VERTEX_PROGRAM_POINT_SIZE); glDrawElements(GL_POINTS, n_satellites_render, GL_UNSIGNED_INT, satellite_indices); diff --git a/src/phys/phys.c b/src/phys/phys.c index 43f1eed..bab008d 100644 --- a/src/phys/phys.c +++ b/src/phys/phys.c @@ -101,7 +101,7 @@ void *phys_thrd(void *arguments) void phys_phys_sync(void) { - if (gs_reference_frame == REFERENCE_FRAME_INERTIAL) { + if (es_reference_frame == REFERENCE_FRAME_INERTIAL) { gint64 diff_ms = phys_ctx_sync.epoch_ms - e_phys.epoch_ms; float dang = (-2.f * (float)G_PI * diff_ms) / MS_IN_DAY; glm_vec2_copy((vec2){ e_camera.pos[0] * cosf(dang) - e_camera.pos[1] * sinf(dang), diff --git a/src/ui/setting.c b/src/ui/setting.c index 35e7df3..de10877 100644 --- a/src/ui/setting.c +++ b/src/ui/setting.c @@ -50,19 +50,22 @@ gboolean es_localtime = TRUE; gboolean es_clouds = TRUE; gboolean es_lighting = TRUE; gboolean es_invert_scroll = FALSE; -enum ReferenceFrame gs_reference_frame = REFERENCE_FRAME_FIXED; +guint es_satellite_scale = 1; +enum ReferenceFrame es_reference_frame = REFERENCE_FRAME_FIXED; static const char *SETTINGS_FILENAME = ".orbvis.conf"; static gchar *settings_filepath; static GtkWindow *window_settings; static GtkSwitch *switch_reference_frame; +static GtkAdjustment *adjustment_scale; static void on_settings_clicked(GtkToolButton *toolbutton, gpointer user_data); static gboolean on_window_settings_delete_event(GtkWidget *widget, GdkEvent *event, gpointer user_data); static void on_setting_toggled(GtkToggleButton *togglebutton, gpointer user_data); static void on_fetch_data_clicked(GtkButton *button, gpointer user_data); static gboolean on_reference_frame_state_set(GtkSwitch *widget, gboolean state, gpointer user_data); +static void on_adjustment_scale_value_changed(GtkAdjustment *adjustment, gpointer user_data); static void settings_load(void); static void settings_save(void); @@ -109,18 +112,26 @@ gboolean on_reference_frame_state_set(GtkSwitch *widget, gboolean state, gpointe (void)widget; (void)user_data; - gs_reference_frame = (enum ReferenceFrame)state; + es_reference_frame = (enum ReferenceFrame)state; return FALSE; } +void on_adjustment_scale_value_changed(GtkAdjustment *adjustment, gpointer user_data) +{ + (void)adjustment; + (void)user_data; + es_satellite_scale = (guint)gtk_adjustment_get_value(adjustment_scale); +} + void settings_save(void) { GKeyFile *settings_file = g_key_file_new(); unsigned i; for (i = 0; i < 4; i++) g_key_file_set_boolean(settings_file, "settings", settings[i].id, *settings[i].val); - g_key_file_set_integer(settings_file, "settings", "reference_frame", gs_reference_frame); + g_key_file_set_integer(settings_file, "settings", "reference_frame", es_reference_frame); + g_key_file_set_integer(settings_file, "settings", "satellite_scale", es_satellite_scale); g_key_file_save_to_file(settings_file, settings_filepath, NULL); g_key_file_free(settings_file); } @@ -140,18 +151,28 @@ void settings_load(void) *settings[i].val = val; } } + GError *err = NULL; gint reference_frame = g_key_file_get_integer(settings_file, "settings", "reference_frame", &err); + if (err) { + g_error_free(err); + err = NULL; + } else { + es_reference_frame = (enum ReferenceFrame)reference_frame; + } + guint satellite_scale = g_key_file_get_integer(settings_file, "settings", "satellite_scale", &err); if (err) g_error_free(err); else - gs_reference_frame = (enum ReferenceFrame)reference_frame; + es_satellite_scale = satellite_scale; + g_key_file_free(settings_file); unsigned i; for (i = 0; i < 4; i++) gtk_toggle_button_set_active(settings[i].button, *settings[i].val); - gtk_switch_set_state(switch_reference_frame, gs_reference_frame); + gtk_switch_set_state(switch_reference_frame, es_reference_frame); + gtk_adjustment_set_value(adjustment_scale, es_satellite_scale); } void setting_init(GtkBuilder *builder) @@ -162,10 +183,12 @@ void setting_init(GtkBuilder *builder) "on_window_settings_delete_event", G_CALLBACK(on_window_settings_delete_event), "on_fetch_data_clicked", G_CALLBACK(on_fetch_data_clicked), "on_reference_frame_state_set", G_CALLBACK(on_reference_frame_state_set), + "on_adjustment_scale_value_changed", G_CALLBACK(on_adjustment_scale_value_changed), NULL); window_settings = GTK_WINDOW(gtk_builder_get_object(builder, "window_settings")); switch_reference_frame = GTK_SWITCH(gtk_builder_get_object(builder, "reference_frame")); + adjustment_scale = GTK_ADJUSTMENT(gtk_builder_get_object(builder, "adjustment_scale")); GtkLabel *about = GTK_LABEL(gtk_builder_get_object(builder, "about")); gtk_label_set_text(about, ABOUT_STRING); diff --git a/src/ui/setting.h b/src/ui/setting.h index 430238f..870f19c 100644 --- a/src/ui/setting.h +++ b/src/ui/setting.h @@ -27,7 +27,8 @@ extern gboolean es_localtime; extern gboolean es_clouds; extern gboolean es_lighting; extern gboolean es_invert_scroll; -extern enum ReferenceFrame gs_reference_frame; +extern guint es_satellite_scale; +extern enum ReferenceFrame es_reference_frame; void setting_init(GtkBuilder *builder); void setting_deinit(void);