|
Packit Service |
a9274b |
#ifndef WIDGET_H_INCLUDED
|
|
Packit Service |
a9274b |
#define WIDGET_H_INCLUDED
|
|
Packit Service |
a9274b |
|
|
Packit Service |
a9274b |
#include <panel.h>
|
|
Packit Service |
a9274b |
|
|
Packit Service |
a9274b |
#define WIDGET_BORDER 0x1
|
|
Packit Service |
a9274b |
#define WIDGET_SUBWINDOW 0x2
|
|
Packit Service |
a9274b |
#define WIDGET_CURSOR_VISIBLE 0x4
|
|
Packit Service |
a9274b |
|
|
Packit Service |
a9274b |
#define SCREEN_CENTER -1
|
|
Packit Service |
a9274b |
|
|
Packit Service |
a9274b |
struct widget {
|
|
Packit Service |
a9274b |
WINDOW *window;
|
|
Packit Service |
a9274b |
WINDOW *subwindow; /* optional: contents without border */
|
|
Packit Service |
a9274b |
PANEL *panel;
|
|
Packit Service |
a9274b |
int cursor_visibility;
|
|
Packit Service |
a9274b |
|
|
Packit Service |
a9274b |
void (*handle_key)(int key);
|
|
Packit Service |
a9274b |
void (*window_size_changed)(void);
|
|
Packit Service |
a9274b |
void (*close)(void);
|
|
Packit Service |
a9274b |
};
|
|
Packit Service |
a9274b |
|
|
Packit Service |
a9274b |
extern int screen_lines;
|
|
Packit Service |
a9274b |
extern int screen_cols;
|
|
Packit Service |
a9274b |
|
|
Packit Service |
a9274b |
void widget_init(struct widget *widget,
|
|
Packit Service |
a9274b |
int lines_, int cols, int y, int x,
|
|
Packit Service |
a9274b |
chtype bkgd, unsigned int flags);
|
|
Packit Service |
a9274b |
void widget_free(struct widget *widget);
|
|
Packit Service |
a9274b |
const struct widget *get_active_widget(void);
|
|
Packit Service |
a9274b |
void window_size_changed(void);
|
|
Packit Service |
a9274b |
|
|
Packit Service |
a9274b |
#endif
|