test-bin-layout: Use the long-press signal on ClickAction
This commit is contained in:
parent
23a9980c72
commit
8b70260528
@ -5,6 +5,8 @@
|
|||||||
|
|
||||||
static const ClutterColor bg_color = { 0xcc, 0xcc, 0xcc, 0x99 };
|
static const ClutterColor bg_color = { 0xcc, 0xcc, 0xcc, 0x99 };
|
||||||
|
|
||||||
|
static gboolean is_expanded = FALSE;
|
||||||
|
|
||||||
static void
|
static void
|
||||||
update_background (ClutterActor *tex,
|
update_background (ClutterActor *tex,
|
||||||
const ClutterColor *color,
|
const ClutterColor *color,
|
||||||
@ -95,8 +97,6 @@ on_rect_clicked (ClutterClickAction *action,
|
|||||||
ClutterActor *rect,
|
ClutterActor *rect,
|
||||||
ClutterActor *box)
|
ClutterActor *box)
|
||||||
{
|
{
|
||||||
static gboolean is_expanded = FALSE;
|
|
||||||
|
|
||||||
if (!is_expanded)
|
if (!is_expanded)
|
||||||
clutter_actor_animate (box, CLUTTER_EASE_OUT_BOUNCE, 250,
|
clutter_actor_animate (box, CLUTTER_EASE_OUT_BOUNCE, 250,
|
||||||
"width", 400.0,
|
"width", 400.0,
|
||||||
@ -111,6 +111,30 @@ on_rect_clicked (ClutterClickAction *action,
|
|||||||
is_expanded = !is_expanded;
|
is_expanded = !is_expanded;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static gboolean
|
||||||
|
on_rect_long_press (ClutterClickAction *action,
|
||||||
|
ClutterActor *rect,
|
||||||
|
ClutterLongPressState state,
|
||||||
|
ClutterActor *box)
|
||||||
|
{
|
||||||
|
switch (state)
|
||||||
|
{
|
||||||
|
case CLUTTER_LONG_PRESS_QUERY:
|
||||||
|
g_print ("*** long press: query ***\n");
|
||||||
|
return is_expanded;
|
||||||
|
|
||||||
|
case CLUTTER_LONG_PRESS_CANCEL:
|
||||||
|
g_print ("*** long press: cancel ***\n");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case CLUTTER_LONG_PRESS_ACTIVATE:
|
||||||
|
g_print ("*** long press: activate ***\n");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
on_box_allocation_changed (ClutterActor *box,
|
on_box_allocation_changed (ClutterActor *box,
|
||||||
const ClutterActorBox *allocation,
|
const ClutterActorBox *allocation,
|
||||||
@ -219,6 +243,7 @@ test_bin_layout_main (int argc, char *argv[])
|
|||||||
action = clutter_click_action_new ();
|
action = clutter_click_action_new ();
|
||||||
clutter_actor_add_action (rect, action);
|
clutter_actor_add_action (rect, action);
|
||||||
g_signal_connect (action, "clicked", G_CALLBACK (on_rect_clicked), box);
|
g_signal_connect (action, "clicked", G_CALLBACK (on_rect_clicked), box);
|
||||||
|
g_signal_connect (action, "long-press", G_CALLBACK (on_rect_long_press), box);
|
||||||
g_signal_connect (box,
|
g_signal_connect (box,
|
||||||
"enter-event", G_CALLBACK (on_box_enter),
|
"enter-event", G_CALLBACK (on_box_enter),
|
||||||
rect);
|
rect);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user