City button: make radius setting optional
[beifahrer] / src / city-button.vala
index 79965db..236a92a 100644 (file)
@@ -29,11 +29,13 @@ class CityButton : Hildon.Button {
        PickerButton radius_button;
        int active = 0;
        int radius = 0;
+       bool use_radius;
 
-       public CityButton (SizeType size, ButtonArrangement arrangement, List<City> city_list) {
+       public CityButton (SizeType size, ButtonArrangement arrangement, List<City> city_list, bool with_radius = true) {
                GLib.Object (arrangement: arrangement, size: size);
                set_style (ButtonStyle.PICKER);
 
+               use_radius = with_radius;
                city_selector = new TouchSelectorEntry.text ();
                foreach (unowned City city in city_list)
                        city_selector.append_text (city.name);
@@ -72,16 +74,18 @@ class CityButton : Hildon.Button {
                for (int km = 0; km <= 50; km += 10)
                        radius_selector.append_text ("%d km".printf (km));
 
-               radius_button = new PickerButton (SizeType.FINGER_HEIGHT,
-                                                 ButtonArrangement.VERTICAL);
-               radius_button.set_selector (radius_selector);
-               radius_button.set_title (_("Radius"));
-               radius_button.set_alignment (0.0f, 0.0f, 0.5f, 0.5f);
-               radius_button.set_active (radius / 10);
-               dialog.add_action_widget (radius_button, Response.RADIUS);
-
-               var action_area = (ButtonBox) dialog.get_action_area ();
-               action_area.set_child_secondary (radius_button, true);
+               if (use_radius) {
+                       radius_button = new PickerButton (SizeType.FINGER_HEIGHT,
+                                                         ButtonArrangement.VERTICAL);
+                       radius_button.set_selector (radius_selector);
+                       radius_button.set_title (_("Radius"));
+                       radius_button.set_alignment (0.0f, 0.0f, 0.5f, 0.5f);
+                       radius_button.set_active (radius / 10);
+                       dialog.add_action_widget (radius_button, Response.RADIUS);
+
+                       var action_area = (ButtonBox) dialog.get_action_area ();
+                       action_area.set_child_secondary (radius_button, true);
+               }
 
                dialog.add_button (_("Done"), Gtk.ResponseType.OK);