您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ CLUTTER_ACTOR_IS_VISIBLE函数代码示例

51自学网 2021-06-01 20:02:22
  C++
这篇教程C++ CLUTTER_ACTOR_IS_VISIBLE函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中CLUTTER_ACTOR_IS_VISIBLE函数的典型用法代码示例。如果您正苦于以下问题:C++ CLUTTER_ACTOR_IS_VISIBLE函数的具体用法?C++ CLUTTER_ACTOR_IS_VISIBLE怎么用?C++ CLUTTER_ACTOR_IS_VISIBLE使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了CLUTTER_ACTOR_IS_VISIBLE函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: actor_realize_not_recursive

static voidactor_realize_not_recursive (void){  ClutterActor *actor, *group;  ClutterActor *stage;  stage = clutter_test_get_stage ();  clutter_actor_show (stage);  group = clutter_actor_new ();  actor = clutter_actor_new ();  clutter_actor_hide (group); /* don't show, so won't map */  clutter_actor_hide (actor); /* don't show, so won't map */  g_assert (!(CLUTTER_ACTOR_IS_REALIZED (group)));  g_assert (!(CLUTTER_ACTOR_IS_REALIZED (actor)));  clutter_actor_add_child (stage, group);  clutter_actor_add_child (group, actor);  clutter_actor_realize (group);  g_assert (CLUTTER_ACTOR_IS_REALIZED (group));  g_assert (!(CLUTTER_ACTOR_IS_MAPPED (group)));  g_assert (!(CLUTTER_ACTOR_IS_VISIBLE (group)));  /* realizing group did not realize the child */  g_assert (!CLUTTER_ACTOR_IS_REALIZED (actor));  g_assert (!(CLUTTER_ACTOR_IS_MAPPED (actor)));  g_assert (!(CLUTTER_ACTOR_IS_VISIBLE (actor)));}
开发者ID:Distrotech,项目名称:clutter,代码行数:34,


示例2: mx_scroll_view_allocate

static voidmx_scroll_view_allocate (ClutterActor          *actor,                         const ClutterActorBox *box,                         ClutterAllocationFlags flags){  MxPadding padding;  ClutterActorBox child_box;  gfloat avail_width, avail_height, sb_width, sb_height;  MxScrollViewPrivate *priv = MX_SCROLL_VIEW (actor)->priv;  CLUTTER_ACTOR_CLASS (mx_scroll_view_parent_class)->    allocate (actor, box, flags);  mx_widget_get_padding (MX_WIDGET (actor), &padding);  avail_width = (box->x2 - box->x1) - padding.left - padding.right;  avail_height = (box->y2 - box->y1) - padding.top - padding.bottom;  sb_width = priv->scrollbar_width;  sb_height = priv->scrollbar_height;  if (!CLUTTER_ACTOR_IS_VISIBLE (priv->vscroll))    sb_width = 0;  if (!CLUTTER_ACTOR_IS_VISIBLE (priv->hscroll))    sb_height = 0;  /* Vertical scrollbar */  if (CLUTTER_ACTOR_IS_VISIBLE (priv->vscroll))    {      child_box.x1 = avail_width - sb_width;      child_box.y1 = padding.top;      child_box.x2 = avail_width;      child_box.y2 = child_box.y1 + avail_height - sb_height;      clutter_actor_allocate (priv->vscroll, &child_box, flags);    }  /* Horizontal scrollbar */  if (CLUTTER_ACTOR_IS_VISIBLE (priv->hscroll))    {      child_box.x1 = padding.left;      child_box.x2 = child_box.x1 + avail_width - sb_width;      child_box.y1 = avail_height - sb_height;      child_box.y2 = avail_height;      clutter_actor_allocate (priv->hscroll, &child_box, flags);    }  /* Child */  child_box.x1 = padding.left;  child_box.x2 = avail_width - sb_width;  child_box.y1 = padding.top;  child_box.y2 = avail_height - sb_height;  if (priv->child)    clutter_actor_allocate (priv->child, &child_box, flags);}
开发者ID:ebassi,项目名称:mx,代码行数:60,


示例3: mex_info_bar_dialog_visible

gboolean mex_info_bar_dialog_visible (MexInfoBar *self){  MexInfoBarPrivate *priv = self->priv;  return (CLUTTER_ACTOR_IS_VISIBLE (priv->power_dialog)      || CLUTTER_ACTOR_IS_VISIBLE (priv->settings_dialog));}
开发者ID:ocrete,项目名称:media-explorer,代码行数:7,


