Esempio n. 1
0
int
main (int argc, char *argv[])
{
  GtkBuilder *builder;
  GtkWidget *win;

#ifdef GTK_SRCDIR
  g_chdir (GTK_SRCDIR);
#endif

  gtk_init ();

  builder = gtk_builder_new ();
  gtk_builder_add_callback_symbol (builder, "back_to_main", G_CALLBACK (back_to_main));
  gtk_builder_add_callback_symbol (builder, "go_to_secondary", G_CALLBACK (go_to_secondary));
  gtk_builder_add_from_file (builder, "teststackedheaders.ui", NULL);
  gtk_builder_connect_signals (builder, NULL);

  win = (GtkWidget *)gtk_builder_get_object (builder, "window");
  header_stack = (GtkWidget *)gtk_builder_get_object (builder, "header_stack");
  page_stack = (GtkWidget *)gtk_builder_get_object (builder, "page_stack");

  gtk_window_present (GTK_WINDOW (win));

  gtk_main ();

  return 0;
}
Esempio n. 2
0
gint
main (gint   argc,
      gchar *argv[])
{
  GtkBuilder *builder = NULL;
  GtkWindow *window = NULL;
  GActionGroup *group;
  GtkWidget *dockbin;
  GtkWidget *dockoverlay;
  GtkCssProvider *provider;
  GError *error = NULL;

  gtk_init (&argc, &argv);

  provider = gtk_css_provider_new ();
  gtk_css_provider_load_from_path (provider, "test-panel.css", &error);
  g_assert_no_error (error);
  gtk_style_context_add_provider_for_screen (gdk_screen_get_default (),
                                             GTK_STYLE_PROVIDER (provider),
                                             GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);

  builder = gtk_builder_new ();
  gtk_builder_add_callback_symbol (builder, "toggle_all", G_CALLBACK (toggle_all));
  gtk_builder_add_from_file (builder, "test-panel.ui", &error);
  g_assert_no_error (error);

  window = GTK_WINDOW (gtk_builder_get_object (builder, "window"));
  g_signal_connect (window, "delete-event", gtk_main_quit, NULL);

  dockoverlay = GTK_WIDGET (gtk_builder_get_object (builder, "dockoverlay"));
  _pnl_dock_item_printf (PNL_DOCK_ITEM (dockoverlay));

  dockbin = GTK_WIDGET (gtk_builder_get_object (builder, "dockbin"));
  group = gtk_widget_get_action_group (dockbin, "dockbin");
  gtk_widget_insert_action_group (GTK_WIDGET (window), "dockbin", group);

  gtk_builder_connect_signals (builder, dockbin);

  gtk_window_present (window);
  gtk_main ();

  g_clear_object (&builder);

  return 0;
}
Esempio n. 3
0
GtkWidget *
do_modelbutton (GtkWidget *do_widget)
{
  static GtkWidget *window = NULL;
  static GActionEntry win_entries[] = {
    { "color", NULL, "s", "'red'", NULL },
    { "chocolate", NULL, NULL, "true", NULL },
    { "vanilla", NULL, NULL, "false", NULL },
    { "sprinkles", NULL, NULL, NULL, NULL }
  };

  if (!window)
    {
      GtkBuilder *builder;
      GActionGroup *actions;

      builder = gtk_builder_new_from_resource ("/modelbutton/modelbutton.ui");
      gtk_builder_add_callback_symbol (builder, "tool_clicked", G_CALLBACK (tool_clicked));
      gtk_builder_connect_signals (builder, NULL);
      window = GTK_WIDGET (gtk_builder_get_object (builder, "window1"));
      gtk_window_set_screen (GTK_WINDOW (window),
                             gtk_widget_get_screen (do_widget));
      g_signal_connect (window, "destroy",
                        G_CALLBACK (gtk_widget_destroyed), &window);

      actions = (GActionGroup*)g_simple_action_group_new ();
      g_action_map_add_action_entries (G_ACTION_MAP (actions),
                                       win_entries, G_N_ELEMENTS (win_entries),
                                       window);
      gtk_widget_insert_action_group (window, "win", actions);


      g_object_unref (builder);
    }

  if (!gtk_widget_get_visible (window))
    gtk_widget_show_all (window);
  else
    gtk_widget_destroy (window);


  return window;
}
Esempio n. 4
0
/// Sets up the tabs for the action cue
static void stack_action_cue_set_tabs(StackCue *cue, GtkNotebook *notebook)
{
	StackActionCue *acue = STACK_ACTION_CUE(cue);
	
	// Create the tab
	GtkWidget *label = gtk_label_new("Action");
	
	// Load the UI
	GtkBuilder *builder = gtk_builder_new_from_file("StackActionCue.ui");
	acue->builder = builder;
	acue->action_tab = GTK_WIDGET(gtk_builder_get_object(builder, "acpGrid"));

	// Set up callbacks
	gtk_builder_add_callback_symbol(builder, "acp_cue_changed", G_CALLBACK(acp_cue_changed));
	gtk_builder_add_callback_symbol(builder, "acp_action_changed", G_CALLBACK(acp_action_changed));
	
	// Connect the signals
	gtk_builder_connect_signals(builder, (gpointer)cue);

	// Add an extra reference to the action tab - we're about to remove it's
	// parent and we don't want it to get garbage collected
	g_object_ref(acue->action_tab);

	// The tab has a parent window in the UI file - unparent the tab container from it
	gtk_widget_unparent(acue->action_tab);
	
	// Append the tab (and show it, because it starts off hidden...)
	gtk_notebook_append_page(notebook, acue->action_tab, label);
	gtk_widget_show(acue->action_tab);
	
	// Set the values: cue
	StackCue *target_cue = stack_cue_get_by_uid(acue->target);
	if (target_cue)
	{
		char cue_number[32];
		stack_cue_id_to_string(target_cue->id, cue_number, 32);

		// Build the string
		std::string button_text;
		button_text = std::string(cue_number) + ": " + std::string(target_cue->name);
	
		// Set the button text
		gtk_button_set_label(GTK_BUTTON(gtk_builder_get_object(builder, "acpCue")), button_text.c_str());
	}
	
	// Update action option
	switch (acue->action)
	{
		case STACK_ACTION_CUE_PLAY:
			gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "acpActionTypePlay")), true);
			break;

		case STACK_ACTION_CUE_PAUSE:
			gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "acpActionTypePause")), true);
			break;

		case STACK_ACTION_CUE_STOP:
			gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "acpActionTypeStop")), true);
			break;
	}
}
Esempio n. 5
0
GtkWidget *
do_font_features (GtkWidget *do_widget)
{
  static GtkWidget *window = NULL;

  if (!window)
    {
      GtkBuilder *builder;
      int i;

      builder = gtk_builder_new_from_resource ("/font-features/font-features.ui");

      gtk_builder_add_callback_symbol (builder, "update", update);
      gtk_builder_add_callback_symbol (builder, "reset", reset);
      gtk_builder_add_callback_symbol (builder, "switch_to_entry", switch_to_entry);
      gtk_builder_add_callback_symbol (builder, "switch_to_label", switch_to_label);
      gtk_builder_add_callback_symbol (builder, "entry_key_press", G_CALLBACK (entry_key_press));
      gtk_builder_connect_signals (builder, NULL);

      window = GTK_WIDGET (gtk_builder_get_object (builder, "window"));
      label = GTK_WIDGET (gtk_builder_get_object (builder, "label"));
      settings = GTK_WIDGET (gtk_builder_get_object (builder, "settings"));
      resetbutton = GTK_WIDGET (gtk_builder_get_object (builder, "reset"));
      font = GTK_WIDGET (gtk_builder_get_object (builder, "font"));
      numcasedefault = GTK_WIDGET (gtk_builder_get_object (builder, "numcasedefault"));
      numspacedefault = GTK_WIDGET (gtk_builder_get_object (builder, "numspacedefault"));
      fractiondefault = GTK_WIDGET (gtk_builder_get_object (builder, "fractiondefault"));
      stack = GTK_WIDGET (gtk_builder_get_object (builder, "stack"));
      entry = GTK_WIDGET (gtk_builder_get_object (builder, "entry"));

      i = 0;
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "kern"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "liga"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "dlig"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "hlig"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "clig"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "smcp"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "c2sc"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "lnum"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "onum"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "pnum"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "tnum"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "frac"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "afrc"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "zero"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "nalt"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "swsh"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "calt"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "hist"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "salt"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "ss01"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "ss02"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "ss03"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "ss04"));
      toggle[i++] = GTK_WIDGET (gtk_builder_get_object (builder, "ss05"));

      update ();

      g_signal_connect (window, "destroy",
                        G_CALLBACK (gtk_widget_destroyed), &window);

      g_object_unref (builder);
    }

  if (!gtk_widget_get_visible (window))
    gtk_window_present (GTK_WINDOW (window));
  else
    gtk_widget_destroy (window);

  return window;
}