Sort headers using clang-tidy
[geeqie.git] / src / bar-gps.cc
index 5a86a75..b17e006 100644 (file)
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#include "main.h"
+#include <config.h>
+
 #ifdef HAVE_LIBCHAMPLAIN
 #ifdef HAVE_LIBCHAMPLAIN_GTK
 
 #include "bar-gps.h"
 
 #include "bar.h"
+#include "compat.h"
+#include "debug.h"
 #include "filedata.h"
+#include "intl.h"
 #include "layout.h"
-#include "metadata.h"
+#include "main-defines.h"
 #include "menu.h"
+#include "metadata.h"
 #include "misc.h"
 #include "rcfile.h"
 #include "thumb.h"
 #include "ui-menu.h"
-#include "uri-utils.h"
 #include "ui-utildlg.h"
+#include "uri-utils.h"
 
-#include <clutter-gtk/clutter-gtk.h>
-#include <champlain/champlain.h>
 #include <champlain-gtk/champlain-gtk.h>
+#include <champlain/champlain.h>
+#include <clutter-gtk/clutter-gtk.h>
 
 #define MARKER_COLOUR 0x00, 0x00, 0xff, 0xff
 #define TEXT_COLOUR 0x00, 0x00, 0x00, 0xff
@@ -132,10 +137,14 @@ static void bar_pane_gps_close_save_cb(GenericDialog *, gpointer data)
 {
        PaneGPSData *pgd;
        GenericDialog *gd;
-       FileData *fd, *fd_found;
-       GList *work, *list;
-       gint count, geocoded_count;
-       gdouble latitude, longitude;
+       FileData *fd;
+       FileData *fd_found;
+       GList *work;
+       GList *list;
+       gint count;
+       gint geocoded_count;
+       gdouble latitude;
+       gdouble longitude;
        GString *message;
        gchar *location;
        gchar **latlong;
@@ -191,12 +200,12 @@ static void bar_pane_gps_close_save_cb(GenericDialog *, gpointer data)
                                        }
                                if (geocoded_count == 1 && count == 1)
                                        {
-                                       g_string_append_printf(message,
+                                       g_string_append(message,
                                                        _("\nThis image is already geocoded!"));
                                        }
                                else if (geocoded_count == 1 && count > 1)
                                        {
-                                       g_string_append_printf(message,
+                                       g_string_append(message,
                                                        _("\nOne image is already geocoded!"));
                                        }
                                else if (geocoded_count > 1 && count > 1)
@@ -205,14 +214,12 @@ static void bar_pane_gps_close_save_cb(GenericDialog *, gpointer data)
                                                        _("\n%i Images are already geocoded!"), geocoded_count);
                                        }
 
-                               location = g_strdup_printf("%lf %lf", pgd->dest_latitude,
-                                                                                                               pgd->dest_longitude);
-                               g_string_append_printf(message, _("\n\nPosition: %s \n"), location);
+                               g_string_append_printf(message, _("\n\nPosition: %lf %lf \n"), pgd->dest_latitude, pgd->dest_longitude);
 
                                gd = generic_dialog_new(_("Geocode images"),
                                                        "geocode_images", nullptr, TRUE,
                                                        bar_pane_gps_close_cancel_cb, pgd);
-                               generic_dialog_add_message(gd, GTK_STOCK_DIALOG_QUESTION,
+                               generic_dialog_add_message(gd, GQ_ICON_DIALOG_QUESTION,
                                                        _("Write lat/long to meta-data?"),
                                                        message->str, TRUE);
 
@@ -220,7 +227,6 @@ static void bar_pane_gps_close_save_cb(GenericDialog *, gpointer data)
                                                                                                bar_pane_gps_close_save_cb, TRUE);
 
                                gtk_widget_show(gd->dialog);
-                               g_free(location);
                                g_string_free(message, TRUE);
                                }
                        }
