Commit 58012c44aa039e580ad4226542df999b84992fa2
1 parent
e7742e02
Exists in
master
and in
5 other branches
Implementando actions.
Showing
2 changed files
with
39 additions
and
3 deletions
Show diff stats
src/gtk/actions.c
| @@ -49,7 +49,6 @@ static void lib3270_action(GtkAction *action, GtkWidget *widget) | @@ -49,7 +49,6 @@ static void lib3270_action(GtkAction *action, GtkWidget *widget) | ||
| 49 | static void connect_action(GtkAction *action, GtkWidget *widget) | 49 | static void connect_action(GtkAction *action, GtkWidget *widget) |
| 50 | { | 50 | { |
| 51 | gchar *host = (gchar *) g_object_get_data(G_OBJECT(action),"host"); | 51 | gchar *host = (gchar *) g_object_get_data(G_OBJECT(action),"host"); |
| 52 | - int f; | ||
| 53 | 52 | ||
| 54 | trace("Action %s activated on widget %p",gtk_action_get_name(action),widget); | 53 | trace("Action %s activated on widget %p",gtk_action_get_name(action),widget); |
| 55 | 54 | ||
| @@ -71,6 +70,11 @@ static void connect_action(GtkAction *action, GtkWidget *widget) | @@ -71,6 +70,11 @@ static void connect_action(GtkAction *action, GtkWidget *widget) | ||
| 71 | hostname_action(action,widget); | 70 | hostname_action(action,widget); |
| 72 | } | 71 | } |
| 73 | 72 | ||
| 73 | +static void nop_action(GtkAction *action, GtkWidget *widget) | ||
| 74 | +{ | ||
| 75 | + trace("Action %s activated on widget %p",gtk_action_get_name(action),widget); | ||
| 76 | +} | ||
| 77 | + | ||
| 74 | static void disconnect_action(GtkAction *action, GtkWidget *widget) | 78 | static void disconnect_action(GtkAction *action, GtkWidget *widget) |
| 75 | { | 79 | { |
| 76 | trace("Action %s activated on widget %p",gtk_action_get_name(action),widget); | 80 | trace("Action %s activated on widget %p",gtk_action_get_name(action),widget); |
| @@ -200,8 +204,6 @@ static void cursor_move_action(GtkAction *action, GtkWidget *widget) | @@ -200,8 +204,6 @@ static void cursor_move_action(GtkAction *action, GtkWidget *widget) | ||
| 200 | 204 | ||
| 201 | static void connect_move_action(GtkAction *action, GtkWidget *widget, const gchar *target, unsigned short flags, GError **error) | 205 | static void connect_move_action(GtkAction *action, GtkWidget *widget, const gchar *target, unsigned short flags, GError **error) |
| 202 | { | 206 | { |
| 203 | - int f; | ||
| 204 | - | ||
| 205 | if(!target) | 207 | if(!target) |
| 206 | { | 208 | { |
| 207 | gtk_action_set_sensitive(action,FALSE); | 209 | gtk_action_set_sensitive(action,FALSE); |
| @@ -378,6 +380,37 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash | @@ -378,6 +380,37 @@ GtkAction * ui_get_action(GtkWidget *widget, const gchar *name, GHashTable *hash | ||
| 378 | nm = g_strconcat(name,attr, NULL); | 380 | nm = g_strconcat(name,attr, NULL); |
| 379 | 381 | ||
| 380 | } | 382 | } |
| 383 | + else if(!(g_strcasecmp(name,"save") && g_strcasecmp(name,"print"))) | ||
| 384 | + { | ||
| 385 | + action_type = ACTION_TYPE_TABLE; | ||
| 386 | + attr = ui_get_attribute("src",names,values); | ||
| 387 | + | ||
| 388 | + if(!attr) | ||
| 389 | + { | ||
| 390 | + *error = g_error_new(ERROR_DOMAIN,EINVAL,_("%s action needs src attribute" ), name); | ||
| 391 | + return NULL; | ||
| 392 | + } | ||
| 393 | + else | ||
| 394 | + { | ||
| 395 | + static const GCallback cbk[] = { G_CALLBACK(nop_action), | ||
| 396 | + G_CALLBACK(nop_action), | ||
| 397 | + G_CALLBACK(nop_action) | ||
| 398 | + }; | ||
| 399 | + static const gchar * src[] = { "all", | ||
| 400 | + "selected", | ||
| 401 | + "copy", | ||
| 402 | + NULL | ||
| 403 | + }; | ||
| 404 | + id = id_from_array(attr,src,error); | ||
| 405 | + if(id < 0) | ||
| 406 | + return NULL; | ||
| 407 | + | ||
| 408 | + callback = cbk; | ||
| 409 | + } | ||
| 410 | + | ||
| 411 | + nm = g_strconcat(name,attr, NULL); | ||
| 412 | + | ||
| 413 | + } | ||
| 381 | else if(!g_strcasecmp(name,"set")) | 414 | else if(!g_strcasecmp(name,"set")) |
| 382 | { | 415 | { |
| 383 | action_type = ACTION_TYPE_SET; | 416 | action_type = ACTION_TYPE_SET; |
src/gtk/pw3270-GTK.cbp
| @@ -46,6 +46,9 @@ | @@ -46,6 +46,9 @@ | ||
| 46 | <Option compilerVar="CC" /> | 46 | <Option compilerVar="CC" /> |
| 47 | </Unit> | 47 | </Unit> |
| 48 | <Unit filename="common\sources.mak" /> | 48 | <Unit filename="common\sources.mak" /> |
| 49 | + <Unit filename="dialog.c"> | ||
| 50 | + <Option compilerVar="CC" /> | ||
| 51 | + </Unit> | ||
| 49 | <Unit filename="fonts.c"> | 52 | <Unit filename="fonts.c"> |
| 50 | <Option compilerVar="CC" /> | 53 | <Option compilerVar="CC" /> |
| 51 | </Unit> | 54 | </Unit> |