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:
handyande 2005-01-11 22:21:09 +00:00 committed by handyande
parent 344748abb2
commit a2035e9d2a
6 changed files with 2037 additions and 0 deletions

View File

@ -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

View File

@ -2,6 +2,7 @@ MAINTAINERCLEANFILES = Makefile.in
SUBDIRS = \
test \
ibar \
ibox \
dropshadow \
clock \
pager \

View File

@ -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

View File

@ -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.