Download

Support

lib/ewl_text_trigger.h

Go to the documentation of this file.
00001 /* vim: set sw=8 ts=8 sts=8 expandtab: */
00002 #ifndef EWL_TEXT_TRIGGER_H
00003 #define EWL_TEXT_TRIGGER_H
00004 
00005 #include "ewl_base.h"
00006 #include "ewl_text.h"
00007 #include "ewl_text_context.h"
00008 
00022 #define EWL_TEXT_TRIGGER_TYPE "trigger"
00023 
00028 #define EWL_TEXT_TRIGGER_IS(w) (ewl_widget_type_is(EWL_WIDGET(w), EWL_TEXT_TRIGGER_TYPE))
00029 
00033 typedef struct Ewl_Text_Trigger Ewl_Text_Trigger;
00034 
00039 struct Ewl_Text_Trigger
00040 {
00041         Ewl_Widget widget;                
00042         Ewl_Text_Trigger_Type type;         
00044         unsigned int char_pos;        
00045         unsigned int char_len;        
00046         unsigned int char_base;        
00048         Ewl_Text *text_parent;        
00049         Ecore_List *areas;        
00050 };
00051 
00056 #define EWL_TEXT_TRIGGER(trigger) ((Ewl_Text_Trigger *) trigger)
00057 
00058 Ewl_Widget        *ewl_text_trigger_new(Ewl_Text_Trigger_Type type);
00059 int                  ewl_text_trigger_init(Ewl_Text_Trigger *trigger,
00060                                         Ewl_Text_Trigger_Type type);
00061 
00062 Ewl_Text_Trigger_Type ewl_text_trigger_type_get(Ewl_Text_Trigger *t);
00063 
00064 void                  ewl_text_trigger_start_pos_set(Ewl_Text_Trigger *t,
00065                                                 unsigned int char_pos);
00066 unsigned int          ewl_text_trigger_start_pos_get(Ewl_Text_Trigger *t);
00067 
00068 void                  ewl_text_trigger_base_set(Ewl_Text_Trigger *t,
00069                                                 unsigned int char_pos);
00070 unsigned int          ewl_text_trigger_base_get(Ewl_Text_Trigger *t);
00071 
00072 void                  ewl_text_trigger_length_set(Ewl_Text_Trigger *t,
00073                                                 unsigned int char_len);
00074 unsigned int          ewl_text_trigger_length_get(Ewl_Text_Trigger *t);
00075 
00076 void                 ewl_text_trigger_area_add(Ewl_Text *t, Ewl_Text_Trigger *cur,
00077                                                 int x, int y, int w, int h);
00078 void                 ewl_text_trigger_areas_cleanup(Ewl_Text_Trigger *trig);
00079 
00080 /*
00081  * Internal stuff
00082  */
00083 void ewl_text_trigger_cb_show(Ewl_Widget *w, void *ev, void *data);
00084 void ewl_text_trigger_cb_hide(Ewl_Widget *w, void *ev, void *data);
00085 void ewl_text_trigger_cb_configure(Ewl_Widget *w, void *ev, void *data);
00086 void ewl_text_trigger_cb_unrealize(Ewl_Widget *w, void *ev, void *data);
00087 
00092 #endif
00093 

Copyright © Enlightenment.org

Enlightened Widget Library Documentation Generated: Sat May 17 16:49:08 2008