@@ -292,15 +298,18 @@ static void bar_pane_gps_thumb_error_cb(ThumbLoader *tl, gpointer)
 static gboolean bar_pane_gps_marker_keypress_cb(GtkWidget *widget, ClutterButtonEvent *bevent, gpointer)
 {
        FileData *fd;
-       ClutterActor *label_marker, *parent_marker;
+       ClutterActor *label_marker;
+       ClutterActor *parent_marker;
        ClutterColor marker_colour = { MARKER_COLOUR };
        ClutterColor text_colour = { TEXT_COLOUR };
        ClutterColor thumb_colour = { THUMB_COLOUR };
        gchar *current_text;
-       ClutterActor *actor, *direction;
+       ClutterActor *actor;
+       ClutterActor *direction;
        ClutterActor *current_image;
        GString *text;
-       gint height, width;
+       gint height;
+       gint width;
        GdkPixbufRotation rotate;
        gchar *altitude = nullptr;
        ThumbLoader *tl;
@@ -330,7 +339,7 @@ static gboolean bar_pane_gps_marker_keypress_cb(GtkWidget *widget, ClutterButton
                         * If not, call the thumb_loader to generate a thumbnail and update the marker later in the
                         * thumb_loader callback
                         */
-                        if (fd->thumb_pixbuf != nullptr)
+                       if (fd->thumb_pixbuf != nullptr)
                                {
                                actor = gtk_clutter_texture_new();
                                gtk_clutter_texture_set_from_pixbuf(GTK_CLUTTER_TEXTURE(actor), fd->thumb_pixbuf, nullptr);
@@ -428,7 +437,8 @@ static gboolean bar_pane_gps_create_markers_cb(gpointer data)
        gdouble longitude;
        gdouble compass;
        FileData *fd;
-       ClutterActor *parent_marker, *label_marker;
+       ClutterActor *parent_marker;
+       ClutterActor *label_marker;
        ClutterActor *direction;
        ClutterColor marker_colour = { MARKER_COLOUR };
        ClutterColor thumb_colour = { THUMB_COLOUR };
@@ -504,7 +514,7 @@ static gboolean bar_pane_gps_create_markers_cb(gpointer data)
                        champlain_bounding_box_get_center(pgd->bbox, &latitude, &longitude);
                        champlain_view_go_to(CHAMPLAIN_VIEW(pgd->gps_view), latitude, longitude);
                        }
-                else if (pgd->num_added > 1)
+               else if (pgd->num_added > 1)
                        {
                        champlain_view_ensure_visible(CHAMPLAIN_VIEW(pgd->gps_view), pgd->bbox, TRUE);
                        }
@@ -564,7 +574,7 @@ static void bar_pane_gps_update(PaneGPSData *pgd)
        pgd->num_added = 0;
 }
 
-void bar_pane_gps_set_map_source(PaneGPSData *pgd, const gchar *map_id)
+static void bar_pane_gps_set_map_source(PaneGPSData *pgd, const gchar *map_id)
 {
        ChamplainMapSource *map_source;
        ChamplainMapSourceFactory *map_factory;
@@ -580,7 +590,7 @@ void bar_pane_gps_set_map_source(PaneGPSData *pgd, const gchar *map_id)
        g_object_unref(map_factory);
 }
 
-void bar_pane_gps_enable_markers_checked_toggle_cb(GtkWidget *, gpointer data)
+static void bar_pane_gps_enable_markers_checked_toggle_cb(GtkWidget *, gpointer data)
 {
        auto pgd = static_cast<PaneGPSData *>(data);
 
@@ -667,7 +677,8 @@ static void bar_pane_gps_write_config(GtkWidget *pane, GString *outstr, gint ind
        const gchar *map_id;
        gdouble position;
        gint int_position;
-       gint w, h;
+       gint w;
+       gint h;
 
        pgd = static_cast<PaneGPSData *>(g_object_get_data(G_OBJECT(pane), "pane_data"));
        if (!pgd) return;
@@ -769,7 +780,7 @@ static void bar_pane_gps_notify_cb(FileData *fd, NotifyType type, gpointer data)
                }
 }
 
-const gchar *bar_pane_gps_get_map_id(PaneGPSData *pgd)
+static const gchar *bar_pane_gps_get_map_id(PaneGPSData *pgd)
 {
        const gchar *map_id;
        ChamplainMapSource *mapsource;
@@ -828,7 +839,7 @@ static GtkWidget *bar_pane_gps_menu(PaneGPSData *pgd)
 
 /* Determine if the map is to be re-centred on the marker when another photo is selected
  */
-void bar_pane_gps_map_centreing(PaneGPSData *pgd)
+static void bar_pane_gps_map_centreing(PaneGPSData *pgd)
 {
        GenericDialog *gd;
        GString *message = g_string_new("");
@@ -846,15 +857,22 @@ void bar_pane_gps_map_centreing(PaneGPSData *pgd)
 
        gd = generic_dialog_new(_("Map centering"),
                                "map_centering", nullptr, TRUE, nullptr, pgd);
-       generic_dialog_add_message(gd, GTK_STOCK_DIALOG_INFO,
+       generic_dialog_add_message(gd, GQ_ICON_DIALOG_INFO,
                                "Map Centering", message->str, TRUE);
-       generic_dialog_add_button(gd, GQ_ICON_OK, "OK", NULL, TRUE);
+       generic_dialog_add_button(gd, GQ_ICON_OK, "OK", nullptr, TRUE);
 
        gtk_widget_show(gd->dialog);
 
        g_string_free(message, TRUE);
 }
 
+#ifdef HAVE_GTK4
+static gboolean bar_pane_gps_map_keypress_cb(GtkWidget *, GdkEventButton *bevent, gpointer data)
+{
+/* @FIXME GTK4 stub */
+       return FALSE;
+}
+#else
 static gboolean bar_pane_gps_map_keypress_cb(GtkWidget *, GdkEventButton *bevent, gpointer data)
 {
        auto pgd = static_cast<PaneGPSData *>(data);
@@ -868,12 +886,14 @@ static gboolean bar_pane_gps_map_keypress_cb(GtkWidget *, GdkEventButton *bevent
                gtk_menu_popup_at_pointer(GTK_MENU(menu), nullptr);
                return TRUE;
                }
-       else if (bevent->button == MOUSE_BUTTON_MIDDLE)
+
+       if (bevent->button == MOUSE_BUTTON_MIDDLE)
                {
                bar_pane_gps_map_centreing(pgd);
                return TRUE;
                }
-       else if (bevent->button == MOUSE_BUTTON_LEFT)
+
+       if (bevent->button == MOUSE_BUTTON_LEFT)
                {
                clipboard = gtk_clipboard_get(GDK_SELECTION_PRIMARY);
                geo_coords = g_strdup_printf("%lf %lf",
@@ -887,11 +907,10 @@ static gboolean bar_pane_gps_map_keypress_cb(GtkWidget *, GdkEventButton *bevent
 
                return TRUE;
                }
-       else
-               {
-               return FALSE;
-               }
+
+       return FALSE;
 }
+#endif
 
 static void bar_pane_gps_destroy(GtkWidget *, gpointer data)
 {
@@ -917,9 +936,13 @@ GtkWidget *bar_pane_gps_new(const gchar *id, const gchar *title, const gchar *ma
                                        gboolean expanded, gint height)
 {
        PaneGPSData *pgd;
-       GtkWidget *vbox, *frame;
+       GtkWidget *vbox;
+       GtkWidget *frame;
        GtkWidget *gpswidget;
-       GtkWidget *status, *state, *progress, *slider;
+       GtkWidget *status;
+       GtkWidget *state;
+       GtkWidget *progress;
+       GtkWidget *slider;
        ChamplainMarkerLayer *layer;
        ChamplainView *view;
        const gchar *slider_list[] = {GQ_ICON_ZOOM_IN, GQ_ICON_ZOOM_OUT, nullptr};
@@ -944,11 +967,15 @@ GtkWidget *bar_pane_gps_new(const gchar *id, const gchar *title, const gchar *ma
        gpswidget = gtk_champlain_embed_new();
        view = gtk_champlain_embed_get_view(GTK_CHAMPLAIN_EMBED(gpswidget));
 
-       gtk_box_pack_start(GTK_BOX(vbox), gpswidget, TRUE, TRUE, 0);
+       gq_gtk_box_pack_start(GTK_BOX(vbox), gpswidget, TRUE, TRUE, 0);
        gtk_container_add(GTK_CONTAINER(frame), vbox);
 
        status = gtk_box_new(GTK_ORIENTATION_HORIZONTAL,0);
+#ifdef HAVE_GTK4
+       slider = gtk_scale_button_new(1, 17, 1, slider_icons);
+#else
        slider = gtk_scale_button_new(GTK_ICON_SIZE_SMALL_TOOLBAR, 1, 17, 1, slider_icons);
+#endif
        gtk_widget_set_tooltip_text(slider, _("Zoom"));
        gtk_scale_button_set_value(GTK_SCALE_BUTTON(slider), static_cast<gdouble>(zoom));
 
@@ -961,10 +988,10 @@ GtkWidget *bar_pane_gps_new(const gchar *id, const gchar *title, const gchar *ma
        gtk_label_set_ellipsize(GTK_LABEL(state), PANGO_ELLIPSIZE_START);
        gtk_widget_set_tooltip_text(state, _("Zoom level"));
 
-       gtk_box_pack_start(GTK_BOX(status), GTK_WIDGET(slider), FALSE, FALSE, 0);
-       gtk_box_pack_start(GTK_BOX(status), GTK_WIDGET(state), FALSE, FALSE, 5);
-       gtk_box_pack_end(GTK_BOX(status), GTK_WIDGET(progress), FALSE, FALSE, 0);
-       gtk_box_pack_end(GTK_BOX(vbox),GTK_WIDGET(status), FALSE, FALSE, 0);
+       gq_gtk_box_pack_start(GTK_BOX(status), GTK_WIDGET(slider), FALSE, FALSE, 0);
+       gq_gtk_box_pack_start(GTK_BOX(status), GTK_WIDGET(state), FALSE, FALSE, 5);
+       gq_gtk_box_pack_end(GTK_BOX(status), GTK_WIDGET(progress), FALSE, FALSE, 0);
+       gq_gtk_box_pack_end(GTK_BOX(vbox),GTK_WIDGET(status), FALSE, FALSE, 0);
 
        layer = champlain_marker_layer_new();
        champlain_view_add_layer(view, CHAMPLAIN_LAYER(layer));
@@ -991,7 +1018,7 @@ GtkWidget *bar_pane_gps_new(const gchar *id, const gchar *title, const gchar *ma
        g_object_set_data(G_OBJECT(pgd->widget), "pane_data", pgd);
        g_signal_connect(G_OBJECT(pgd->widget), "destroy", G_CALLBACK(bar_pane_gps_destroy), pgd);
 
-       gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_IN);
+       gq_gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_IN);
 
        gtk_widget_set_size_request(pgd->widget, -1, height);
 
@@ -1068,8 +1095,10 @@ void bar_pane_gps_update_from_config(GtkWidget *pane, const gchar **attribute_na
 {
        PaneGPSData *pgd;
        gint zoom;
-       gint int_longitude, int_latitude;
-       gdouble longitude, latitude;
+       gint int_longitude;
+       gint int_latitude;
+       gdouble longitude;
+       gdouble latitude;
 
        pgd = static_cast<PaneGPSData *>(g_object_get_data(G_OBJECT(pane), "pane_data"));
        if (!pgd)
@@ -1099,13 +1128,13 @@ void bar_pane_gps_update_from_config(GtkWidget *pane, const gchar **attribute_na
                        }
                if (READ_INT_CLAMP_FULL("longitude", int_longitude, -90000000, +90000000))
                        {
-                       longitude = int_longitude / 1000000;
+                       longitude = int_longitude / 1000000.0;
                        g_object_set(G_OBJECT(CHAMPLAIN_VIEW(pgd->gps_view)), "longitude", longitude, NULL);
                        continue;
                        }
                if (READ_INT_CLAMP_FULL("latitude", int_latitude, -90000000, +90000000))
                        {
-                       latitude = int_latitude / 1000000;
+                       latitude = int_latitude / 1000000.0;
                        g_object_set(G_OBJECT(CHAMPLAIN_VIEW(pgd->gps_view)), "latitude", latitude, NULL);
                        continue;
                        }