示例4: tidy_scroll_view_paint

static voidtidy_scroll_view_paint (ClutterActor *actor){  TidyScrollViewPrivate *priv = TIDY_SCROLL_VIEW (actor)->priv;    if (priv->child && CLUTTER_ACTOR_IS_VISIBLE (priv->child))    clutter_actor_paint (priv->child);  if (CLUTTER_ACTOR_IS_VISIBLE (priv->hscroll))    clutter_actor_paint (priv->hscroll);  if (CLUTTER_ACTOR_IS_VISIBLE (priv->vscroll))    clutter_actor_paint (priv->vscroll);}
开发者ID:ak2consulting,项目名称:tweet,代码行数:12,


示例5: st_scroll_view_paint

static voidst_scroll_view_paint (ClutterActor *actor){  StScrollViewPrivate *priv = ST_SCROLL_VIEW (actor)->priv;  /* StBin will paint the child */  CLUTTER_ACTOR_CLASS (st_scroll_view_parent_class)->paint (actor);  /* paint our custom children */  if (priv->hscrollbar_visible && CLUTTER_ACTOR_IS_VISIBLE (priv->hscroll))    clutter_actor_paint (priv->hscroll);  if (priv->vscrollbar_visible && CLUTTER_ACTOR_IS_VISIBLE (priv->vscroll))    clutter_actor_paint (priv->vscroll);}
开发者ID:aldatsa,项目名称:Cinnamon,代码行数:14,


示例6: _close_dialog_cb

static gboolean_close_dialog_cb (gpointer unused, MexInfoBar *self){  MexInfoBarPrivate *priv = self->priv;  if (CLUTTER_ACTOR_IS_VISIBLE (priv->power_dialog))    clutter_actor_hide (priv->power_dialog);  if (CLUTTER_ACTOR_IS_VISIBLE (priv->settings_dialog))    clutter_actor_hide (priv->settings_dialog);  mex_push_focus (MX_FOCUSABLE (self));  return FALSE;}
开发者ID:ocrete,项目名称:media-explorer,代码行数:15,


示例7: mx_scroll_view_pick

static voidmx_scroll_view_pick (ClutterActor       *actor,                     const ClutterColor *color){  MxScrollViewPrivate *priv = MX_SCROLL_VIEW (actor)->priv;  /* Chain up so we get a bounding box pained (if we are reactive) */  CLUTTER_ACTOR_CLASS (mx_scroll_view_parent_class)->pick (actor, color);  /* paint our custom children */  if (CLUTTER_ACTOR_IS_VISIBLE (priv->hscroll))    clutter_actor_paint (priv->hscroll);  if (CLUTTER_ACTOR_IS_VISIBLE (priv->vscroll))    clutter_actor_paint (priv->vscroll);}
开发者ID:ebassi,项目名称:mx,代码行数:15,


示例8: show_tile_preview

voidshow_tile_preview (MetaPlugin    *plugin,                   MetaWindow    *window,                   MetaRectangle *tile_rect,                   int            tile_monitor_number){  MetaScreen *screen = meta_plugin_get_screen (plugin);  ScreenTilePreview *preview = get_screen_tile_preview (screen);  ClutterActor *window_actor;  if (CLUTTER_ACTOR_IS_VISIBLE (preview->actor)      && preview->tile_rect.x == tile_rect->x      && preview->tile_rect.y == tile_rect->y      && preview->tile_rect.width == tile_rect->width      && preview->tile_rect.height == tile_rect->height)    return; /* nothing to do */  clutter_actor_set_position (preview->actor, tile_rect->x, tile_rect->y);  clutter_actor_set_size (preview->actor, tile_rect->width, tile_rect->height);  clutter_actor_show (preview->actor);  window_actor = CLUTTER_ACTOR (meta_window_get_compositor_private (window));  clutter_actor_lower (preview->actor, window_actor);  preview->tile_rect = *tile_rect;}
开发者ID:efernandesng,项目名称:budgie-desktop,代码行数:27,


示例9: mx_notebook_allocate

