static void dispose_zoom_icons (PhidiasItemsGeo *item) { ClutterActor *icon; ClutterActor *stage; ChamplainView *view; view = gtk_champlain_embed_get_view (GTK_CHAMPLAIN_EMBED (item)); stage = clutter_actor_get_stage (CLUTTER_ACTOR (view)); icon = do_marker_icon ("zoom-in", 24); clutter_actor_set_reactive (icon, TRUE); clutter_actor_set_fixed_position_set (icon, TRUE); clutter_actor_add_child (CLUTTER_ACTOR (stage), icon); clutter_actor_set_position (icon, 10, 10); g_signal_connect_swapped (icon, "button-press-event", G_CALLBACK (champlain_view_zoom_in), view); icon = do_marker_icon ("zoom-out", 24); clutter_actor_set_reactive (icon, TRUE); clutter_actor_set_fixed_position_set (icon, TRUE); clutter_actor_add_child (CLUTTER_ACTOR (stage), icon); clutter_actor_set_position (icon, 10, 40); g_signal_connect_swapped (icon, "button-press-event", G_CALLBACK (champlain_view_zoom_out), view); /* TODO Those have to be mutually exclusive */ icon = do_marker_icon ("format-text-bold", 24); clutter_actor_set_reactive (icon, TRUE); clutter_actor_set_fixed_position_set (icon, TRUE); clutter_actor_add_child (CLUTTER_ACTOR (stage), icon); clutter_actor_set_position (icon, 10, 70); g_signal_connect (icon, "button-press-event", G_CALLBACK (show_text_markers), item); icon = do_marker_icon ("go-down", 24); clutter_actor_set_reactive (icon, TRUE); clutter_actor_set_fixed_position_set (icon, TRUE); clutter_actor_add_child (CLUTTER_ACTOR (stage), icon); clutter_actor_set_position (icon, 10, 100); g_signal_connect (icon, "button-press-event", G_CALLBACK (show_point_markers), item); }
IO_METHOD(IoClutterActor, setFixedPosition) { int state = IoMessage_locals_boolArgAt_(m, locals, 0); clutter_actor_set_fixed_position_set(IOCACTOR(self), state); return self; }