예제 #1
0
static void
gtk_switch_end_toggle_animation (GtkSwitch *sw)
{
  GtkSwitchPrivate *priv = sw->priv;

  if (priv->tick_id != 0)
    {
      gtk_widget_remove_tick_callback (GTK_WIDGET (sw), priv->tick_id);
      priv->tick_id = 0;
    }
}
예제 #2
0
static void
gd_stack_unschedule_ticks (GdStack *stack)
{
  GdStackPrivate *priv = stack->priv;

  if (priv->tick_id != 0)
    {
      gtk_widget_remove_tick_callback (GTK_WIDGET (stack), priv->tick_id);
      priv->tick_id = 0;
    }
}
예제 #3
0
static void
gtk_css_widget_node_dequeue_validate (GtkCssNode *node)
{
  GtkCssWidgetNode *widget_node = GTK_CSS_WIDGET_NODE (node);

  G_GNUC_BEGIN_IGNORE_DEPRECATIONS
  if (GTK_IS_RESIZE_CONTAINER (widget_node->widget))
    gtk_widget_remove_tick_callback (widget_node->widget,
                                     widget_node->validate_cb_id);
  G_GNUC_END_IGNORE_DEPRECATIONS
}
예제 #4
0
파일: gtkgears.c 프로젝트: 3v1n0/gtk
static void
gtk_gears_finalize (GObject *obj)
{
  GtkGears *gears = GTK_GEARS (obj);
  GtkGearsPrivate *priv = gtk_gears_get_instance_private (gears);

  gtk_widget_remove_tick_callback (GTK_WIDGET (gears), priv->tick);

  g_clear_object (&priv->fps_label);

  G_OBJECT_CLASS (gtk_gears_parent_class)->finalize (obj);
}
예제 #5
0
static void
animate_stop (GstyleSlidein *self)
{
  g_assert (GSTYLE_IS_SLIDEIN (self));

  if (self->animation_handler_id)
    {
      gtk_widget_remove_tick_callback (GTK_WIDGET (self), self->animation_handler_id);
      self->is_closing = self->is_opening = FALSE;
      self->animation_handler_id = 0;
    }
}
예제 #6
0
static void
gtk_revealer_stop_animation (GtkRevealer *revealer)
{
  GtkRevealerPrivate *priv = gtk_revealer_get_instance_private (revealer);

  priv->current_pos = priv->target_pos;
  if (priv->tick_id != 0)
    {
      gtk_widget_remove_tick_callback (GTK_WIDGET (revealer), priv->tick_id);
      priv->tick_id = 0;
    }
}
예제 #7
0
static void
gtk_revealer_finalize (GObject *obj)
{
  GtkRevealer *revealer = GTK_REVEALER (obj);
  GtkRevealerPrivate *priv = gtk_revealer_get_instance_private (revealer);

  if (priv->tick_id != 0)
    gtk_widget_remove_tick_callback (GTK_WIDGET (revealer), priv->tick_id);
  priv->tick_id = 0;

  G_OBJECT_CLASS (gtk_revealer_parent_class)->finalize (obj);
}
예제 #8
0
static void deepin_fixed_end_animation(DeepinFixed* self, ChildAnimationInfo* ai)
{
    g_assert(ai->tick_id != 0);

    DeepinFixedChild* child = ai->child;

    g_signal_emit(self, signals[SIGNAL_MOVE_FINISHED], 0, child);
    child->ai = NULL;
    deepin_fixed_move_internal(self, child, ai->target_x, ai->target_y);

    gtk_widget_remove_tick_callback(GTK_WIDGET(self), ai->tick_id);
}
static void
nautilus_selection_canvas_item_dispose (GObject *obj)
{
    NautilusSelectionCanvasItem *self = NAUTILUS_SELECTION_CANVAS_ITEM (obj);

    if (self->priv->fade_out_tick_id != 0)
    {
        gtk_widget_remove_tick_callback (GTK_WIDGET (EEL_CANVAS_ITEM (self)->canvas), self->priv->fade_out_tick_id);
        self->priv->fade_out_tick_id = 0;
    }

    G_OBJECT_CLASS (nautilus_selection_canvas_item_parent_class)->dispose (obj);
}
예제 #10
0
파일: edosu-view.c 프로젝트: tomtix/osux
static void
pause_clicked(EdosuView *self)
{
    if (self->playing)
    {
        printf("pause play\n");
        gtk_widget_remove_tick_callback(
            GTK_WIDGET(self->drawing_area), self->tick_id);
        self->playing = FALSE;
        self->tick_id = 0;
        self->first_frame_time = 0;
    }
}
예제 #11
0
static void
rg_graph_destroy (GtkWidget *widget)
{
  RgGraph *self = (RgGraph *)widget;
  RgGraphPrivate *priv = rg_graph_get_instance_private (self);

  if (priv->tick_handler != 0)
    {
      gtk_widget_remove_tick_callback (widget, priv->tick_handler);
      priv->tick_handler = 0;
    }

  GTK_WIDGET_CLASS (rg_graph_parent_class)->destroy (widget);
}
예제 #12
0
static gboolean
rg_graph_tick_cb (GtkWidget     *widget,
                  GdkFrameClock *frame_clock,
                  gpointer       user_data)
{
  RgGraph *self = (RgGraph *)widget;
  RgGraphPrivate *priv = rg_graph_get_instance_private (self);
  GtkAllocation alloc;
  gint64 frame_time;
  gint64 end_time;
  gint64 timespan;
  gint x_offset;

  g_assert (RG_IS_GRAPH (self));

  if ((priv->surface == NULL) || (priv->table == NULL) || !gtk_widget_get_visible (widget))
    goto remove_handler;

  timespan = rg_table_get_timespan (priv->table);
  if (timespan == 0)
    goto remove_handler;

  gtk_widget_get_allocation (widget, &alloc);

  frame_time = gdk_frame_clock_get_frame_time (frame_clock);
  end_time = rg_table_get_end_time (priv->table);

  x_offset = -((frame_time - end_time) / (gdouble)timespan * alloc.width);

  if (x_offset != priv->x_offset)
    {
      priv->x_offset = x_offset;
      gtk_widget_queue_draw (widget);
    }

  return G_SOURCE_CONTINUE;

remove_handler:
  if (priv->tick_handler != 0)
    {
      gtk_widget_remove_tick_callback (widget, priv->tick_handler);
      priv->tick_handler = 0;
    }

  return G_SOURCE_REMOVE;
}
예제 #13
0
static void
switch_to_page (OfficeRunner *run,
		int           page)
{
	gtk_notebook_set_current_page (GTK_NOTEBOOK (run->notebook), page);

	switch (page) {
	case RUN_PAGE:
		set_running_settings (run, TRUE);
		gtk_label_set_text (GTK_LABEL (WID ("run_button_label")), _("Run!"));
		break;
	case RUNNING_PAGE: {
		set_running_settings (run, TRUE);
		disable_block_timeout (run);
		run->timer = g_timer_new ();
		run->timeout = gtk_widget_add_tick_callback (run->time_label, count_tick, run, NULL);
		gtk_label_set_text (GTK_LABEL (WID ("run_button_label")), _("Done!"));
		break;
			   }
	case SCORES_PAGE: {
		run->elapsed = g_timer_elapsed (run->timer, NULL);
		g_timer_destroy (run->timer);
		run->timer = NULL;

		gtk_widget_remove_tick_callback (run->time_label, run->timeout);
		run->timeout = 0;

		gtk_label_set_text (GTK_LABEL (WID ("run_button_label")), _("Try Again"));
		set_records_page (run);

		/* This should be enough time for the machine to go to sleep */
		set_running_settings (run, FALSE);
		run->reenable_block_id = g_timeout_add_seconds (3, reenable_block_timeout_cb, run);

		break;
			  }
	}
}
예제 #14
0
static void
free_runner (OfficeRunner *run)
{
	if (run->timer)
		g_timer_destroy (run->timer);
	if (run->timeout)
		gtk_widget_remove_tick_callback (run->time_label, run->timeout);
	g_object_unref (run->ui);
	if (run->reenable_block_id > 0)
		g_source_remove (run->reenable_block_id);
	g_clear_object (&run->client);
	if (run->lid_switch_fd > 0)
		close (run->lid_switch_fd);
	g_object_unref (run->connection);

	if (run->dirty_records) {
		save_records (run);
	}

	g_list_free_full (run->records, (GDestroyNotify) free_orecord);

	g_free (run);
}