static voidmx_notebook_allocate (ClutterActor          *actor,                      const ClutterActorBox *box,                      ClutterAllocationFlags flags){  MxNotebookPrivate *priv = MX_NOTEBOOK (actor)->priv;  GList *l;  MxPadding padding;  ClutterActorBox childbox;  CLUTTER_ACTOR_CLASS (mx_notebook_parent_class)->allocate (actor, box, flags);  mx_widget_get_padding (MX_WIDGET (actor), &padding);  childbox.x1 = 0 + padding.left;  childbox.x2 = box->x2 - box->x1 - padding.right;  childbox.y1 = 0 + padding.top;  childbox.y2 = box->y2 - box->y1 - padding.bottom;  for (l = priv->children; l; l = l->next)    {      ClutterActor *child;      child = CLUTTER_ACTOR (l->data);      if (CLUTTER_ACTOR_IS_VISIBLE (l->data))        clutter_actor_allocate (child, &childbox, flags);    }}
开发者ID:3v1n0,项目名称:mx,代码行数:30,


示例10: test_realized

voidtest_realized (TestConformSimpleFixture *fixture,               gconstpointer             data){  ClutterActor *actor;  ClutterActor *stage;  stage = clutter_stage_get_default ();  actor = clutter_rectangle_new ();  g_assert (!(CLUTTER_ACTOR_IS_REALIZED (actor)));  clutter_actor_hide (actor); /* don't show, so won't map */  clutter_container_add_actor (CLUTTER_CONTAINER (stage),                               actor);  clutter_actor_realize (actor);  g_assert (CLUTTER_ACTOR_IS_REALIZED (actor));  g_assert (!(CLUTTER_ACTOR_IS_MAPPED (actor)));  g_assert (!(CLUTTER_ACTOR_IS_VISIBLE (actor)));  clutter_actor_destroy (actor);}
开发者ID:Docworld,项目名称:chromiumos,代码行数:25,


示例11: st_container_remove

static voidst_container_remove (ClutterContainer *container,                     ClutterActor     *actor){  StContainerPrivate *priv = ST_CONTAINER (container)->priv;  g_object_ref (actor);  priv->children = g_list_remove (priv->children, actor);  clutter_actor_unparent (actor);  /* queue a relayout, to get the correct positioning inside   * the ::actor-removed signal handlers   */  clutter_actor_queue_relayout (CLUTTER_ACTOR (container));  /* at this point, the actor passed to the "actor-removed" signal   * handlers is not parented anymore to the container but since we   * are holding a reference on it, it's still valid   */  g_signal_emit_by_name (container, "actor-removed", actor);  st_container_update_pseudo_classes (ST_CONTAINER (container));  if (CLUTTER_ACTOR_IS_VISIBLE (container))    clutter_actor_queue_redraw (CLUTTER_ACTOR (container));  g_object_unref (actor);}
开发者ID:hosttor,项目名称:Cinnamon,代码行数:29,


示例12: mx_menu_event

static gbooleanmx_menu_event (ClutterActor *actor,               ClutterEvent *event){    /* We swallow mouse events so that they don't fall through to whatever's     * beneath us.     */    switch (event->type)    {    case CLUTTER_MOTION:    case CLUTTER_BUTTON_PRESS:    case CLUTTER_BUTTON_RELEASE:    case CLUTTER_SCROLL:        return TRUE;    case CLUTTER_KEY_PRESS:    case CLUTTER_KEY_RELEASE:        /* hide the menu if the escape key was pressed */        if (((ClutterKeyEvent*) event)->keyval == CLUTTER_KEY_Escape                && CLUTTER_ACTOR_IS_VISIBLE (actor))        {            mx_menu_close (actor);        }    default:        return FALSE;    }}
开发者ID:jonnylamb,项目名称:mx,代码行数:28,


示例13: mx_stack_paint_children

static voidmx_stack_paint_children (ClutterActor *actor){  MxStackPrivate *priv = MX_STACK (actor)->priv;  GList *c;  for (c = priv->children; c; c = c->next)    {      ClutterActor *child = c->data;      gboolean crop;      if (!CLUTTER_ACTOR_IS_VISIBLE (child))        continue;      clutter_container_child_get (CLUTTER_CONTAINER (actor),                                   child,                                   "crop", &crop,                                   NULL);      if (crop)        {          /* clip */          cogl_clip_push_rectangle (priv->allocation.x1,                                    priv->allocation.y1,                                    priv->allocation.x2,                                    priv->allocation.y2);          clutter_actor_paint (c->data);          cogl_clip_pop ();        }      else        clutter_actor_paint (c->data);    }}
开发者ID:bhgv,项目名称:mx--clutter-based-GUI-framework--orange-pi-2-h3,代码行数:34,


示例14: _xfdashboard_viewpad_update_scrollbars

/* Allocation of a view changed */static void _xfdashboard_viewpad_update_scrollbars(XfdashboardViewpad *self){	XfdashboardViewpadPrivate	*priv;	gfloat						w, h;	g_return_if_fail(XFDASHBOARD_IS_VIEWPAD(self));	priv=self->priv;	/* Set range of scroll bar to width and height of active view	 * But we need to check for nan-values here - I do not get rid of it :(	 */	if(priv->activeView) clutter_actor_get_size(CLUTTER_ACTOR(priv->activeView), &w, &h);		else w=h=1.0f;	xfdashboard_scrollbar_set_range(XFDASHBOARD_SCROLLBAR(priv->hScrollbar), isnan(w)==0 ? w : 0.0f);	xfdashboard_scrollbar_set_range(XFDASHBOARD_SCROLLBAR(priv->vScrollbar), isnan(h)==0 ? h : 0.0f);	/* If any scroll bar policy is automatic then reallocate the	 * same allocation again in an unkindly way to force a recalculation	 * if scroll bars needed to shown (or hidden what is unlikely)	 */	if(CLUTTER_ACTOR_IS_VISIBLE(self) &&		(priv->hScrollbarPolicy==XFDASHBOARD_POLICY_AUTOMATIC ||			priv->vScrollbarPolicy==XFDASHBOARD_POLICY_AUTOMATIC))	{		ClutterActorBox			box;		clutter_actor_get_allocation_box(CLUTTER_ACTOR(self), &box);		_xfdashboard_viewpad_allocate(CLUTTER_ACTOR(self), &box, CLUTTER_DELEGATE_LAYOUT);	}}
开发者ID:tydaikho,项目名称:xfdashboard,代码行数:33,


示例15: glide_slide_button_drawing_area_expose

static gbooleanglide_slide_button_drawing_area_expose (GtkWidget *drawing_area,					GdkEventExpose *event,					gpointer user_data){  GlideSlideButton *b = (GlideSlideButton *)user_data;  cairo_t *cr = gdk_cairo_create (gtk_widget_get_window (drawing_area));  gfloat width, height;    clutter_actor_get_size (CLUTTER_ACTOR (b->priv->slide), &width, &height);  cairo_save (cr);  cairo_scale (cr, 80.0/width, 60.0/height);  glide_actor_print (GLIDE_ACTOR (b->priv->slide), cr);  cairo_restore (cr);  if (CLUTTER_ACTOR_IS_VISIBLE (b->priv->slide))    {      glide_cairo_set_fg_color (cr, drawing_area, GTK_STATE_NORMAL);      cairo_set_line_width (cr, 3);      cairo_rectangle (cr, 0, 0, 80, 60);      cairo_stroke (cr);    }  cairo_destroy (cr);    return FALSE;}
开发者ID:GNOME,项目名称:glide,代码行数:28,


示例16: mpl_application_view_get_property

static voidmpl_application_view_get_property (GObject    *object,                                   guint       property_id,                                   GValue     *value,                                   GParamSpec *pspec){  MplApplicationViewPrivate *priv = APPLICATION_VIEW_PRIVATE (object);  switch (property_id)    {    case PROP_ICON:      g_value_set_object (value, priv->icon);      break;    case PROP_TITLE:      g_value_set_string (value, mx_label_get_text (MX_LABEL (priv->title)));      break;    case PROP_SUBTITLE:      g_value_set_string (value, mx_label_get_text (MX_LABEL (priv->subtitle)));      break;    case PROP_CAN_CLOSE:      g_value_set_boolean (value, CLUTTER_ACTOR_IS_VISIBLE (priv->close_button));      break;    case PROP_THUMBNAIL:      g_value_set_object (value, priv->thumbnail);      break;    default:      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);    }}
开发者ID:phmccarty,项目名称:dawati-shell,代码行数:34,


示例17: on_fullscreen

static gbooleanon_fullscreen (GtkWindow           *window,               GdkEventWindowState *event,               CalibArea           *area){  ClutterRect rect;  if ((event->changed_mask & GDK_WINDOW_STATE_FULLSCREEN) == 0)    return FALSE;  /* Protect against window state multiple changes*/  if (CLUTTER_ACTOR_IS_VISIBLE (area->action_layer))    return FALSE;  clutter_actor_show (area->action_layer);  clutter_actor_show (area->clock);  rect.origin.x = 0;  rect.origin.y = 0;  clutter_actor_get_size (area->helper_text_title,                          &rect.size.width,                          &rect.size.height);  g_object_set (area->text_title_holder, "clip-rect", &rect, NULL);  clutter_actor_get_size (area->helper_text_body,                          &rect.size.width,                          &rect.size.height);  g_object_set (area->text_body_holder, "clip-rect", &rect, NULL);  clutter_actor_set_y (area->helper_text_body,                       - clutter_actor_get_height (area->helper_text_body));  show_helper_text_title (area);  return FALSE;}
开发者ID:Amphiboly,项目名称:gnome-control-center,代码行数:34,


