/*
- * Copyright (C) 2009-2010 Andy Spencer <andy753421@gmail.com>
+ * Copyright (C) 2009-2011 Andy Spencer <andy753421@gmail.com>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
#include <config.h>
#include <math.h>
-#include <GL/gl.h>
#include <glib/gstdio.h>
#include <grits.h>
#include <rsl.h>
#include "level2.h"
+#include "../compat.h"
+
#define ISO_MIN 30
#define ISO_MAX 80
/* Draw wsr88d */
Sweep *sweep = level2->sweep;
- glDisable(GL_ALPHA_TEST);
+ //glDisable(GL_ALPHA_TEST);
glDisable(GL_CULL_FACE);
glDisable(GL_LIGHTING);
glEnable(GL_TEXTURE_2D);
vol->disp = GRITS_VOLUME_SURFACE;
GRITS_OBJECT(vol)->center = GRITS_OBJECT(level2)->center;
grits_viewer_add(GRITS_OBJECT(level2)->viewer,
- GRITS_OBJECT(vol), GRITS_LEVEL_WORLD, TRUE);
+ GRITS_OBJECT(vol), GRITS_LEVEL_WORLD+5, TRUE);
level2->volume = vol;
}
if (ISO_MIN < level && level < ISO_MAX) {
/* Load the radar file */
RSL_read_these_sweeps("all", NULL);
- g_message("read start");
+ g_debug("AWeatherLevel2: rsl read start");
Radar *radar = RSL_wsr88d_to_radar(raw, (gchar*)site);
- g_message("read done");
+ g_debug("AWeatherLevel2: rsl read done");
g_free(raw);
if (!radar)
return NULL;
{
AWeatherLevel2 *level2 = _level2;
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(button))) {
- gint type = (gint)g_object_get_data(G_OBJECT(button), "type");
- gint elev = (gint)g_object_get_data(G_OBJECT(button), "elev");
+ gint type = (glong)g_object_get_data(G_OBJECT(button), "type");
+ gint elev = (glong)g_object_get_data(G_OBJECT(button), "elev");
aweather_level2_set_sweep(level2, type, (float)elev/100);
//level2->colormap = level2->sweep_colors;
}
aweather_level2_set_iso(level2, level);
}
+static gchar *_on_format_value(GtkScale *scale, gdouble value, gpointer _level2)
+{
+ return g_strdup_printf("%.1lf dBZ ", value);
+}
+
GtkWidget *aweather_level2_get_config(AWeatherLevel2 *level2)
{
Radar *radar = level2->radar;
cols-1,cols, 0,1, GTK_FILL,GTK_FILL, 0,0);
}
- elev_box = gtk_hbox_new(TRUE, 0);
+ elev_box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
+ gtk_box_set_homogeneous(GTK_BOX(elev_box), TRUE);
gtk_table_attach(GTK_TABLE(table), elev_box,
cols-1,cols, rows-1,rows, GTK_FILL,GTK_FILL, 0,0);
}
g_object_set(button, "draw-indicator", FALSE, NULL);
gtk_box_pack_end(GTK_BOX(elev_box), button, TRUE, TRUE, 0);
- g_object_set_data(G_OBJECT(button), "level2", (gpointer)level2);
- g_object_set_data(G_OBJECT(button), "type", (gpointer)vi);
- g_object_set_data(G_OBJECT(button), "elev", (gpointer)(int)(elev*100));
+ g_object_set_data(G_OBJECT(button), "level2", level2);
+ g_object_set_data(G_OBJECT(button), "type", (gpointer)(guintptr)vi);
+ g_object_set_data(G_OBJECT(button), "elev", (gpointer)(guintptr)(elev*100));
g_signal_connect(button, "clicked", G_CALLBACK(_on_sweep_clicked), level2);
}
}
gtk_misc_set_alignment(GTK_MISC(row_label), 1, 0.5);
gtk_table_attach(GTK_TABLE(table), row_label,
0,1, rows,rows+1, GTK_FILL,GTK_FILL, 5,0);
- GtkWidget *scale = gtk_hscale_new_with_range(ISO_MIN, ISO_MAX, 0.5);
+ GtkWidget *scale = gtk_scale_new_with_range(GTK_ORIENTATION_HORIZONTAL, ISO_MIN, ISO_MAX, 0.5);
gtk_widget_set_size_request(scale, -1, 26);
gtk_scale_set_value_pos(GTK_SCALE(scale), GTK_POS_LEFT);
gtk_range_set_inverted(GTK_RANGE(scale), TRUE);
gtk_range_set_value(GTK_RANGE(scale), ISO_MAX);
- g_signal_connect(scale, "value-changed", G_CALLBACK(_on_iso_changed), level2);
+ g_signal_connect(scale, "value-changed", G_CALLBACK(_on_iso_changed), level2);
+ g_signal_connect(scale, "format-value", G_CALLBACK(_on_format_value), level2);
gtk_table_attach(GTK_TABLE(table), scale,
1,cols+1, rows,rows+1, GTK_FILL|GTK_EXPAND,GTK_FILL, 0,0);
/* Shove all the buttons to the left, but keep the slider expanded */