110 lines
2.5 KiB
C
110 lines
2.5 KiB
C
#ifndef _TERMIOINTERNALS_H__
|
|
#define _TERMIOINTERNALS_H__ 1
|
|
|
|
typedef struct _Termio Termio;
|
|
|
|
struct _Termio
|
|
{
|
|
Evas_Object_Smart_Clipped_Data __clipped_data;
|
|
struct {
|
|
const char *name;
|
|
int size;
|
|
int chw, chh;
|
|
} font;
|
|
struct {
|
|
int w, h;
|
|
Evas_Object *obj;
|
|
} grid;
|
|
struct {
|
|
Evas_Object *top, *bottom, *theme;
|
|
} sel;
|
|
struct {
|
|
Evas_Object *obj;
|
|
int x, y;
|
|
Cursor_Shape shape;
|
|
} cursor;
|
|
struct {
|
|
int cx, cy;
|
|
int button;
|
|
} mouse;
|
|
struct {
|
|
const char *string;
|
|
int x1, y1, x2, y2;
|
|
int suspend;
|
|
uint16_t id;
|
|
Eina_List *objs;
|
|
struct {
|
|
Evas_Object *dndobj;
|
|
Evas_Coord x, y;
|
|
unsigned char down : 1;
|
|
unsigned char dnd : 1;
|
|
unsigned char dndobjdel : 1;
|
|
} down;
|
|
} link;
|
|
struct {
|
|
const char *file;
|
|
FILE *f;
|
|
double progress;
|
|
unsigned long long total, size;
|
|
Eina_Bool active : 1;
|
|
} sendfile;
|
|
Evas_Object *ctxpopup;
|
|
int zoom_fontsize_start;
|
|
int scroll;
|
|
Evas_Object *self;
|
|
Evas_Object *event;
|
|
Term *term;
|
|
|
|
Termpty *pty;
|
|
Ecore_Animator *anim;
|
|
Ecore_Timer *delayed_size_timer;
|
|
Ecore_Timer *link_do_timer;
|
|
Ecore_Timer *mouse_selection_scroll_timer;
|
|
Ecore_Job *mouse_move_job;
|
|
Ecore_Timer *mouseover_delay;
|
|
Evas_Object *win, *theme, *glayer;
|
|
Config *config;
|
|
const char *sel_str;
|
|
Eina_List *cur_chids;
|
|
Ecore_Job *sel_reset_job;
|
|
double set_sel_at;
|
|
Elm_Sel_Type sel_type;
|
|
unsigned char jump_on_change : 1;
|
|
unsigned char jump_on_keypress : 1;
|
|
unsigned char have_sel : 1;
|
|
unsigned char noreqsize : 1;
|
|
unsigned char didclick : 1;
|
|
unsigned char moved : 1;
|
|
unsigned char bottom_right : 1;
|
|
unsigned char top_left : 1;
|
|
unsigned char reset_sel : 1;
|
|
unsigned char cb_added : 1;
|
|
double gesture_zoom_start_size;
|
|
};
|
|
|
|
#define INT_SWAP(_a, _b) do { \
|
|
int _swap = _a; _a = _b; _b = _swap; \
|
|
} while (0)
|
|
|
|
|
|
void
|
|
termio_internal_mouse_down(Termio *sd, Evas_Event_Mouse_Down *ev);
|
|
void
|
|
termio_internal_mouse_up(Termio *sd, Evas_Event_Mouse_Up *ev);
|
|
void
|
|
termio_internal_mouse_move(Termio *sd, Evas_Event_Mouse_Move *ev);
|
|
|
|
void
|
|
termio_selection_dbl_fix(Termio *sd);
|
|
void
|
|
termio_selection_get(Termio *sd,
|
|
int c1x, int c1y, int c2x, int c2y,
|
|
struct ty_sb *sb,
|
|
Eina_Bool rtrim);
|
|
void
|
|
termio_scroll(Evas_Object *obj, int direction, int start_y, int end_y);
|
|
void
|
|
termio_cursor_to_xy(Termio *sd, Evas_Coord x, Evas_Coord y,
|
|
int *cx, int *cy);
|
|
#endif
|