示例18: mex_music_player_captured_event

static gbooleanmex_music_player_captured_event (ClutterActor *actor,                                 ClutterEvent *event){  MexMusicPlayerPrivate *priv = MEX_MUSIC_PLAYER (actor)->priv;  ClutterKeyEvent *kevent;  if (event->type != CLUTTER_KEY_PRESS)    return FALSE;  kevent = (ClutterKeyEvent *) event;  if (MEX_KEY_INFO (kevent->keyval))    {      ClutterActor *tracks;      tracks = mex_script_get_actor (priv->script, "tracks-scrollview");      if (CLUTTER_ACTOR_IS_VISIBLE (tracks))        clutter_actor_hide (tracks);      else        clutter_actor_show (tracks);      return TRUE;    }  return FALSE;}
开发者ID:frankopt,项目名称:media-explorer,代码行数:29,


示例19: mx_menu_event

static gbooleanmx_menu_event (ClutterActor *actor,               ClutterEvent *event){  /* We swallow mouse events so that they don't fall through to whatever's   * beneath us.   */  switch (event->type)    {    case CLUTTER_MOTION:    case CLUTTER_BUTTON_PRESS:    case CLUTTER_BUTTON_RELEASE:    case CLUTTER_SCROLL:      return TRUE;    case CLUTTER_KEY_PRESS:    case CLUTTER_KEY_RELEASE:      /* hide the menu if the escape key was pressed */      if (((ClutterKeyEvent*) event)->keyval == CLUTTER_KEY_Escape          && CLUTTER_ACTOR_IS_VISIBLE (actor))        {          clutter_actor_set_reactive (actor, FALSE);          clutter_actor_animate (actor, CLUTTER_LINEAR, 250,                                 "opacity", (guchar) 0,                                 "signal-swapped::completed",                                 clutter_actor_hide,                                 actor,                                 NULL);        }    default:      return FALSE;    }}
开发者ID:jku,项目名称:mx,代码行数:34,


示例20: clutter_rectangle_set_border_width

/** * clutter_rectangle_set_border_width: * @rectangle: a #ClutterRectangle * @width: the width of the border * * Sets the width (in pixel) of the border used by @rectangle. * A @width of 0 will unset the border. * * Since: 0.2 */voidclutter_rectangle_set_border_width (ClutterRectangle *rectangle,                                    guint             width){  ClutterRectanglePrivate *priv;  g_return_if_fail (CLUTTER_IS_RECTANGLE (rectangle));  priv = rectangle->priv;  if (priv->border_width != width)    {      g_object_ref (rectangle);      priv->border_width = width;      if (priv->border_width != 0)        priv->has_border = TRUE;      else        priv->has_border = FALSE;      if (CLUTTER_ACTOR_IS_VISIBLE (CLUTTER_ACTOR (rectangle)))        clutter_actor_queue_redraw (CLUTTER_ACTOR (rectangle));      g_object_notify (G_OBJECT (rectangle), "border-width");      g_object_notify (G_OBJECT (rectangle), "has-border");      g_object_unref (rectangle);    }}
开发者ID:archlinuxarm-n900,项目名称:clutter08,代码行数:38,


示例21: clutter_rectangle_set_color

/** * clutter_rectangle_set_color: * @rectangle: a #ClutterRectangle * @color: a #ClutterColor * * Sets the color of @rectangle. */voidclutter_rectangle_set_color (ClutterRectangle   *rectangle,			     const ClutterColor *color){  ClutterRectanglePrivate *priv;  g_return_if_fail (CLUTTER_IS_RECTANGLE (rectangle));  g_return_if_fail (color != NULL);  g_object_ref (rectangle);  priv = rectangle->priv;  priv->color.red = color->red;  priv->color.green = color->green;  priv->color.blue = color->blue;  priv->color.alpha = color->alpha;#if 0  /* FIXME - appears to be causing border to always get drawn */  if (clutter_color_equal (&priv->color, &priv->border_color))    priv->has_border = FALSE;  else    priv->has_border = TRUE;#endif  if (CLUTTER_ACTOR_IS_VISIBLE (rectangle))    clutter_actor_queue_redraw (CLUTTER_ACTOR (rectangle));  g_object_notify (G_OBJECT (rectangle), "color");  g_object_notify (G_OBJECT (rectangle), "has-border");  g_object_unref (rectangle);}
开发者ID:archlinuxarm-n900,项目名称:clutter08,代码行数:40,


示例22: test_show_on_set_parent

voidtest_show_on_set_parent (TestConformSimpleFixture *fixture,                         gconstpointer             data){  ClutterActor *actor, *group;  gboolean show_on_set_parent;  ClutterActor *stage;  stage = clutter_stage_get_default ();  group = clutter_group_new ();  g_assert (!(CLUTTER_ACTOR_IS_VISIBLE (group)));  clutter_container_add_actor (CLUTTER_CONTAINER (stage),                               group);  actor = clutter_rectangle_new ();  g_object_get (G_OBJECT (actor),                "show-on-set-parent", &show_on_set_parent,                NULL);  g_assert (!(CLUTTER_ACTOR_IS_VISIBLE (actor)));  g_assert (show_on_set_parent == TRUE);  clutter_group_add (group, actor);  g_object_get (G_OBJECT (actor),                "show-on-set-parent", &show_on_set_parent,                NULL);  g_assert (CLUTTER_ACTOR_IS_VISIBLE (actor));  g_assert (show_on_set_parent == TRUE);  g_object_ref (actor);  clutter_actor_unparent (actor);  g_object_get (G_OBJECT (actor),                "show-on-set-parent", &show_on_set_parent,                NULL);  g_assert (!CLUTTER_ACTOR_IS_REALIZED (actor));  g_assert (!CLUTTER_ACTOR_IS_MAPPED (actor));  g_assert (CLUTTER_ACTOR_IS_VISIBLE (actor));  g_assert (show_on_set_parent == TRUE);  clutter_actor_destroy (actor);  clutter_actor_destroy (group);}
开发者ID:Docworld,项目名称:chromiumos,代码行数:47,


示例23: clutter_glx_texture_pixmap_update_area

static voidclutter_glx_texture_pixmap_update_area (ClutterX11TexturePixmap *texture,                                        gint                     x,                                        gint                     y,                                        gint                     width,                                        gint                     height){  ClutterGLXTexturePixmapPrivate       *priv;  Display                              *dpy;  CLUTTER_NOTE (TEXTURE, "Updating texture pixmap");  priv = CLUTTER_GLX_TEXTURE_PIXMAP (texture)->priv;  dpy = clutter_x11_get_default_display();  if (!CLUTTER_ACTOR_IS_REALIZED (texture))    return;  if (priv->use_fallback)    {      CLUTTER_NOTE (TEXTURE, "Falling back to X11");      parent_class->update_area (texture,                                 x, y,                                 width, height);      return;    }  if (priv->glx_pixmap == None)    return;  if (texture_bind (CLUTTER_GLX_TEXTURE_PIXMAP(texture)))    {      CLUTTER_NOTE (TEXTURE, "Really updating via GLX");      clutter_x11_trap_x_errors ();      (_gl_bind_tex_image) (dpy,                            priv->glx_pixmap,                            GLX_FRONT_LEFT_EXT,                            NULL);      XSync (clutter_x11_get_default_display(), FALSE);      /* Note above fires X error for non name pixmaps - but       * things still seem to work - i.e pixmap updated       */      if (clutter_x11_untrap_x_errors ())        CLUTTER_NOTE (TEXTURE, "Update bind_tex_image failed");      priv->bound = TRUE;    }  else    g_warning ("Failed to bind initial tex");  if (CLUTTER_ACTOR_IS_VISIBLE (CLUTTER_ACTOR(texture)))    clutter_actor_queue_redraw (CLUTTER_ACTOR(texture));}
开发者ID:archlinuxarm-n900,项目名称:clutter08,代码行数:59,


示例24: st_box_layout_paint

static voidst_box_layout_paint (ClutterActor *actor){  StBoxLayout *self = ST_BOX_LAYOUT (actor);  StBoxLayoutPrivate *priv = self->priv;  StThemeNode *theme_node = st_widget_get_theme_node (ST_WIDGET (actor));  GList *l, *children;  gdouble x, y;  ClutterActorBox allocation_box;  ClutterActorBox content_box;  get_border_paint_offsets (self, &x, &y);  if (x != 0 || y != 0)    {      cogl_push_matrix ();      cogl_translate ((int)x, (int)y, 0);    }  CLUTTER_ACTOR_CLASS (st_box_layout_parent_class)->paint (actor);  if (x != 0 || y != 0)    {      cogl_pop_matrix ();    }  children = st_container_get_children_list (ST_CONTAINER (actor));  if (children == NULL)    return;  clutter_actor_get_allocation_box (actor, &allocation_box);  st_theme_node_get_content_box (theme_node, &allocation_box, &content_box);  content_box.x1 += x;  content_box.y1 += y;  content_box.x2 += x;  content_box.y2 += y;  /* The content area forms the viewport into the scrolled contents, while   * the borders and background stay in place; after drawing the borders and   * background, we clip to the content area */  if (priv->hadjustment || priv->vadjustment)    cogl_clip_push_rectangle ((int)content_box.x1,                              (int)content_box.y1,                              (int)content_box.x2,                              (int)content_box.y2);  for (l = children; l; l = g_list_next (l))    {      ClutterActor *child = (ClutterActor*) l->data;      if (CLUTTER_ACTOR_IS_VISIBLE (child))        clutter_actor_paint (child);    }  if (priv->hadjustment || priv->vadjustment)    cogl_clip_pop ();}
开发者ID:MarxGonzalez,项目名称:Cinnamon,代码行数:58,


示例25: glide_slide_button_undo_position_changed

static voidglide_slide_button_undo_position_changed (GlideUndoManager *manager,					  gpointer user_data){  GlideSlideButton *b = (GlideSlideButton *)user_data;    if (CLUTTER_ACTOR_IS_VISIBLE (b->priv->slide))    gtk_widget_queue_draw (GTK_WIDGET (b));}
开发者ID:GNOME,项目名称:glide,代码行数:9,


示例26: tweet_overlay_sort_depth_order

static voidtweet_overlay_sort_depth_order (ClutterContainer *container){  TweetOverlayPrivate *priv = TWEET_OVERLAY (container)->priv;  priv->children = g_list_sort (priv->children, sort_z_order);  if (CLUTTER_ACTOR_IS_VISIBLE (container))    clutter_actor_queue_redraw (CLUTTER_ACTOR (container));}
开发者ID:ak2consulting,项目名称:tweet,代码行数:10,


示例27: st_container_sort_depth_order

static voidst_container_sort_depth_order (ClutterContainer *container){  StContainerPrivate *priv = ST_CONTAINER (container)->priv;  priv->children = g_list_sort (priv->children, sort_z_order);  if (CLUTTER_ACTOR_IS_VISIBLE (container))    clutter_actor_queue_redraw (CLUTTER_ACTOR (container));}
开发者ID:hosttor,项目名称:Cinnamon,代码行数:10,


示例28: shell_generic_container_get_paint_volume

static gbooleanshell_generic_container_get_paint_volume (ClutterActor *self,                                          ClutterPaintVolume *volume){  ClutterActorBox paint_box, alloc_box;  StThemeNode *theme_node;  ClutterVertex origin;  /* Setting the paint volume does not make sense when we don't have any allocation */  if (!clutter_actor_has_allocation (self))    return FALSE;  theme_node = st_widget_get_theme_node (ST_WIDGET (self));  clutter_actor_get_allocation_box (self, &alloc_box);  st_theme_node_get_paint_box (theme_node, &alloc_box, &paint_box);  origin.x = paint_box.x1 - alloc_box.x1;  origin.y = paint_box.y1 - alloc_box.y1;  origin.z = 0.0f;  clutter_paint_volume_set_origin (volume, &origin);  clutter_paint_volume_set_width (volume, paint_box.x2 - paint_box.x1);  clutter_paint_volume_set_height (volume, paint_box.y2 - paint_box.y1);  if (!clutter_actor_get_clip_to_allocation (self))    {      ClutterActor *child;      /* Based on ClutterGroup/ClutterBox; include the children's       * paint volumes, since they may paint outside our allocation.       */      for (child = clutter_actor_get_first_child (self);           child != NULL;           child = clutter_actor_get_next_sibling (child))        {          const ClutterPaintVolume *child_volume;          if (!CLUTTER_ACTOR_IS_VISIBLE (child))            continue;          if (shell_generic_container_get_skip_paint (SHELL_GENERIC_CONTAINER  (self), child))            continue;          child_volume = clutter_actor_get_transformed_paint_volume (child, self);          if (!child_volume)            return FALSE;          clutter_paint_volume_union (volume, child_volume);        }    }  return TRUE;}
开发者ID:Devyani-Divs,项目名称:gnome-shell,代码行数:53,


示例29: mx_table_paint

static voidmx_table_paint (ClutterActor *self){  MxTablePrivate *priv = MX_TABLE (self)->priv;  ClutterActorIter iter;  ClutterActor *child;  /* make sure the background gets painted first */  CLUTTER_ACTOR_CLASS (mx_table_parent_class)->paint (self);  clutter_actor_iter_init (&iter, self);  while (clutter_actor_iter_next (&iter, &child))    {      if (CLUTTER_ACTOR_IS_VISIBLE (child))        clutter_actor_paint (child);    }  if (_mx_debug (MX_DEBUG_LAYOUT))    {      int i;      float width, height;      gfloat pos = 0;      DimensionData *rows, *cols;      rows = &g_array_index (priv->rows, DimensionData, 0);      cols = &g_array_index (priv->columns, DimensionData, 0);      clutter_actor_get_size (self, &width, &height);      cogl_set_source_color4f (0.0, 0.0, 1.0, 0.7);      for (i = 0; i < priv->n_rows; i++)        {          cogl_rectangle (0, pos, 10, pos + rows[i].final_size);          pos += rows[i].final_size + priv->row_spacing;        }      cogl_set_source_color4f (1.0, 0.0, 0.0, 0.7);      pos = 0;      for (i = 0; i < priv->n_rows; i++)        {          cogl_rectangle (pos, 0, pos + cols[i].final_size, 10);          pos += cols[i].final_size + priv->col_spacing;        }    }}
开发者ID:ManMower,项目名称:mx,代码行数:53,


示例30: _xfdashboard_workspace_selector_allocate

/* Allocate position and size of actor and its children */static void _xfdashboard_workspace_selector_allocate(ClutterActor *inActor,														const ClutterActorBox *inBox,														ClutterAllocationFlags inFlags){	XfdashboardWorkspaceSelector			*self=XFDASHBOARD_WORKSPACE_SELECTOR(inActor);	XfdashboardWorkspaceSelectorPrivate		*priv=self->priv;	gfloat									availableWidth, availableHeight;	gfloat									childWidth, childHeight;	ClutterActor							*child;	ClutterActorIter						iter;	ClutterActorBox							childAllocation={ 0, };	/* Chain up to store the allocation of the actor */	CLUTTER_ACTOR_CLASS(xfdashboard_workspace_selector_parent_class)->allocate(inActor, inBox, inFlags);	/* Get available size */	clutter_actor_box_get_size(inBox, &availableWidth, &availableHeight);	/* Calculate new position and size of visible children */	childAllocation.x1=childAllocation.y1=priv->spacing;	clutter_actor_iter_init(&iter, CLUTTER_ACTOR(inActor));	while(clutter_actor_iter_next(&iter, &child))	{		/* Is child visible? */		if(!CLUTTER_ACTOR_IS_VISIBLE(child)) continue;		/* Calculate new position and size of child */		if(priv->orientation==CLUTTER_ORIENTATION_HORIZONTAL)		{			childHeight=availableHeight-(2*priv->spacing);			clutter_actor_get_preferred_width(child, childHeight, NULL, &childWidth);			childAllocation.y1=ceil(MAX(((availableHeight-childHeight))/2.0f, priv->spacing));			childAllocation.y2=floor(childAllocation.y1+childHeight);			childAllocation.x2=floor(childAllocation.x1+childWidth);		}			else			{				childWidth=availableWidth-(2*priv->spacing);				clutter_actor_get_preferred_height(child, childWidth, NULL, &childHeight);				childAllocation.x1=ceil(MAX(((availableWidth-childWidth))/2.0f, priv->spacing));				childAllocation.x2=floor(childAllocation.x1+childWidth);				childAllocation.y2=floor(childAllocation.y1+childHeight);			}		clutter_actor_allocate(child, &childAllocation, inFlags);		/* Set up for next child */		if(priv->orientation==CLUTTER_ORIENTATION_HORIZONTAL) childAllocation.x1=floor(childAllocation.x1+childWidth+priv->spacing);			else childAllocation.y1=floor(childAllocation.y1+childHeight+priv->spacing);	}}
开发者ID:paulmadore,项目名称:luckyde,代码行数:54,



注:本文中的CLUTTER_ACTOR_IS_VISIBLE函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ CLUTTER_ACTOR_META函数代码示例
C++ CLUTTER_ACTOR_CLASS函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。