rofi
1.5.4
widget-internal.h
Go to the documentation of this file.
1
/*
2
* rofi
3
*
4
* MIT/X11 License
5
* Copyright © 2013-2017 Qball Cow <qball@gmpclient.org>
6
*
7
* Permission is hereby granted, free of charge, to any person obtaining
8
* a copy of this software and associated documentation files (the
9
* "Software"), to deal in the Software without restriction, including
10
* without limitation the rights to use, copy, modify, merge, publish,
11
* distribute, sublicense, and/or sell copies of the Software, and to
12
* permit persons to whom the Software is furnished to do so, subject to
13
* the following conditions:
14
*
15
* The above copyright notice and this permission notice shall be
16
* included in all copies or substantial portions of the Software.
17
*
18
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
19
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
21
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
22
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
23
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
24
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
25
*
26
*/
27
28
#ifndef WIDGET_INTERNAL_H
29
#define WIDGET_INTERNAL_H
30
31
#include "
theme.h
"
35
struct
_widget
36
{
38
WidgetType
type
;
40
short
x
;
42
short
y
;
44
short
w
;
46
short
h
;
48
RofiPadding
def_margin
;
49
RofiPadding
def_padding
;
50
RofiPadding
def_border
;
51
RofiPadding
def_border_radius
;
52
RofiPadding
margin
;
53
RofiPadding
padding
;
54
RofiPadding
border
;
55
RofiPadding
border_radius
;
56
58
gboolean
enabled
;
60
gboolean
expand
;
62
gboolean
end
;
64
struct
_widget
*
parent
;
66
gboolean
need_redraw
;
68
int ( *
get_width
)(
struct
_widget
* );
70
int ( *
get_height
)(
struct
_widget
* );
72
void ( *
draw
)(
struct
_widget
*
widget
, cairo_t *
draw
);
74
void ( *
resize
)(
struct
_widget
*, short, short );
76
void ( *
update
)(
struct
_widget
* );
77
79
gboolean ( *
motion_notify
)(
struct
_widget
*, gint
x
, gint
y
);
80
81
int ( *
get_desired_height
)(
struct
_widget
* );
82
int ( *
get_desired_width
)(
struct
_widget
* );
83
85
widget_find_mouse_target_cb
find_mouse_target
;
87
widget_trigger_action_cb
trigger_action
;
89
void
*
trigger_action_cb_data
;
90
92
void ( *
free
)(
struct
_widget
*
widget
);
93
95
char
*
name
;
96
const
char
*
state
;
97
};
98
108
void
widget_init
(
widget
*wid,
widget
*
parent
,
WidgetType
type
,
const
char
*
name
);
109
116
void
widget_set_state
(
widget
*
widget
,
const
char
*
state
);
117
125
int
widget_padding_get_left
(
const
widget
*wid );
126
134
int
widget_padding_get_right
(
const
widget
*wid );
135
143
int
widget_padding_get_top
(
const
widget
*wid );
144
152
int
widget_padding_get_bottom
(
const
widget
*wid );
153
161
int
widget_padding_get_remaining_width
(
const
widget
*wid );
169
int
widget_padding_get_remaining_height
(
const
widget
*wid );
177
int
widget_padding_get_padding_height
(
const
widget
*wid );
185
int
widget_padding_get_padding_width
(
const
widget
*wid );
186
#endif // WIDGET_INTERNAL_H
_widget::end
gboolean end
Definition:
widget-internal.h:62
widget_padding_get_left
int widget_padding_get_left(const widget *wid)
Definition:
widget.c:497
widget_padding_get_bottom
int widget_padding_get_bottom(const widget *wid)
Definition:
widget.c:527
widget_padding_get_padding_width
int widget_padding_get_padding_width(const widget *wid)
Definition:
widget.c:559
WidgetType
WidgetType
Definition:
widget.h:57
_widget::enabled
gboolean enabled
Definition:
widget-internal.h:58
_widget::trigger_action_cb_data
void * trigger_action_cb_data
Definition:
widget-internal.h:89
widget
struct _widget widget
Definition:
widget.h:51
widget_padding_get_remaining_width
int widget_padding_get_remaining_width(const widget *wid)
Definition:
widget.c:538
_widget::expand
gboolean expand
Definition:
widget-internal.h:60
_widget::get_height
int(* get_height)(struct _widget *)
Definition:
widget-internal.h:70
_widget::margin
RofiPadding margin
Definition:
widget-internal.h:52
_widget::get_desired_width
int(* get_desired_width)(struct _widget *)
Definition:
widget-internal.h:82
_widget::get_desired_height
int(* get_desired_height)(struct _widget *)
Definition:
widget-internal.h:81
_widget::get_width
int(* get_width)(struct _widget *)
Definition:
widget-internal.h:68
widget_find_mouse_target_cb
widget *(* widget_find_mouse_target_cb)(widget *widget, WidgetType type, gint x, gint y)
Definition:
widget.h:99
_widget::def_border_radius
RofiPadding def_border_radius
Definition:
widget-internal.h:51
_widget::def_margin
RofiPadding def_margin
Definition:
widget-internal.h:48
_widget::state
const char * state
Definition:
widget-internal.h:96
_widget::draw
void(* draw)(struct _widget *widget, cairo_t *draw)
Definition:
widget-internal.h:72
widget_padding_get_right
int widget_padding_get_right(const widget *wid)
Definition:
widget.c:507
widget_padding_get_top
int widget_padding_get_top(const widget *wid)
Definition:
widget.c:517
_widget::name
char * name
Definition:
widget-internal.h:95
_widget::def_border
RofiPadding def_border
Definition:
widget-internal.h:50
theme.h
_widget::free
void(* free)(struct _widget *widget)
Definition:
widget-internal.h:92
_widget::trigger_action
widget_trigger_action_cb trigger_action
Definition:
widget-internal.h:87
_widget::y
short y
Definition:
widget-internal.h:42
_widget::x
short x
Definition:
widget-internal.h:40
RofiPadding
Definition:
rofi-types.h:130
widget_set_state
void widget_set_state(widget *widget, const char *state)
Definition:
widget.c:58
_widget::parent
struct _widget * parent
Definition:
widget-internal.h:64
widget_padding_get_padding_height
int widget_padding_get_padding_height(const widget *wid)
Definition:
widget.c:552
_widget::h
short h
Definition:
widget-internal.h:46
_widget::motion_notify
gboolean(* motion_notify)(struct _widget *, gint x, gint y)
Definition:
widget-internal.h:79
_widget::w
short w
Definition:
widget-internal.h:44
_widget::border
RofiPadding border
Definition:
widget-internal.h:54
_widget::def_padding
RofiPadding def_padding
Definition:
widget-internal.h:49
widget_trigger_action_cb
WidgetTriggerActionResult(* widget_trigger_action_cb)(widget *widget, guint action, gint x, gint y, void *user_data)
Definition:
widget.h:112
_widget::border_radius
RofiPadding border_radius
Definition:
widget-internal.h:55
_widget::find_mouse_target
widget_find_mouse_target_cb find_mouse_target
Definition:
widget-internal.h:85
widget_init
void widget_init(widget *wid, widget *parent, WidgetType type, const char *name)
Definition:
widget.c:37
_widget::resize
void(* resize)(struct _widget *, short, short)
Definition:
widget-internal.h:74
widget_padding_get_remaining_height
int widget_padding_get_remaining_height(const widget *wid)
Definition:
widget.c:545
_widget::padding
RofiPadding padding
Definition:
widget-internal.h:53
_widget::need_redraw
gboolean need_redraw
Definition:
widget-internal.h:66
_widget::update
void(* update)(struct _widget *)
Definition:
widget-internal.h:76
_widget
Definition:
widget-internal.h:36
_widget::type
WidgetType type
Definition:
widget-internal.h:38
include
widgets
widget-internal.h
Generated by
1.8.18