Commit 4c1132450b02f84295e451ed87d1c67635c1bf49
1 parent
5be39e6a
Exists in
master
and in
5 other branches
Remodelando keypad.
Showing
2 changed files
with
16 additions
and
17 deletions
Show diff stats
src/pw3270/uiparser/keypad.c
| ... | ... | @@ -36,6 +36,7 @@ |
| 36 | 36 | { |
| 37 | 37 | int width = 1; |
| 38 | 38 | int height = 1; |
| 39 | + const gchar * tmp; | |
| 39 | 40 | |
| 40 | 41 | trace("%s(%s,%d,%d)",__FUNCTION__,element_name,(int) keypad->row, (int) keypad->col); |
| 41 | 42 | |
| ... | ... | @@ -45,21 +46,19 @@ |
| 45 | 46 | keypad_button_start(context, names, values, error, keypad); |
| 46 | 47 | } |
| 47 | 48 | |
| 48 | - if(keypad->widget) { | |
| 49 | - | |
| 50 | - // Criou widget, incluir | |
| 51 | - const gchar * tmp; | |
| 49 | + tmp = ui_get_attribute("width", names, values); | |
| 50 | + if(tmp) { | |
| 51 | + width = atoi(tmp); | |
| 52 | + } | |
| 52 | 53 | |
| 53 | - tmp = ui_get_attribute("width", names, values); | |
| 54 | - if(tmp) { | |
| 55 | - width = atoi(tmp); | |
| 56 | - } | |
| 54 | + tmp = ui_get_attribute("height", names, values); | |
| 55 | + if(tmp) { | |
| 56 | + height = atoi(tmp); | |
| 57 | + } | |
| 57 | 58 | |
| 58 | - tmp = ui_get_attribute("height", names, values); | |
| 59 | - if(tmp) { | |
| 60 | - height = atoi(tmp); | |
| 61 | - } | |
| 59 | + if(keypad->widget) { | |
| 62 | 60 | |
| 61 | + // Criou widget, incluir | |
| 63 | 62 | tmp = ui_get_attribute("column", names, values); |
| 64 | 63 | if(tmp) { |
| 65 | 64 | keypad->col = atoi(tmp); |
| ... | ... | @@ -71,7 +70,7 @@ |
| 71 | 70 | } |
| 72 | 71 | |
| 73 | 72 | if(!strcasecmp(element_name,"row")) { |
| 74 | - keypad->row++; | |
| 73 | + keypad->row += height; | |
| 75 | 74 | keypad->col = 0; |
| 76 | 75 | } else { |
| 77 | 76 | keypad->col += width; |
| ... | ... | @@ -170,7 +169,7 @@ |
| 170 | 169 | keypad->relief = ui_get_relief(names, values, GTK_RELIEF_NORMAL); |
| 171 | 170 | keypad->grid = GTK_GRID(gtk_grid_new()); |
| 172 | 171 | |
| 173 | - // gtk_grid_set_row_homogeneous(keypad->grid,TRUE); | |
| 172 | + gtk_grid_set_row_homogeneous(keypad->grid,TRUE); | |
| 174 | 173 | gtk_grid_set_column_homogeneous(keypad->grid,TRUE); |
| 175 | 174 | |
| 176 | 175 | g_object_set_data(G_OBJECT(keypad->grid),"position",(gpointer) keypad->pos); | ... | ... |
ui/10keypad.xml
| ... | ... | @@ -77,9 +77,9 @@ |
| 77 | 77 | <button action='erase' target='all' label="Clear" width='3' /> |
| 78 | 78 | <button action='kybdreset' label="Reset" width='3' /> |
| 79 | 79 | </row> |
| 80 | - <row> | |
| 81 | - <button action='EraseEOF' label="Erase\nEOF" width='3' /> | |
| 82 | - <button action='EraseInput' label="Erase\nInput" width='3' /> | |
| 80 | + <row height='2'> | |
| 81 | + <button action='EraseEOF' label="Erase\nEOF" width='3' height='2'/> | |
| 82 | + <button action='EraseInput' label="Erase\nInput" width='3' height='2'/> | |
| 83 | 83 | </row> |
| 84 | 84 | <row> |
| 85 | 85 | <button action='Attn' label="Attn" width='3' /> | ... | ... |