forked from enlightenment/enlightenment
Add ibox for iconified icons - this is a *total* rip / copy of ibar, but looks nice - lacking in multiple zone/box support now - feel free to rip this back out again if you want
SVN revision: 12906
This commit is contained in:
parent
344748abb2
commit
a2035e9d2a
|
@ -186,6 +186,7 @@ src/bin/Makefile
|
|||
src/modules/Makefile
|
||||
src/modules/test/Makefile
|
||||
src/modules/ibar/Makefile
|
||||
src/modules/ibox/Makefile
|
||||
src/modules/dropshadow/Makefile
|
||||
src/modules/clock/Makefile
|
||||
src/modules/pager/Makefile
|
||||
|
|
|
@ -2,6 +2,7 @@ MAINTAINERCLEANFILES = Makefile.in
|
|||
SUBDIRS = \
|
||||
test \
|
||||
ibar \
|
||||
ibox \
|
||||
dropshadow \
|
||||
clock \
|
||||
pager \
|
||||
|
|
|
@ -0,0 +1,26 @@
|
|||
MAINTAINERCLEANFILES = Makefile.in
|
||||
MODULE = ibox
|
||||
|
||||
# data files for the module
|
||||
filesdir = $(libdir)/enlightenment/modules/$(MODULE)
|
||||
files_DATA = \
|
||||
module_icon.png
|
||||
|
||||
EXTRA_DIST = $(files_DATA)
|
||||
|
||||
# the module .so file
|
||||
INCLUDES = -I. \
|
||||
-I$(top_srcdir) \
|
||||
-I$(includedir) \
|
||||
-I$(top_srcdir)$(MODULE) \
|
||||
-I$(top_srcdir)/src/bin \
|
||||
-I$(top_srcdir)/src/lib \
|
||||
-I$(top_srcdir)/src/modules \
|
||||
@e_cflags@
|
||||
pkgdir = $(libdir)/enlightenment/modules/$(MODULE)
|
||||
pkg_LTLIBRARIES = module.la
|
||||
module_la_SOURCES = e_mod_main.c \
|
||||
e_mod_main.h
|
||||
module_la_LIBADD = @e_libs@ @dlopen_libs@
|
||||
module_la_LDFLAGS = -module -avoid-version
|
||||
module_la_DEPENDENCIES = $(top_builddir)/config.h
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,86 @@
|
|||
#ifndef E_MOD_MAIN_H
|
||||
#define E_MOD_MAIN_H
|
||||
|
||||
typedef struct _Config Config;
|
||||
typedef struct _IBox IBox;
|
||||
typedef struct _IBox_Box IBox_Box;
|
||||
typedef struct _IBox_Icon IBox_Icon;
|
||||
|
||||
struct _Config
|
||||
{
|
||||
double follow_speed;
|
||||
double autoscroll_speed;
|
||||
int width;
|
||||
int iconsize;
|
||||
int edge;
|
||||
double anchor;
|
||||
double handle;
|
||||
char autohide;
|
||||
};
|
||||
|
||||
struct _IBox
|
||||
{
|
||||
Evas_List *boxs;
|
||||
E_Menu *config_menu;
|
||||
|
||||
E_Config_DD *conf_edd;
|
||||
Config *conf;
|
||||
};
|
||||
|
||||
struct _IBox_Box
|
||||
{
|
||||
IBox *ibox;
|
||||
E_Container *con;
|
||||
Evas *evas;
|
||||
|
||||
Evas_Object *box_object;
|
||||
Evas_Object *overlay_object;
|
||||
Evas_Object *base_object;
|
||||
Evas_Object *event_object;
|
||||
|
||||
Evas_List *icons;
|
||||
|
||||
Evas_Coord minsize, maxsize;
|
||||
|
||||
double align, align_req;
|
||||
double follow, follow_req;
|
||||
Ecore_Timer *timer;
|
||||
Ecore_Animator *animator;
|
||||
|
||||
Evas_Coord x, y, w, h;
|
||||
|
||||
unsigned char move : 1;
|
||||
unsigned char resize1 : 1;
|
||||
unsigned char resize2 : 1;
|
||||
Evas_Coord start_x, start_y;
|
||||
Evas_Coord start_bx, start_by, start_bw, start_bh;
|
||||
|
||||
Ecore_Event_Handler *ev_handler_container_resize;
|
||||
};
|
||||
|
||||
struct _IBox_Icon
|
||||
{
|
||||
IBox_Box *ibb;
|
||||
E_App *app;
|
||||
Evas_Object *bg_object;
|
||||
Evas_Object *overlay_object;
|
||||
Evas_Object *icon_object;
|
||||
Evas_Object *event_object;
|
||||
Evas_List *extra_icons;
|
||||
E_Border *border;
|
||||
|
||||
unsigned char raise_on_hilight : 1;
|
||||
};
|
||||
|
||||
#define EDGE_BOTTOM 0
|
||||
#define EDGE_TOP 1
|
||||
#define EDGE_LEFT 2
|
||||
#define EDGE_RIGHT 3
|
||||
|
||||
EAPI void *init (E_Module *m);
|
||||
EAPI int shutdown (E_Module *m);
|
||||
EAPI int save (E_Module *m);
|
||||
EAPI int info (E_Module *m);
|
||||
EAPI int about (E_Module *m);
|
||||
|
||||
#endif
|
Binary file not shown.
Loading…
Reference in New Issue