コード例 #1
0
ファイル: page-first-line.c プロジェクト: student-t/PSPP
/* Creates and returns a tree view that contains each of the
   lines in IA's file as a row. */
static PsppSheetView *
create_lines_tree_view (GtkContainer *parent, struct import_assistant *ia)
{
  PsppSheetView *tree_view = NULL;
  PsppSheetViewColumn *column;
  size_t max_line_length;
  gint content_width, header_width;
  size_t i;
  const gchar *title = _("Text");

  make_tree_view (ia, 0, &tree_view);

  column = pspp_sheet_view_column_new_with_attributes (
     title, ia->asst.fixed_renderer, (void *) NULL);
  pspp_sheet_view_column_set_cell_data_func (column, ia->asst.fixed_renderer,
                                           render_line, NULL, NULL);
  pspp_sheet_view_column_set_resizable (column, TRUE);
  pspp_sheet_view_column_set_expand (column, TRUE);

  max_line_length = 0;
  for (i = 0; i < ia->file.line_cnt; i++)
    {
      size_t w = ds_length (&ia->file.lines[i]);
      max_line_length = MAX (max_line_length, w);
    }

  content_width = get_monospace_width (tree_view, ia->asst.fixed_renderer,
                                       max_line_length);
  header_width = get_string_width (tree_view, ia->asst.prop_renderer, title);
  pspp_sheet_view_column_set_fixed_width (column, MAX (content_width,
                                                     header_width));
  pspp_sheet_view_append_column (tree_view, column);

  gtk_container_add (parent, GTK_WIDGET (tree_view));
  gtk_widget_show (GTK_WIDGET (tree_view));

  return tree_view;
}
コード例 #2
0
ファイル: main.c プロジェクト: DomN86/OpenRA
int main(int argc, char ** argv)
{
  GtkWidget * hbox1, * hbox2, * vbox;

  int res = chdir("/usr/share/openra");

  if (0 != res)
    res = chdir("/usr/local/share/openra");

  if (0 != res)
  {
    g_error("Couldn't change to OpenRA working directory");
    return 1;
  }

  server_init(WEBSERVER_PORT);
  
  gtk_init(&argc, &argv);

  window = GTK_WINDOW(gtk_window_new(GTK_WINDOW_TOPLEVEL));
  gtk_window_set_title(window, "OpenRA Launcher");
  gtk_window_set_default_size(window, 800, 600);

  browser = WEBKIT_WEB_VIEW(webkit_web_view_new());
  g_signal_connect(browser, "window-object-cleared", 
		   G_CALLBACK(bind_js_bridge), 0);

  generic_mod_icon = gdk_pixbuf_new_from_file_at_size("soviet-logo.png", 
						      16, 16, NULL);

  make_tree_view();
 
  util_get_mod_list(mod_list_callback);

  vbox = gtk_vbox_new(FALSE, 0);
  hbox1 = gtk_hbox_new(FALSE, 0);
  hbox2 = gtk_hbox_new(FALSE, 0);

  gtk_widget_set_size_request(GTK_WIDGET(tree), 250, 0);

  gtk_box_pack_end(GTK_BOX(hbox1), GTK_WIDGET(browser), TRUE, TRUE, 0);
  gtk_box_pack_start(GTK_BOX(hbox1), GTK_WIDGET(tree), TRUE, TRUE, 0);

  gl_button = GTK_RADIO_BUTTON(gtk_radio_button_new_with_label(NULL, "GL Renderer"));
  g_signal_connect(gl_button, "toggled", G_CALLBACK(renderer_changed), 0);
  cg_button = GTK_RADIO_BUTTON(gtk_radio_button_new_with_label_from_widget(gl_button, "CG Renderer"));
  g_signal_connect(cg_button, "toggled", G_CALLBACK(renderer_changed), 0);

  util_get_setting("Graphics.Renderer", renderer_callback);

  gtk_box_pack_start(GTK_BOX(hbox2), GTK_WIDGET(gl_button), FALSE, FALSE, 5);
  gtk_box_pack_start(GTK_BOX(hbox2), GTK_WIDGET(cg_button), FALSE, FALSE, 5);

  gtk_box_pack_start(GTK_BOX(vbox), hbox1, TRUE, TRUE, 0);
  gtk_box_pack_start(GTK_BOX(vbox), hbox2, FALSE, FALSE, 10);

  gtk_container_add(GTK_CONTAINER(window), vbox);

  gtk_widget_show_all(GTK_WIDGET(window));
  g_signal_connect(window, "delete-event", G_CALLBACK(window_delete), 0);
  
  gtk_main();

  return 0;
}