PostGIS  2.2.8dev-r@@SVN_REVISION@@

◆ pgui_create_connection_window()

static void pgui_create_connection_window ( )
static

Definition at line 3191 of file shp2pgsql-gui.c.

References _, entry_pg_db, entry_pg_host, entry_pg_pass, entry_pg_port, entry_pg_user, FALSE, pgui_action_connection_okay(), pgui_event_popup_delete(), TRUE, and window_conn.

Referenced by main().

3192 {
3193  /* Default text width */
3194  static int text_width = 12;
3195 
3196  /* Vbox container */
3197  GtkWidget *vbox;
3198 
3199  /* Reusable label handle */
3200  GtkWidget *label;
3201 
3202  /* PgSQL section */
3203  GtkWidget *frame_pg, *table_pg;
3204 
3205  /* OK button */
3206  GtkWidget *button_okay;
3207 
3208  /* Create the main top level window with a 10px border */
3209  window_conn = gtk_window_new(GTK_WINDOW_TOPLEVEL);
3210  gtk_container_set_border_width(GTK_CONTAINER(window_conn), 10);
3211  gtk_window_set_title(GTK_WINDOW(window_conn), _("PostGIS connection"));
3212  gtk_window_set_position(GTK_WINDOW(window_conn), GTK_WIN_POS_CENTER);
3213  gtk_window_set_modal(GTK_WINDOW(window_conn), TRUE);
3214 
3215  /* Use a vbox as the base container */
3216  vbox = gtk_vbox_new(FALSE, 15);
3217 
3218  /*
3219  ** PostGIS info in a table
3220  */
3221  frame_pg = gtk_frame_new(_("PostGIS Connection"));
3222  table_pg = gtk_table_new(5, 3, TRUE);
3223  gtk_container_set_border_width (GTK_CONTAINER (table_pg), 8);
3224  gtk_table_set_col_spacings(GTK_TABLE(table_pg), 7);
3225  gtk_table_set_row_spacings(GTK_TABLE(table_pg), 3);
3226 
3227  /* User name row */
3228  label = gtk_label_new(_("Username:"));
3229  entry_pg_user = gtk_entry_new();
3230  gtk_table_attach_defaults(GTK_TABLE(table_pg), label, 0, 1, 0, 1 );
3231  gtk_table_attach_defaults(GTK_TABLE(table_pg), entry_pg_user, 1, 3, 0, 1 );
3232 
3233  /* Password row */
3234  label = gtk_label_new(_("Password:"));
3235  entry_pg_pass = gtk_entry_new();
3236  gtk_entry_set_visibility( GTK_ENTRY(entry_pg_pass), FALSE);
3237  gtk_table_attach_defaults(GTK_TABLE(table_pg), label, 0, 1, 1, 2 );
3238  gtk_table_attach_defaults(GTK_TABLE(table_pg), entry_pg_pass, 1, 3, 1, 2 );
3239 
3240  /* Host and port row */
3241  label = gtk_label_new(_("Server Host:"));
3242  entry_pg_host = gtk_entry_new();
3243  gtk_entry_set_width_chars(GTK_ENTRY(entry_pg_host), text_width);
3244  gtk_table_attach_defaults(GTK_TABLE(table_pg), label, 0, 1, 2, 3 );
3245  gtk_table_attach_defaults(GTK_TABLE(table_pg), entry_pg_host, 1, 2, 2, 3 );
3246 
3247  entry_pg_port = gtk_entry_new();
3248  gtk_entry_set_width_chars(GTK_ENTRY(entry_pg_port), 8);
3249  gtk_table_attach_defaults(GTK_TABLE(table_pg), entry_pg_port, 2, 3, 2, 3 );
3250 
3251  /* Database row */
3252  label = gtk_label_new(_("Database:"));
3253  entry_pg_db = gtk_entry_new();
3254  gtk_table_attach_defaults(GTK_TABLE(table_pg), label, 0, 1, 3, 4 );
3255  gtk_table_attach_defaults(GTK_TABLE(table_pg), entry_pg_db, 1, 3, 3, 4 );
3256 
3257  /* Add table into containing frame */
3258  gtk_container_add(GTK_CONTAINER(frame_pg), table_pg);
3259 
3260  /* Add frame into containing vbox */
3261  gtk_container_add(GTK_CONTAINER(window_conn), vbox);
3262 
3263  /* Add the vbox into the window */
3264  gtk_container_add(GTK_CONTAINER(vbox), frame_pg);
3265 
3266  /* Create a simple "OK" button for the dialog */
3267  button_okay = gtk_button_new_with_label(_("OK"));
3268  gtk_container_add(GTK_CONTAINER(vbox), button_okay);
3269  g_signal_connect(G_OBJECT(button_okay), "clicked", G_CALLBACK(pgui_action_connection_okay), NULL);
3270 
3271  /* Hook the delete event so we don't destroy the dialog (only hide it) if cancelled */
3272  gtk_signal_connect(GTK_OBJECT(window_conn), "delete_event", GTK_SIGNAL_FUNC(pgui_event_popup_delete), NULL);
3273 
3274  return;
3275 }
static GtkWidget * entry_pg_db
static GtkWidget * entry_pg_host
#define _(String)
Definition: shpcommon.h:24
static gint pgui_event_popup_delete(GtkWidget *widget, GdkEvent *event, gpointer data)
static GtkWidget * entry_pg_port
static void pgui_action_connection_okay(GtkWidget *widget, gpointer data)
static GtkWidget * entry_pg_user
Definition: shp2pgsql-gui.c:99
#define FALSE
Definition: dbfopen.c:168
static GtkWidget * window_conn
Definition: shp2pgsql-gui.c:97
static GtkWidget * entry_pg_pass
#define TRUE
Definition: dbfopen.c:169
Here is the call graph for this function:
Here is the caller graph for this function: