summaryrefslogtreecommitdiff
path: root/src/libsystemd-terminal/grdev.c
diff options
context:
space:
mode:
authorDavid Herrmann <dh.herrmann@gmail.com>2014-09-22 17:37:21 +0200
committerDavid Herrmann <dh.herrmann@gmail.com>2014-09-22 18:14:44 +0200
commitf2a15d86ccd0729e1442f40679cd393417e1e177 (patch)
tree6ebd5218d2df0cfaa2192ee81798ebd631c6621c /src/libsystemd-terminal/grdev.c
parent5d301b8aecc286d6ec7e92b0864d66360ea57205 (diff)
terminal: allow user-context to be retrieved/stored
Add "userdata" storage to a bunch of external objects, namely displays and sessions. Furthermore, add some property retrieval helpers. This is required if we want external API users to not duplicate our own object hashtables, but retrieve context from the objects themselves.
Diffstat (limited to 'src/libsystemd-terminal/grdev.c')
-rw-r--r--src/libsystemd-terminal/grdev.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/libsystemd-terminal/grdev.c b/src/libsystemd-terminal/grdev.c
index 43d0c7c9bf..e34112ee7c 100644
--- a/src/libsystemd-terminal/grdev.c
+++ b/src/libsystemd-terminal/grdev.c
@@ -282,6 +282,24 @@ grdev_display *grdev_display_free(grdev_display *display) {
return NULL;
}
+void grdev_display_set_userdata(grdev_display *display, void *userdata) {
+ assert(display);
+
+ display->userdata = userdata;
+}
+
+void *grdev_display_get_userdata(grdev_display *display) {
+ assert_return(display, NULL);
+
+ return display->userdata;
+}
+
+const char *grdev_display_get_name(grdev_display *display) {
+ assert_return(display, NULL);
+
+ return display->name;
+}
+
bool grdev_display_is_enabled(grdev_display *display) {
return display && display->enabled;
}