Example #1
0
File: test-gtk.c Project: nedko/mx
int
main (int argc, char **argv)
{
    GtkWidget *window, *vbox, *frame, *swtch, *swtch2, *toggle, *vbox2;
    gboolean is_active = FALSE;

    gtk_init (&argc, &argv);

    if (argc > 1)
        is_active = atoi (argv[1]);

    g_debug ("setting switch to '%d'", is_active);

    window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
    gtk_window_set_default_size (GTK_WINDOW (window), 320, 240);

    vbox = gtk_vbox_new (FALSE, 12);
    gtk_container_set_border_width (GTK_CONTAINER (vbox), 10);
    gtk_container_add (GTK_CONTAINER (window), vbox);

    frame = mx_gtk_frame_new ();
    gtk_box_pack_start (GTK_BOX (vbox), frame, TRUE, TRUE, 10);
    gtk_frame_set_label (GTK_FRAME (frame), "Frame Title");

    vbox2 = gtk_vbox_new (FALSE, 12);
    gtk_container_set_border_width (GTK_CONTAINER (vbox2), 10);
    gtk_container_add (GTK_CONTAINER (frame), vbox2);

    swtch = mx_gtk_light_switch_new ();
    mx_gtk_light_switch_set_active (MX_GTK_LIGHT_SWITCH (swtch), is_active);
    gtk_container_add (GTK_CONTAINER (vbox2), swtch);

    swtch2 = mx_gtk_light_switch_new ();
    gtk_widget_set_sensitive (swtch2, FALSE);
    mx_gtk_light_switch_set_active (MX_GTK_LIGHT_SWITCH (swtch2), is_active);
    gtk_container_add (GTK_CONTAINER (vbox2), swtch2);

    frame = gtk_alignment_new (0, 0, 0, 0);
    gtk_alignment_set_padding (GTK_ALIGNMENT (frame), 10, 10, 10, 10);
    gtk_container_add (GTK_CONTAINER (vbox), frame);

    toggle = gtk_toggle_button_new_with_label ("Toggle");
    gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle), is_active);
    gtk_container_add (GTK_CONTAINER (frame), toggle);
    g_signal_connect (toggle, "toggled", G_CALLBACK (_toggle_cb), swtch);

    gtk_widget_show_all (window);
    g_signal_connect (window, "delete-event", gtk_main_quit, NULL);

    gtk_main ();

    return 0;
}
Example #2
0
File: test-gtk.c Project: nedko/mx
static void
_toggle_cb (GtkToggleButton *toggle,
            gpointer         user_data)
{
    gboolean active = gtk_toggle_button_get_active (toggle);
    g_debug ("toggling to '%d'", active);
    mx_gtk_light_switch_set_active (MX_GTK_LIGHT_SWITCH (user_data), active);
}
static void
bt_toggled (NmnModel *model,
            gboolean active,
            gpointer user_data)
{
    NmnAppletPrivate *priv = GET_PRIVATE (user_data);

    g_signal_handlers_block_by_func (priv->model, enable_bt_toggled, user_data);
    mx_gtk_light_switch_set_active (MX_GTK_LIGHT_SWITCH (priv->enable_bt), active);
    g_signal_handlers_unblock_by_func (priv->model, enable_bt_toggled, user_data);
}
static void
offline_toggled (NmnModel *model,
                 gboolean active,
                 gpointer user_data)
{
    NmnAppletPrivate *priv = GET_PRIVATE (user_data);

    g_signal_handlers_block_by_func (priv->model, enable_network_toggled, user_data);
    mx_gtk_light_switch_set_active (MX_GTK_LIGHT_SWITCH (priv->enable_network), active);
    g_signal_handlers_unblock_by_func (priv->model, enable_network_toggled, user_data);

    update_switches_visibility (NMN_APPLET (user_data));
}
Example #5
0
static void
mx_gtk_light_switch_set_property (GObject      *object,
                                  guint         prop_id,
                                  const GValue *value,
                                  GParamSpec   *pspec)
{
  MxGtkLightSwitch *ls;

  ls = MX_GTK_LIGHT_SWITCH (object);

  switch (prop_id)
    {
    case PROP_ACTIVE:
      mx_gtk_light_switch_set_active (ls, g_value_get_boolean (value));
      break;
    default:
      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
    }
}