* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
-#include "main.h"
-#ifdef HAVE_LIBCHAMPLAIN
-#ifdef HAVE_LIBCHAMPLAIN_GTK
+#include <config.h>
+
+#if HAVE_LIBCHAMPLAIN
+#if HAVE_LIBCHAMPLAIN_GTK
#include "bar-gps.h"
+#include <cstring>
+
+#include <cairo.h>
+#include <champlain-gtk/champlain-gtk.h>
+#include <champlain/champlain.h>
+#include <clutter-gtk/clutter-gtk.h>
+#include <clutter/clutter.h>
+#include <gdk-pixbuf/gdk-pixbuf.h>
+#include <gdk/gdk.h>
+#include <glib-object.h>
+#include <pango/pango.h>
+
#include "bar.h"
+#include "compat.h"
+#include "debug.h"
#include "filedata.h"
+#include "intl.h"
#include "layout.h"
+#include "main-defines.h"
#include "metadata.h"
-#include "menu.h"
#include "misc.h"
#include "rcfile.h"
#include "thumb.h"
+#include "typedefs.h"
#include "ui-menu.h"
-#include "uri-utils.h"
#include "ui-utildlg.h"
-
-#include <clutter-gtk/clutter-gtk.h>
-#include <champlain/champlain.h>
-#include <champlain-gtk/champlain-gtk.h>
+#include "uri-utils.h"
#define MARKER_COLOUR 0x00, 0x00, 0xff, 0xff
#define TEXT_COLOUR 0x00, 0x00, 0x00, 0xff
*-------------------------------------------------------------------
*/
-typedef struct _PaneGPSData PaneGPSData;
-struct _PaneGPSData
+struct PaneGPSData
{
PaneData pane;
GtkWidget *widget;
};
static gint n_gps_entry_drop_types = 2;
-static void bar_pane_gps_close_cancel_cb(GenericDialog *UNUSED(gd), gpointer data)
+static void bar_pane_gps_close_cancel_cb(GenericDialog *, gpointer data)
{
- PaneGPSData *pgd = static_cast<PaneGPSData *>(data);
+ auto pgd = static_cast<PaneGPSData *>(data);
g_list_free(pgd->geocode_list);
}
-static void bar_pane_gps_close_save_cb(GenericDialog *UNUSED(gd), gpointer data)
+static void bar_pane_gps_close_save_cb(GenericDialog *, gpointer data)
{
- PaneGPSData *pgd = static_cast<PaneGPSData *>(data);
+ auto pgd = static_cast<PaneGPSData *>(data);
FileData *fd;
GList *work;
metadata_write_GPS_coord(fd, "Xmp.exif.GPSLongitude", pgd->dest_longitude);
}
}
- g_list_free(work);
g_list_free(pgd->geocode_list);
}
- static void bar_pane_gps_dnd_receive(GtkWidget *pane, GdkDragContext *UNUSED(context),
+ static void bar_pane_gps_dnd_receive(GtkWidget *pane, GdkDragContext *,
gint x, gint y,
GtkSelectionData *selection_data, guint info,
- guint UNUSED(time), gpointer UNUSED(data))
+ guint, gpointer)
{
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;
count = 0;
geocoded_count = 0;
- pgd->geocode_list = NULL;
+ pgd->geocode_list = nullptr;
list = uri_filelist_from_gtk_selection_data(selection_data);
}
}
}
- g_list_free(work);
+ g_list_free(list);
if(count)
{
}
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)
_("\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", NULL, TRUE,
+ "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);
- generic_dialog_add_button(gd, GTK_STOCK_SAVE, NULL,
+ generic_dialog_add_button(gd, GQ_ICON_SAVE, _("Save"),
bar_pane_gps_close_save_cb, TRUE);
gtk_widget_show(gd->dialog);
- g_free(location);
g_string_free(message, TRUE);
}
}
if (info == TARGET_TEXT_PLAIN)
{
- location = decode_geo_parameters((gchar *)gtk_selection_data_get_data(selection_data));
+ location = decode_geo_parameters(reinterpret_cast<const gchar *>(gtk_selection_data_get_data(selection_data)));
if (!(g_strstr_len(location,-1,"Error")))
{
latlong = g_strsplit(location, " ", 2);
champlain_view_center_on(CHAMPLAIN_VIEW(pgd->gps_view),
- g_ascii_strtod(latlong[0],NULL),
- g_ascii_strtod(latlong[1],NULL));
+ g_ascii_strtod(latlong[0],nullptr),
+ g_ascii_strtod(latlong[1],nullptr));
g_strfreev(latlong);
}
g_free(location);
}
-
- return;
}
static void bar_pane_gps_dnd_init(gpointer data)
{
- PaneGPSData *pgd = static_cast<PaneGPSData *>(data);
+ auto pgd = static_cast<PaneGPSData *>(data);
gtk_drag_dest_set(pgd->widget,
static_cast<GtkDestDefaults>(GTK_DEST_DEFAULT_MOTION | GTK_DEST_DEFAULT_HIGHLIGHT | GTK_DEST_DEFAULT_DROP),
}
-static gboolean bar_gps_draw_direction (ClutterCanvas *UNUSED(canvas),
- cairo_t *cr, gpointer UNUSED(data))
+static gboolean bar_gps_draw_direction (ClutterCanvas *, cairo_t *cr, gpointer)
{
cairo_set_source_rgb(cr, 255, 0, 0);
marker = CLUTTER_ACTOR(data);
fd = static_cast<FileData *>(g_object_get_data(G_OBJECT(marker), "file_fd"));
- if (fd->thumb_pixbuf != NULL)
+ if (fd->thumb_pixbuf != nullptr)
{
actor = gtk_clutter_texture_new();
- gtk_clutter_texture_set_from_pixbuf(GTK_CLUTTER_TEXTURE(actor), fd->thumb_pixbuf, NULL);
+ gtk_clutter_texture_set_from_pixbuf(GTK_CLUTTER_TEXTURE(actor), fd->thumb_pixbuf, nullptr);
champlain_label_set_image(CHAMPLAIN_LABEL(marker), actor);
}
thumb_loader_free(tl);
}
-static void bar_pane_gps_thumb_error_cb(ThumbLoader *tl, gpointer UNUSED(data))
+static void bar_pane_gps_thumb_error_cb(ThumbLoader *tl, gpointer)
{
thumb_loader_free(tl);
}
-static gboolean bar_pane_gps_marker_keypress_cb(GtkWidget *widget, ClutterButtonEvent *bevent, gpointer UNUSED(data))
+static gboolean bar_pane_gps_marker_keypress_cb(GtkWidget *widget, ClutterButtonEvent *bevent, gpointer)
{
- //PaneGPSData *pgd = static_cast<//PaneGPSData *>(data);
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 = NULL;
+ gchar *altitude = nullptr;
ThumbLoader *tl;
if (bevent->button == MOUSE_BUTTON_LEFT)
/* If the marker is showing a thumbnail, delete it
*/
current_image = champlain_label_get_image(CHAMPLAIN_LABEL(label_marker));
- if (current_image != NULL)
+ if (current_image != nullptr)
{
clutter_actor_destroy(CLUTTER_ACTOR(current_image));
- champlain_label_set_image(CHAMPLAIN_LABEL(label_marker), NULL);
+ champlain_label_set_image(CHAMPLAIN_LABEL(label_marker), nullptr);
}
current_text = g_strdup(champlain_label_get_text(CHAMPLAIN_LABEL(label_marker)));
* If not, call the thumb_loader to generate a thumbnail and update the marker later in the
* thumb_loader callback
*/
- if (fd->thumb_pixbuf != NULL)
+ if (fd->thumb_pixbuf != nullptr)
{
actor = gtk_clutter_texture_new();
- gtk_clutter_texture_set_from_pixbuf(GTK_CLUTTER_TEXTURE(actor), fd->thumb_pixbuf, NULL);
+ gtk_clutter_texture_set_from_pixbuf(GTK_CLUTTER_TEXTURE(actor), fd->thumb_pixbuf, nullptr);
champlain_label_set_image(CHAMPLAIN_LABEL(label_marker), actor);
}
- else if (fd->pixbuf != NULL)
+ else if (fd->pixbuf != nullptr)
{
actor = gtk_clutter_texture_new();
width = gdk_pixbuf_get_width (fd->pixbuf);
gtk_clutter_texture_set_from_pixbuf(GTK_CLUTTER_TEXTURE(actor),
gdk_pixbuf_rotate_simple(gdk_pixbuf_scale_simple(fd->pixbuf, THUMB_SIZE, height * THUMB_SIZE / width,
- GDK_INTERP_NEAREST), rotate), NULL);
+ GDK_INTERP_NEAREST), rotate), nullptr);
champlain_label_set_image(CHAMPLAIN_LABEL(label_marker), actor);
}
else
thumb_loader_set_callbacks(tl,
bar_pane_gps_thumb_done_cb,
bar_pane_gps_thumb_error_cb,
- NULL,
+ nullptr,
label_marker);
thumb_loader_start(tl, fd);
}
g_string_append(text, text_from_time(fd->date));
g_string_append(text, "\n");
altitude = metadata_read_string(fd, "formatted.GPSAltitude", METADATA_FORMATTED);
- if (altitude != NULL)
+ if (altitude != nullptr)
{
g_string_append(text, altitude);
}
static gboolean bar_pane_gps_create_markers_cb(gpointer data)
{
- PaneGPSData *pgd = static_cast<PaneGPSData *>(data);
+ auto pgd = static_cast<PaneGPSData *>(data);
gdouble latitude;
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 };
ClutterContent *canvas;
gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(pgd->progress),
- (gdouble)(pgd->selection_count - g_list_length(pgd->not_added)) /
- (gdouble)pgd->selection_count);
+ static_cast<gdouble>(pgd->selection_count - g_list_length(pgd->not_added)) /
+ static_cast<gdouble>(pgd->selection_count));
message = g_string_new("");
g_string_printf(message, "%i/%i", (pgd->selection_count - g_list_length(pgd->not_added)),
champlain_bounding_box_extend(pgd->bbox, latitude, longitude);
}
- return TRUE;
+ return G_SOURCE_CONTINUE;
}
if (pgd->centre_map_checked)
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);
}
}
gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(pgd->progress), 0);
- gtk_progress_bar_set_text(GTK_PROGRESS_BAR(pgd->progress), NULL);
+ gtk_progress_bar_set_text(GTK_PROGRESS_BAR(pgd->progress), nullptr);
pgd->create_markers_id = 0;
- return FALSE;
+ return G_SOURCE_REMOVE;
}
static void bar_pane_gps_update(PaneGPSData *pgd)
if (pgd->bbox) champlain_bounding_box_free(pgd->bbox);
list = layout_selection_list(pgd->pane.lw);
- list = file_data_process_groups_in_selection(list, FALSE, NULL);
+ list = file_data_process_groups_in_selection(list, FALSE, nullptr);
pgd->selection_list = list;
pgd->not_added = list;
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;
map_factory = champlain_map_source_factory_dup_default();
map_source = champlain_map_source_factory_create(map_factory, map_id);
- if (map_source != NULL)
+ if (map_source != nullptr)
{
g_object_set(G_OBJECT(pgd->gps_view), "map-source", map_source, NULL);
}
g_object_unref(map_factory);
}
-void bar_pane_gps_enable_markers_checked_toggle_cb(GtkWidget *UNUSED(menu_widget), gpointer data)
+static void bar_pane_gps_enable_markers_checked_toggle_cb(GtkWidget *, gpointer data)
{
- PaneGPSData *pgd = static_cast<PaneGPSData *>(data);
+ auto pgd = static_cast<PaneGPSData *>(data);
if (pgd->enable_markers_checked)
{
}
}
-static void bar_pane_gps_centre_map_checked_toggle_cb(GtkWidget *UNUSED(menu_widget), gpointer data)
+static void bar_pane_gps_centre_map_checked_toggle_cb(GtkWidget *, gpointer data)
{
- PaneGPSData *pgd = static_cast<PaneGPSData *>(data);
+ auto pgd = static_cast<PaneGPSData *>(data);
if (pgd->centre_map_checked)
{
static void bar_pane_gps_change_map_cb(GtkWidget *widget, gpointer data)
{
- PaneGPSData *pgd = static_cast<PaneGPSData *>(data);
+ auto pgd = static_cast<PaneGPSData *>(data);
gchar *mapsource;
if (!gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(widget)))
gint zoom;
ChamplainMapSource *mapsource;
const gchar *map_id;
- gchar *str = NULL;
- GString *buffer = g_string_new(str);
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;
WRITE_NL();
write_char_option(outstr, indent, "map-id", map_id);
+ GString *buffer = g_string_new(nullptr);
+
g_object_get(G_OBJECT(pgd->gps_view), "zoom-level", &zoom, NULL);
g_string_printf(buffer, "%d", zoom);
WRITE_NL();
WRITE_NL();
WRITE_STRING("/>");
- g_object_unref(mapsource);
-
+ g_string_free(buffer, TRUE);
+ g_object_unref(mapsource);
}
static void bar_pane_gps_slider_changed_cb(GtkScaleButton *slider,
gdouble zoom,
gpointer data)
{
- PaneGPSData *pgd = static_cast<PaneGPSData *>(data);
+ auto pgd = static_cast<PaneGPSData *>(data);
GString *message;
message = g_string_new("");
- g_string_printf(message, _("Zoom %i"), (gint)zoom);
+ g_string_printf(message, _("Zoom %i"), static_cast<gint>(zoom));
- g_object_set(G_OBJECT(CHAMPLAIN_VIEW(pgd->gps_view)), "zoom-level", (gint)zoom, NULL);
+ g_object_set(G_OBJECT(CHAMPLAIN_VIEW(pgd->gps_view)), "zoom-level", static_cast<gint>(zoom), NULL);
gtk_widget_set_tooltip_text(GTK_WIDGET(slider), message->str);
g_string_free(message, TRUE);
}
-static void bar_pane_gps_view_state_changed_cb(ChamplainView *view,
- GParamSpec *UNUSED(gobject),
- gpointer data)
+static void bar_pane_gps_view_state_changed_cb(ChamplainView *view, GParamSpec *, gpointer data)
{
- PaneGPSData *pgd = static_cast<PaneGPSData *>(data);
+ auto pgd = static_cast<PaneGPSData *>(data);
ChamplainState status;
gint zoom;
GString *message;
}
gtk_widget_set_tooltip_text(GTK_WIDGET(pgd->slider), message->str);
- gtk_scale_button_set_value(GTK_SCALE_BUTTON(pgd->slider), (gdouble)zoom);
+ gtk_scale_button_set_value(GTK_SCALE_BUTTON(pgd->slider), static_cast<gdouble>(zoom));
g_string_free(message, TRUE);
}
static void bar_pane_gps_notify_cb(FileData *fd, NotifyType type, gpointer data)
{
- PaneGPSData *pgd = static_cast<PaneGPSData *>(data);
+ auto pgd = static_cast<PaneGPSData *>(data);
if ((type & (NOTIFY_REREAD | NOTIFY_CHANGE | NOTIFY_METADATA)) &&
g_list_find(pgd->selection_list, fd))
}
}
-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;
while (map_list)
{
- map_desc = (ChamplainMapSourceDesc *)(map_list->data);
+ map_desc = static_cast<ChamplainMapSourceDesc *>(map_list->data);
menu_item_add_radio(menu,
champlain_map_source_desc_get_name(map_desc),
- (gpointer)champlain_map_source_desc_get_id(map_desc),
+ const_cast<gchar *>(champlain_map_source_desc_get_id(map_desc)),
strcmp(champlain_map_source_desc_get_id(map_desc), current) == 0,
G_CALLBACK(bar_pane_gps_change_map_cb), 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("");
}
gd = generic_dialog_new(_("Map centering"),
- "map_centering", NULL, TRUE, NULL, pgd);
- generic_dialog_add_message(gd, GTK_STOCK_DIALOG_INFO,
- "Map Centering", message->str, TRUE);
- generic_dialog_add_button(gd, GTK_STOCK_OK, NULL, NULL, TRUE);
+ "map_centering", nullptr, TRUE, nullptr, pgd);
+ generic_dialog_add_message(gd, GQ_ICON_DIALOG_INFO, _("Map Centering"), message->str, TRUE);
+ generic_dialog_add_button(gd, GQ_ICON_OK, "OK", nullptr, TRUE);
gtk_widget_show(gd->dialog);
g_string_free(message, TRUE);
}
-static gboolean bar_pane_gps_map_keypress_cb(GtkWidget *UNUSED(widget), GdkEventButton *bevent, gpointer data)
+#if 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)
{
- PaneGPSData *pgd = static_cast<PaneGPSData *>(data);
+ auto pgd = static_cast<PaneGPSData *>(data);
GtkWidget *menu;
GtkClipboard *clipboard;
gchar *geo_coords;
if (bevent->button == MOUSE_BUTTON_RIGHT)
{
menu = bar_pane_gps_menu(pgd);
- gtk_menu_popup_at_pointer(GTK_MENU(menu), NULL);
+ 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",
return TRUE;
}
- else
- {
- return FALSE;
- }
+
+ return FALSE;
}
+#endif
-static void bar_pane_gps_destroy(GtkWidget *UNUSED(widget), gpointer data)
+static void bar_pane_gps_destroy(GtkWidget *, gpointer data)
{
- PaneGPSData *pgd = static_cast<PaneGPSData *>(data);
+ auto pgd = static_cast<PaneGPSData *>(data);
file_data_unregister_notify_func(bar_pane_gps_notify_cb, pgd);
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[] = {"zoom-in", "zoom-out", NULL};
+ const gchar *slider_list[] = {GQ_ICON_ZOOM_IN, GQ_ICON_ZOOM_OUT, nullptr};
const gchar **slider_icons = slider_list;
pgd = g_new0(PaneGPSData, 1);
pgd->pane.expanded = expanded;
pgd->height = height;
- frame = gtk_frame_new(NULL);
+ frame = gtk_frame_new(nullptr);
DEBUG_NAME(frame);
vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);
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);
+#if 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), (gdouble)zoom);
+ gtk_scale_button_set_value(GTK_SCALE_BUTTON(slider), static_cast<gdouble>(zoom));
progress = gtk_progress_bar_new();
gtk_progress_bar_set_text(GTK_PROGRESS_BAR(progress), "");
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));
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);
GtkWidget *bar_pane_gps_new_from_config(const gchar **attribute_names, const gchar **attribute_values)
{
gchar *title = g_strdup(_("GPS Map"));
- gchar *map_id = NULL;
+ gchar *map_id = nullptr;
gboolean expanded = TRUE;
gint height = 350;
gint zoom = 7;
}
bar_pane_translate_title(PANE_COMMENT, id, &title);
- latitude = (gdouble)int_latitude / 1000000;
- longitude = (gdouble)int_longitude / 1000000;
+ latitude = static_cast<gdouble>(int_latitude) / 1000000;
+ longitude = static_cast<gdouble>(int_longitude) / 1000000;
ret = bar_pane_gps_new(id, title, map_id, zoom, latitude, longitude, expanded, height);
g_free(title);
g_free(map_id);
{
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)
return;
- gchar *title = NULL;
+ gchar *title = nullptr;
while (*attribute_names)
{
}
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;
}
bar_update_expander(pane);
}
-#endif
-#endif
+#endif // HAVE_LIBCHAMPLAIN_GTK
+#endif // HAVE_LIBCHAMPLAIN
/* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */