mirror of
https://github.com/labwc/labwc.git
synced 2026-03-29 07:58:10 -04:00
node: add node_scaled_scene_buffer_from_node
This commit is contained in:
parent
8156b91306
commit
9a3412324d
4 changed files with 22 additions and 0 deletions
|
|
@ -8,6 +8,7 @@ struct lab_layer_surface;
|
||||||
struct lab_layer_popup;
|
struct lab_layer_popup;
|
||||||
struct menuitem;
|
struct menuitem;
|
||||||
struct ssd_button;
|
struct ssd_button;
|
||||||
|
struct scaled_scene_buffer;
|
||||||
|
|
||||||
enum node_descriptor_type {
|
enum node_descriptor_type {
|
||||||
LAB_NODE_DESC_NODE = 0,
|
LAB_NODE_DESC_NODE = 0,
|
||||||
|
|
@ -19,6 +20,7 @@ enum node_descriptor_type {
|
||||||
LAB_NODE_DESC_IME_POPUP,
|
LAB_NODE_DESC_IME_POPUP,
|
||||||
LAB_NODE_DESC_MENUITEM,
|
LAB_NODE_DESC_MENUITEM,
|
||||||
LAB_NODE_DESC_TREE,
|
LAB_NODE_DESC_TREE,
|
||||||
|
LAB_NODE_DESC_SCALED_SCENE_BUFFER,
|
||||||
LAB_NODE_DESC_SSD_BUTTON,
|
LAB_NODE_DESC_SSD_BUTTON,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -81,4 +83,11 @@ struct menuitem *node_menuitem_from_node(
|
||||||
struct ssd_button *node_ssd_button_from_node(
|
struct ssd_button *node_ssd_button_from_node(
|
||||||
struct wlr_scene_node *wlr_scene_node);
|
struct wlr_scene_node *wlr_scene_node);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* node_scaled_scene_buffer_from_node - return scaled_scene_buffer from node
|
||||||
|
* @wlr_scene_node: wlr_scene_node from which to return data
|
||||||
|
*/
|
||||||
|
struct scaled_scene_buffer *node_scaled_scene_buffer_from_node(
|
||||||
|
struct wlr_scene_node *wlr_scene_node);
|
||||||
|
|
||||||
#endif /* LABWC_NODE_DESCRIPTOR_H */
|
#endif /* LABWC_NODE_DESCRIPTOR_H */
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@
|
||||||
#include "buffer.h"
|
#include "buffer.h"
|
||||||
#include "common/mem.h"
|
#include "common/mem.h"
|
||||||
#include "common/scaled-scene-buffer.h"
|
#include "common/scaled-scene-buffer.h"
|
||||||
|
#include "node.h"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* TODO
|
* TODO
|
||||||
|
|
@ -226,6 +227,8 @@ scaled_scene_buffer_create(struct wlr_scene_tree *parent,
|
||||||
free(self);
|
free(self);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
node_descriptor_create(&self->scene_buffer->node,
|
||||||
|
LAB_NODE_DESC_SCALED_SCENE_BUFFER, self);
|
||||||
|
|
||||||
self->impl = impl;
|
self->impl = impl;
|
||||||
/*
|
/*
|
||||||
|
|
|
||||||
|
|
@ -348,6 +348,7 @@ get_cursor_context(struct server *server)
|
||||||
return ret;
|
return ret;
|
||||||
case LAB_NODE_DESC_NODE:
|
case LAB_NODE_DESC_NODE:
|
||||||
case LAB_NODE_DESC_TREE:
|
case LAB_NODE_DESC_TREE:
|
||||||
|
case LAB_NODE_DESC_SCALED_SCENE_BUFFER:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -79,3 +79,12 @@ node_ssd_button_from_node(struct wlr_scene_node *wlr_scene_node)
|
||||||
assert(node_descriptor->type == LAB_NODE_DESC_SSD_BUTTON);
|
assert(node_descriptor->type == LAB_NODE_DESC_SSD_BUTTON);
|
||||||
return (struct ssd_button *)node_descriptor->data;
|
return (struct ssd_button *)node_descriptor->data;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
struct scaled_scene_buffer *
|
||||||
|
node_scaled_scene_buffer_from_node(struct wlr_scene_node *wlr_scene_node)
|
||||||
|
{
|
||||||
|
assert(wlr_scene_node->data);
|
||||||
|
struct node_descriptor *node_descriptor = wlr_scene_node->data;
|
||||||
|
assert(node_descriptor->type == LAB_NODE_DESC_SCALED_SCENE_BUFFER);
|
||||||
|
return (struct scaled_scene_buffer *)node_descriptor->data;
|
||||||
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue