summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorEmmanuele Bassi <ebassi@linux.intel.com>2010-12-23 12:13:30 +0000
committerEmmanuele Bassi <ebassi@linux.intel.com>2010-12-23 12:13:30 +0000
commitfd88944d312b0bc9fbd115f9fc04aaaa79d937a1 (patch)
tree57fa04941362b8b8a84bfeef159f10613f15c1df /examples
parentafa5337f9e339d5fc1d6f4270a449442388393cd (diff)
downloadclutter-gtk-fd88944d312b0bc9fbd115f9fc04aaaa79d937a1.tar.gz
gtk-clutter-window-test: Clean up
Use different icons, don't specify the colums of the icon view, and add some effect to the toolbar embedded as a Clutter actor.
Diffstat (limited to 'examples')
-rw-r--r--examples/gtk-clutter-window-test.c45
1 files changed, 37 insertions, 8 deletions
diff --git a/examples/gtk-clutter-window-test.c b/examples/gtk-clutter-window-test.c
index 09e8e87..cc786d4 100644
--- a/examples/gtk-clutter-window-test.c
+++ b/examples/gtk-clutter-window-test.c
@@ -64,6 +64,32 @@ add_toolbar_items (GtkToolbar *toolbar,
va_end (var_args);
}
+static gboolean
+on_toolbar_enter (ClutterActor *actor,
+ ClutterEvent *event,
+ gpointer dummy G_GNUC_UNUSED)
+{
+ clutter_actor_animate (actor, CLUTTER_LINEAR, 250,
+ "opacity", 255,
+ "y", 0.0,
+ NULL);
+
+ return TRUE;
+}
+
+static gboolean
+on_toolbar_leave (ClutterActor *actor,
+ ClutterEvent *event,
+ gpointer dummy G_GNUC_UNUSED)
+{
+ clutter_actor_animate (actor, CLUTTER_LINEAR, 250,
+ "opacity", 128,
+ "y", clutter_actor_get_height (actor) * -0.5,
+ NULL);
+
+ return TRUE;
+}
+
int
main (int argc, char **argv)
{
@@ -76,19 +102,18 @@ main (int argc, char **argv)
GtkListStore *store = gtk_list_store_new (N_COLUMNS,
G_TYPE_STRING, GDK_TYPE_PIXBUF);
add_liststore_rows (store,
- "gnome-sudoku",
- "gnome-blackjack",
- "gnome-mahjongg",
- "gnome-sticky-notes-applet",
- "tracker",
- "gnome-cpu-frequency-applet",
+ "devhelp",
+ "empathy",
"evince",
+ "gnome-panel",
+ "seahorse",
+ "sound-juicer",
+ "totem",
NULL);
GtkWidget *iconview = gtk_icon_view_new_with_model (GTK_TREE_MODEL (store));
gtk_icon_view_set_text_column (GTK_ICON_VIEW (iconview), NAME_COLUMN);
gtk_icon_view_set_pixbuf_column (GTK_ICON_VIEW (iconview), PIXBUF_COLUMN);
- gtk_icon_view_set_columns (GTK_ICON_VIEW (iconview), 2);
GtkWidget *sw = gtk_scrolled_window_new (NULL, NULL);
@@ -112,9 +137,13 @@ main (int argc, char **argv)
gtk_widget_show_all (toolbar);
ClutterActor *actor = gtk_clutter_actor_new_with_contents (toolbar);
clutter_actor_add_constraint (actor, clutter_bind_constraint_new (stage, CLUTTER_BIND_WIDTH, 0.0));
+ g_signal_connect (actor, "enter-event", G_CALLBACK (on_toolbar_enter), NULL);
+ g_signal_connect (actor, "leave-event", G_CALLBACK (on_toolbar_leave), NULL);
clutter_container_add_actor (CLUTTER_CONTAINER (stage), actor);
- clutter_actor_set_opacity (actor, 0xa0);
+ clutter_actor_set_y (actor, clutter_actor_get_height (actor) * -0.5);
+ clutter_actor_set_opacity (actor, 128);
+ clutter_actor_set_reactive (actor, TRUE);
gtk_widget_show_all (window);
gtk_main ();