コード例 #1
0
ファイル: style_widgets.cpp プロジェクト: AMDmi3/osm2go
/* is actually placed inside the submenu there */
void style_select(appdata_t *appdata) {

  g_debug("select style");

  /* ------------------ style dialog ---------------- */
  osm2go_platform::DialogGuard dialog(gtk_dialog_new_with_buttons(_("Select style"),
                                              GTK_WINDOW(appdata_t::window), GTK_DIALOG_MODAL,
                                              GTK_STOCK_CANCEL, GTK_RESPONSE_REJECT,
                                              GTK_STOCK_OK, GTK_RESPONSE_ACCEPT,
                                              nullptr));

  gtk_dialog_set_default_response(dialog, GTK_RESPONSE_ACCEPT);

  GtkWidget *cbox = style_select_widget(settings_t::instance()->style, style_scan());

  GtkWidget *hbox = gtk_hbox_new(FALSE, 8);
  gtk_box_pack_start(GTK_BOX(hbox), gtk_label_new(_("Style:")), TRUE, TRUE, 0);

  gtk_box_pack_start(GTK_BOX(hbox), cbox, TRUE, TRUE, 0);
  gtk_box_pack_start(dialog.vbox(), hbox, TRUE, TRUE, 0);

  gtk_widget_show_all(dialog.get());

  if(GTK_RESPONSE_ACCEPT != gtk_dialog_run(dialog)) {
    g_debug("user clicked cancel");
    return;
  }

  const std::string &style = osm2go_platform::select_widget_value(cbox);
  g_debug("user clicked ok on %s", style.c_str());

  dialog.reset();

  style_change(*appdata, style);
}
コード例 #2
0
ファイル: style_widgets.cpp プロジェクト: AMDmi3/osm2go
void style_change(appdata_t &appdata, GtkWidget *widget) {
  const std::string &style = osm2go_platform::select_widget_value(widget);
  if(style.empty())
    return;

  style_change(appdata, style);
}
コード例 #3
0
/* is actually placed inside the submenu there */
void style_select(GtkWidget *parent, appdata_t *appdata) {

  printf("select style\n");

  /* ------------------ style dialog ---------------- */
  GtkWidget *dialog =
    misc_dialog_new(MISC_DIALOG_NOSIZE,_("Select style"),
		    GTK_WINDOW(parent),
		    GTK_STOCK_CANCEL, GTK_RESPONSE_REJECT,
		    GTK_STOCK_OK, GTK_RESPONSE_ACCEPT,
		    NULL);

  gtk_dialog_set_default_response(GTK_DIALOG(dialog), GTK_RESPONSE_ACCEPT);

  GtkWidget *cbox = style_select_widget(appdata);

  GtkWidget *hbox = gtk_hbox_new(FALSE, 8);
  gtk_box_pack_start_defaults(GTK_BOX(hbox), gtk_label_new(_("Style:")));

  gtk_box_pack_start_defaults(GTK_BOX(hbox), cbox);
  gtk_box_pack_start_defaults(GTK_BOX(GTK_DIALOG(dialog)->vbox), hbox);

  gtk_widget_show_all(dialog);

  if(GTK_RESPONSE_ACCEPT != gtk_dialog_run(GTK_DIALOG(dialog))) {
    printf("user clicked cancel\n");
    gtk_widget_destroy(dialog);
    return;
  }

  const char *ptr = combo_box_get_active_text(cbox);
  printf("user clicked ok on %s\n", ptr);

  gtk_widget_destroy(dialog);

  style_change(appdata, ptr);
}