1
0
mirror of git://projects.qi-hardware.com/fped.git synced 2024-09-29 02:29:47 +03:00

Simplified and improved the design of wrapped tables.

- gui_frame.c (build_table): don't add an extra column for wrapped tables. They
  look better without it.
- gui_frame.c (build_table): add two pixels of background color between parts
  of a wrapped table
- gui_style.h (FRAME_AREA_MISC_WIDTH): reduced to better fit real layout



git-svn-id: http://svn.openmoko.org/trunk/eda/fped@5848 99fdad57-331a-0410-800a-d7fa5415bdb3
This commit is contained in:
werner 2010-02-19 14:00:55 +00:00
parent 4bfb601a40
commit c8cf877204
2 changed files with 14 additions and 16 deletions

View File

@ -961,12 +961,12 @@ static void build_table(GtkWidget *vbox, struct frame *frame,
struct table *table, int wrap_width)
{
GtkWidget *tab, *field;
GtkWidget *evbox, *align;
GtkWidget *evbox, *align, *sep;
struct var *var;
struct row *row;
struct value *value;
int n_vars = 0, n_rows = 0;
int n_var, n_row, pos, col;
int n_var, n_row, pos;
char *expr;
GdkColor color;
@ -982,15 +982,16 @@ static void build_table(GtkWidget *vbox, struct frame *frame,
n_var = 0;
n_vars = 0;
while (var) {
col = n_vars+(n_var != n_vars);;
if (!n_vars) {
if (n_vars) {
gtk_table_resize(GTK_TABLE(tab), n_rows, n_vars+1);
} else {
evbox = gtk_event_box_new();
align = gtk_alignment_new(0, 0, 0, 0);
gtk_container_add(GTK_CONTAINER(align), evbox);
gtk_box_pack_start(GTK_BOX(vbox), align,
FALSE, FALSE, 0);
tab = gtk_table_new(n_rows+1, col, FALSE);
tab = gtk_table_new(n_rows+1, n_vars, FALSE);
gtk_container_add(GTK_CONTAINER(evbox), tab);
color = get_color(COLOR_VAR_TABLE_SEP);
gtk_widget_modify_bg(GTK_WIDGET(evbox),
@ -999,19 +1000,12 @@ static void build_table(GtkWidget *vbox, struct frame *frame,
gtk_table_set_row_spacings(GTK_TABLE(tab), 1);
gtk_table_set_col_spacings(GTK_TABLE(tab), 1);
/* @@@
* for now, we just add an empty first column to
* wrapped tables, which yields a thin black line.
* Might want to put something more visible later.
*/
}
gtk_table_resize(GTK_TABLE(tab), n_rows, col+1);
field = label_in_box_new(var->name,
"Variable (column) name. Click to edit.");
gtk_table_attach_defaults(GTK_TABLE(tab), box_of_label(field),
col, col+1, 0, 1);
n_vars, n_vars+1, 0, 1);
label_in_box_bg(field, COLOR_VAR_PASSIVE);
g_signal_connect(G_OBJECT(box_of_label(field)),
"button_press_event",
@ -1032,7 +1026,7 @@ static void build_table(GtkWidget *vbox, struct frame *frame,
free(expr);
gtk_table_attach_defaults(GTK_TABLE(tab),
box_of_label(field),
col, col+1,
n_vars, n_vars+1,
n_row+1, n_row+2);
label_in_box_bg(field, table->active_row == row ?
COLOR_ROW_SELECTED : COLOR_ROW_UNSELECTED);
@ -1065,7 +1059,11 @@ static void build_table(GtkWidget *vbox, struct frame *frame,
gtk_container_remove(GTK_CONTAINER(tab),
box_of_label(value->widget));
}
gtk_table_resize(GTK_TABLE(tab), n_rows, col);
gtk_table_resize(GTK_TABLE(tab), n_rows, n_vars);
sep = gtk_vbox_new(FALSE, 0);
gtk_box_pack_start(GTK_BOX(vbox), sep,
FALSE, FALSE, 1);
n_vars = 0;
continue;

View File

@ -63,7 +63,7 @@
#define DEFAULT_FRAME_AREA_WIDTH 250
#define DEFAULT_FRAME_AREA_HEIGHT 100
#define FRAME_AREA_MISC_WIDTH 26 /* pane, scroll bar, slack */
#define FRAME_AREA_MISC_WIDTH 24 /* pane, scroll bar, slack */
/* ----- assorted colors --------------------------------------------------- */