|
NekoWM
A gfxprim proxy backend tiling window manager
|
View is an abstraction for a piece of a screen. More...
#include <core/gp_core.h>#include <backends/gp_types.h>Go to the source code of this file.
Data Structures | |
| struct | neko_view_slot_ops |
| A view slot ops. More... | |
| struct | neko_view_slot |
| A view slot content. More... | |
| struct | neko_view |
| View a part of a screen. More... | |
Typedefs | |
| typedef struct neko_view_slot_ops | neko_view_slot_ops |
| A view slot ops. | |
| typedef struct neko_view_slot | neko_view_slot |
| A view slot content. | |
| typedef struct neko_view | neko_view |
| View a part of a screen. | |
Enumerations | |
| enum | neko_view_split_mode |
| A split mode. More... | |
Functions | |
| void | neko_view_init (neko_view *self, gp_size x, gp_size y, gp_size w, gp_size h, const char *name) |
| Initialize a view. | |
| neko_view * | neko_view_focused_child (neko_view *self) |
| Returns view focused child. | |
| int | neko_view_is_focused (neko_view *self) |
| Returns true if view is focused. | |
| void | neko_view_slot_rem (neko_view *self) |
| Removes a slot from a view. | |
| static void | neko_view_slot_exit (neko_view *self) |
| Child did exit. | |
| void | neko_view_update_rect (neko_view *self, gp_coord x, gp_coord y, gp_size w, gp_size h) |
| Update rectangle in the view on the screen. | |
| void | neko_view_flip (neko_view *self) |
| Update whole view on the screen. | |
| void | neko_view_slot_put (neko_view *self, neko_view_slot *slot) |
| Fills in a slot in a neko view. | |
| void | neko_view_event (neko_view *self, gp_event *ev) |
| Sends an input event to a view child. | |
| gp_pixmap * | neko_view_pixmap (neko_view *self) |
| Returns a pixmap for the view. | |
| void | neko_view_resize (neko_view *self, gp_size w, gp_size h) |
| Resizes the view recursively along with all slots. | |
| void | neko_view_repaint (neko_view *self) |
| Request a view repaint. | |
| void | neko_view_show (neko_view *self) |
| Switches a view shown on a display. | |
| void | neko_view_hide (neko_view *self) |
| Hides a view from a display. | |
| static void | neko_view_focus_in (neko_view *self) |
| Sends a focus in event to the view event handler. | |
| static void | neko_view_focus_out (neko_view *self) |
| Sends a focus out event to the view event handler. | |
View is an abstraction for a piece of a screen.
View can be divided into subviews recursively.
Each view has a slot, if slot is not empty the screen is taken over by the slot content.
Definition in file neko_view.h.
| typedef struct neko_view_slot neko_view_slot |
A view slot content.
Something to be shown in the view on the screen.
| typedef struct neko_view_slot_ops neko_view_slot_ops |
A view slot ops.
Callback to render a slot content.
| enum neko_view_split_mode |
A split mode.
If view is split it can be split either horizontally or vertically.
Definition at line 31 of file neko_view.h.
| void neko_view_event | ( | neko_view * | self, |
| gp_event * | ev | ||
| ) |
Sends an input event to a view child.
| self | A neko view. |
| ev | An input event. |
Referenced by neko_view_focus_in(), and neko_view_focus_out().
| void neko_view_flip | ( | neko_view * | self | ) |
Update whole view on the screen.
This is called by the child when content needs to be updated from the view pixmap and painted on the screen.
| self | A neko view. |
|
inlinestatic |
Sends a focus in event to the view event handler.
| self | A view. |
Definition at line 304 of file neko_view.h.
References neko_view_event().
|
inlinestatic |
Sends a focus out event to the view event handler.
| self | A view. |
Definition at line 320 of file neko_view.h.
References neko_view_event().
Returns view focused child.
| self | A neko view. |
| void neko_view_hide | ( | neko_view * | self | ) |
Hides a view from a display.
This function can be called only on a view that is currently shown on a screen.
| self | A currently shown view. |
| void neko_view_init | ( | neko_view * | self, |
| gp_size | x, | ||
| gp_size | y, | ||
| gp_size | w, | ||
| gp_size | h, | ||
| const char * | name | ||
| ) |
Initialize a view.
| self | A view to initialize. |
| x | A x offset of the view on a screen. |
| y | A y offset of the view on a screen. |
| w | A view width in pixels. |
| h | A view height in pixels. |
| name | A view name. |
| int neko_view_is_focused | ( | neko_view * | self | ) |
Returns true if view is focused.
| self | A neko view. |
| gp_pixmap * neko_view_pixmap | ( | neko_view * | self | ) |
Returns a pixmap for the view.
| self | A neko view. |
| void neko_view_repaint | ( | neko_view * | self | ) |
Request a view repaint.
Needs to be called after resize on view(s) shown on the screen(s).
| self | A view to be repainted. |
| void neko_view_resize | ( | neko_view * | self, |
| gp_size | w, | ||
| gp_size | h | ||
| ) |
Resizes the view recursively along with all slots.
| self | A neko view. |
| w | New width. |
| h | New height. |
| void neko_view_show | ( | neko_view * | self | ) |
Switches a view shown on a display.
Before new view is shown current while, if any, must be hidden with neko_view_hide().
| self | A view to be shown. |
|
inlinestatic |
Child did exit.
This is called by a child when it did exit. The view should replace the child with a different one (if possible) in the handler.
| self | A neko view. |
Definition at line 202 of file neko_view.h.
References neko_view::slot, and neko_view::slot_exit.
| void neko_view_slot_put | ( | neko_view * | self, |
| neko_view_slot * | slot | ||
| ) |
Fills in a slot in a neko view.
Sets a new view slot content, possibly replaces currently shown content. If slot is NULL the view becomes empty.
| self | A neko view. |
| slot | A new neko view slot content to be shonw in the view. |
| void neko_view_slot_rem | ( | neko_view * | self | ) |
Removes a slot from a view.
| self | A neko view. |
| void neko_view_update_rect | ( | neko_view * | self, |
| gp_coord | x, | ||
| gp_coord | y, | ||
| gp_size | w, | ||
| gp_size | h | ||
| ) |
Update rectangle in the view on the screen.
This is called by the child when content needs to be updated from the view pixmap and painted on the screen.
| self | A neko view. |