forked from enlightenment/efl
framework for imlib2 backend. - ne3ed at least another sample.....
SVN revision: 3033
This commit is contained in:
parent
6ebe6bf466
commit
c802275f05
|
@ -36,6 +36,7 @@ evas_events.c \
|
||||||
evas_gl_routines.c \
|
evas_gl_routines.c \
|
||||||
evas_gradient.c \
|
evas_gradient.c \
|
||||||
evas_image.c \
|
evas_image.c \
|
||||||
|
evas_imlib_routines.c \
|
||||||
evas_line.c \
|
evas_line.c \
|
||||||
evas_list.c \
|
evas_list.c \
|
||||||
evas_main.c \
|
evas_main.c \
|
||||||
|
@ -45,6 +46,7 @@ evas_rectangle.c \
|
||||||
evas_render.c \
|
evas_render.c \
|
||||||
evas_text.c \
|
evas_text.c \
|
||||||
evas_gl_routines.h \
|
evas_gl_routines.h \
|
||||||
|
evas_imlib_routines.h \
|
||||||
Evas.h
|
Evas.h
|
||||||
|
|
||||||
libevas_la_LIBADD = $(LIBS_ALL)
|
libevas_la_LIBADD = $(LIBS_ALL)
|
||||||
|
|
|
@ -17,6 +17,7 @@ static void __evas_gl_image_set_context_for_dest(Evas_GL_Image *im, Di
|
||||||
static Evas_GL_Image *__evas_gl_create_image(void);
|
static Evas_GL_Image *__evas_gl_create_image(void);
|
||||||
static Evas_GL_Image *__evas_gl_image_create_from_file(Display *disp, char *file);
|
static Evas_GL_Image *__evas_gl_image_create_from_file(Display *disp, char *file);
|
||||||
static void __evas_gl_image_destroy(Evas_GL_Image *im);
|
static void __evas_gl_image_destroy(Evas_GL_Image *im);
|
||||||
|
static void __evas_gl_image_cache_flush(Display *disp);
|
||||||
|
|
||||||
static XVisualInfo *__evas_vi = NULL;
|
static XVisualInfo *__evas_vi = NULL;
|
||||||
static GLXContext __evas_gl_cx = 0;
|
static GLXContext __evas_gl_cx = 0;
|
||||||
|
@ -336,7 +337,7 @@ __evas_gl_image_create_from_file(Display *disp, char *file)
|
||||||
__evas_gl_init(disp);
|
__evas_gl_init(disp);
|
||||||
im->context = __evas_gl_cx;
|
im->context = __evas_gl_cx;
|
||||||
im->buffer.display = disp;
|
im->buffer.display = disp;
|
||||||
im->buffer.colormap = __evas_gl_get_colormap(disp);
|
im->buffer.colormap = __evas_gl_get_colormap(disp, 0);
|
||||||
im->buffer.visual_info = __evas_vi;
|
im->buffer.visual_info = __evas_vi;
|
||||||
im->buffer.window = 0;
|
im->buffer.window = 0;
|
||||||
im->buffer.dest = 0;
|
im->buffer.dest = 0;
|
||||||
|
@ -361,6 +362,31 @@ __evas_gl_image_destroy(Evas_GL_Image *im)
|
||||||
free(im);
|
free(im);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
__evas_gl_image_cache_flush(Display *disp)
|
||||||
|
{
|
||||||
|
while (__evas_image_cache_used > __evas_image_cache_max)
|
||||||
|
{
|
||||||
|
Evas_GL_Image *im = NULL, *im_last;
|
||||||
|
Evas_List l;
|
||||||
|
|
||||||
|
im_last = NULL;
|
||||||
|
for (l = __evas_images; l; l = l->next)
|
||||||
|
{
|
||||||
|
im = l->data;
|
||||||
|
|
||||||
|
if (im->references <= 0)
|
||||||
|
im_last = im;
|
||||||
|
}
|
||||||
|
if (im_last)
|
||||||
|
{
|
||||||
|
__evas_images = evas_list_remove(__evas_images, im_last);
|
||||||
|
__evas_gl_image_destroy(im_last);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
disp = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/* image externals ***********************************************************/
|
/* image externals ***********************************************************/
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
@ -453,31 +479,6 @@ __evas_gl_image_free(Evas_GL_Image *im)
|
||||||
__evas_gl_image_cache_flush(im->buffer.display);
|
__evas_gl_image_cache_flush(im->buffer.display);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
__evas_gl_image_cache_flush(Display *disp)
|
|
||||||
{
|
|
||||||
while (__evas_image_cache_used > __evas_image_cache_max)
|
|
||||||
{
|
|
||||||
Evas_GL_Image *im = NULL, *im_last;
|
|
||||||
Evas_List l;
|
|
||||||
|
|
||||||
im_last = NULL;
|
|
||||||
for (l = __evas_images; l; l = l->next)
|
|
||||||
{
|
|
||||||
im = l->data;
|
|
||||||
|
|
||||||
if (im->references <= 0)
|
|
||||||
im_last = im;
|
|
||||||
}
|
|
||||||
if (im_last)
|
|
||||||
{
|
|
||||||
__evas_images = evas_list_remove(__evas_images, im_last);
|
|
||||||
__evas_gl_image_destroy(im_last);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
disp = NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
__evas_gl_image_cache_empty(Display *disp)
|
__evas_gl_image_cache_empty(Display *disp)
|
||||||
{
|
{
|
||||||
|
@ -559,7 +560,7 @@ __evas_gl_image_cache_get_size(Display *disp)
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
Evas_GL_Font *
|
Evas_GL_Font *
|
||||||
__evas_gl_text_font_load(Display *disp, char *font, int size)
|
__evas_gl_text_font_new(Display *disp, char *font, int size)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -583,6 +584,21 @@ __evas_gl_text_font_list_paths(int *count)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
__evas_gl_text_cache_empty(Display *disp)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
__evas_gl_text_cache_set_size(Display *disp, int size)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
__evas_gl_text_cache_get_size(Display *disp)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
__evas_gl_text_draw(Evas_GL_Font *fn, Display *disp, Window win, int x, int y,
|
__evas_gl_text_draw(Evas_GL_Font *fn, Display *disp, Window win, int x, int y,
|
||||||
char *text, int r, int g, int b, int a)
|
char *text, int r, int g, int b, int a)
|
||||||
|
@ -649,36 +665,36 @@ __evas_gl_capable(Display *disp)
|
||||||
}
|
}
|
||||||
|
|
||||||
Visual *
|
Visual *
|
||||||
__evas_gl_get_visual(Display *disp)
|
__evas_gl_get_visual(Display *disp, int screen)
|
||||||
{
|
{
|
||||||
static Display *d = NULL;
|
static Display *d = NULL;
|
||||||
|
|
||||||
if (d != disp)
|
if (d != disp)
|
||||||
{
|
{
|
||||||
d = disp;
|
d = disp;
|
||||||
__evas_vi = glXChooseVisual(disp, DefaultScreen(disp), __evas_gl_configuration);
|
__evas_vi = glXChooseVisual(disp, screen, __evas_gl_configuration);
|
||||||
}
|
}
|
||||||
return __evas_vi->visual;
|
return __evas_vi->visual;
|
||||||
}
|
}
|
||||||
|
|
||||||
XVisualInfo *
|
XVisualInfo *
|
||||||
__evas_gl_get_visual_info(Display *disp)
|
__evas_gl_get_visual_info(Display *disp, int screen)
|
||||||
{
|
{
|
||||||
__evas_gl_get_visual(disp);
|
__evas_gl_get_visual(disp, screen);
|
||||||
return __evas_vi;
|
return __evas_vi;
|
||||||
}
|
}
|
||||||
|
|
||||||
Colormap
|
Colormap
|
||||||
__evas_gl_get_colormap(Display *disp)
|
__evas_gl_get_colormap(Display *disp, int screen)
|
||||||
{
|
{
|
||||||
static Display *d = NULL;
|
static Display *d = NULL;
|
||||||
static Colormap cmap = 0;
|
static Colormap cmap = 0;
|
||||||
|
|
||||||
if (!__evas_vi) __evas_gl_get_visual(disp);
|
if (!__evas_vi) __evas_gl_get_visual(disp, screen);
|
||||||
if (d != disp)
|
if (d != disp)
|
||||||
{
|
{
|
||||||
d = disp;
|
d = disp;
|
||||||
cmap = XCreateColormap(disp, RootWindow(disp, DefaultScreen(disp)), __evas_vi->visual, 0);
|
cmap = XCreateColormap(disp, RootWindow(disp, screen), __evas_vi->visual, 0);
|
||||||
}
|
}
|
||||||
return cmap;
|
return cmap;
|
||||||
}
|
}
|
||||||
|
@ -689,7 +705,7 @@ __evas_gl_init(Display *disp)
|
||||||
if (__evas_gl_cx) return;
|
if (__evas_gl_cx) return;
|
||||||
|
|
||||||
if (!__evas_gl_capable(disp)) return;
|
if (!__evas_gl_capable(disp)) return;
|
||||||
__evas_gl_get_visual(disp);
|
__evas_gl_get_visual(disp, 0);
|
||||||
/* direct rendering client */
|
/* direct rendering client */
|
||||||
__evas_gl_cx = glXCreateContext(disp, __evas_vi, NULL, GL_TRUE);
|
__evas_gl_cx = glXCreateContext(disp, __evas_vi, NULL, GL_TRUE);
|
||||||
/* GLX indirect */
|
/* GLX indirect */
|
||||||
|
|
|
@ -12,7 +12,6 @@
|
||||||
#include <X11/Xlib.h>
|
#include <X11/Xlib.h>
|
||||||
#include <X11/Xatom.h>
|
#include <X11/Xatom.h>
|
||||||
#include <X11/Xmu/StdCmap.h>
|
#include <X11/Xmu/StdCmap.h>
|
||||||
#include <X11/keysym.h>
|
|
||||||
|
|
||||||
#include "Evas.h"
|
#include "Evas.h"
|
||||||
|
|
||||||
|
@ -78,7 +77,6 @@ struct _evas_gl_font
|
||||||
/***************/
|
/***************/
|
||||||
Evas_GL_Image *__evas_gl_image_new_from_file(Display *disp, char *file);
|
Evas_GL_Image *__evas_gl_image_new_from_file(Display *disp, char *file);
|
||||||
void __evas_gl_image_free(Evas_GL_Image *im);
|
void __evas_gl_image_free(Evas_GL_Image *im);
|
||||||
void __evas_gl_image_cache_flush(Display *disp);
|
|
||||||
void __evas_gl_image_cache_empty(Display *disp);
|
void __evas_gl_image_cache_empty(Display *disp);
|
||||||
void __evas_gl_image_cache_set_size(Display *disp, int size);
|
void __evas_gl_image_cache_set_size(Display *disp, int size);
|
||||||
int __evas_gl_image_cache_get_size(Display *disp);
|
int __evas_gl_image_cache_get_size(Display *disp);
|
||||||
|
@ -87,11 +85,14 @@ void __evas_gl_image_draw(Evas_GL_Image *im, Display *disp, Window w,
|
||||||
/********/
|
/********/
|
||||||
/* text */
|
/* text */
|
||||||
/********/
|
/********/
|
||||||
Evas_GL_Font *__evas_gl_text_font_load(Display *disp, char *font, int size);
|
Evas_GL_Font *__evas_gl_text_font_new(Display *disp, char *font, int size);
|
||||||
void __evas_gl_text_font_free(Evas_GL_Font *fn);
|
void __evas_gl_text_font_free(Evas_GL_Font *fn);
|
||||||
void __evas_gl_text_font_add_path(char *path);
|
void __evas_gl_text_font_add_path(char *path);
|
||||||
void __evas_gl_text_font_del_path(char *path);
|
void __evas_gl_text_font_del_path(char *path);
|
||||||
char **__evas_gl_text_font_list_paths(int *count);
|
char **__evas_gl_text_font_list_paths(int *count);
|
||||||
|
void __evas_gl_text_cache_empty(Display *disp);
|
||||||
|
void __evas_gl_text_cache_set_size(Display *disp, int size);
|
||||||
|
int __evas_gl_text_cache_get_size(Display *disp);
|
||||||
void __evas_gl_text_draw(Evas_GL_Font *fn, Display *disp, Window win, int x, int y, char *text, int r, int g, int b, int a);
|
void __evas_gl_text_draw(Evas_GL_Font *fn, Display *disp, Window win, int x, int y, char *text, int r, int g, int b, int a);
|
||||||
|
|
||||||
/**************/
|
/**************/
|
||||||
|
@ -113,7 +114,7 @@ void __evas_gl_init(Display *disp);
|
||||||
int __evas_gl_capable(Display *disp);
|
int __evas_gl_capable(Display *disp);
|
||||||
void __evas_gl_flush_draw(Display *disp, Window win);
|
void __evas_gl_flush_draw(Display *disp, Window win);
|
||||||
void __evas_gl_sync(Display *disp);
|
void __evas_gl_sync(Display *disp);
|
||||||
Visual *__evas_gl_get_visual(Display *disp);
|
Visual *__evas_gl_get_visual(Display *disp, int screen);
|
||||||
XVisualInfo *__evas_gl_get_visual_info(Display *disp);
|
XVisualInfo *__evas_gl_get_visual_info(Display *disp, int screen);
|
||||||
Colormap __evas_gl_get_colormap(Display *disp);
|
Colormap __evas_gl_get_colormap(Display *disp, int screen);
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,255 @@
|
||||||
|
#include "evas_imlib_routines.h"
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/* image internals ***********************************************************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/* image externals ***********************************************************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
Evas_Imlib_Image *
|
||||||
|
__evas_imlib_image_new_from_file(Display *disp, char *file)
|
||||||
|
{
|
||||||
|
return (Evas_Imlib_Image *)imlib_load_image(file);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
__evas_imlib_image_free(Evas_Imlib_Image *im)
|
||||||
|
{
|
||||||
|
imlib_context_set_image((Imlib_Image)im);
|
||||||
|
imlib_free_image();
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
__evas_imlib_image_cache_flush(Display *disp)
|
||||||
|
{
|
||||||
|
int size;
|
||||||
|
|
||||||
|
size = imlib_get_cache_size();
|
||||||
|
imlib_set_cache_size(0);
|
||||||
|
imlib_set_cache_size(size);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
__evas_imlib_image_cache_empty(Display *disp)
|
||||||
|
{
|
||||||
|
int size;
|
||||||
|
|
||||||
|
size = imlib_get_cache_size();
|
||||||
|
imlib_set_cache_size(0);
|
||||||
|
imlib_set_cache_size(size);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
__evas_imlib_image_cache_set_size(Display *disp, int size)
|
||||||
|
{
|
||||||
|
imlib_set_cache_size(size);
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
__evas_imlib_image_cache_get_size(Display *disp)
|
||||||
|
{
|
||||||
|
return imlib_get_cache_size();
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
__evas_imlib_image_draw(Evas_Imlib_Image *im,
|
||||||
|
Display *disp, Window w, int win_w, int win_h,
|
||||||
|
int src_x, int src_y, int src_w, int src_h,
|
||||||
|
int dst_x, int dst_y, int dst_w, int dst_h)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/* font internals ************************************************************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/* font externals ************************************************************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
Evas_Imlib_Font *
|
||||||
|
__evas_imlib_text_font_new(Display *disp, char *font, int size)
|
||||||
|
{
|
||||||
|
char buf[4096];
|
||||||
|
|
||||||
|
sprintf(buf, "%s/%i", font, size);
|
||||||
|
return (Evas_Imlib_Font *)imlib_load_font(buf);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
__evas_imlib_text_font_free(Evas_Imlib_Font *fn)
|
||||||
|
{
|
||||||
|
imlib_context_set_font((Imlib_Font)fn);
|
||||||
|
imlib_free_font();
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
__evas_imlib_text_font_add_path(char *path)
|
||||||
|
{
|
||||||
|
imlib_add_path_to_font_path(path);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
__evas_imlib_text_font_del_path(char *path)
|
||||||
|
{
|
||||||
|
imlib_remove_path_from_font_path(path);
|
||||||
|
}
|
||||||
|
|
||||||
|
char **
|
||||||
|
__evas_imlib_text_font_list_paths(int *count)
|
||||||
|
{
|
||||||
|
return imlib_list_font_path(count);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
__evas_imlib_text_cache_empty(Display *disp)
|
||||||
|
{
|
||||||
|
int size;
|
||||||
|
|
||||||
|
size = imlib_get_font_cache_size();
|
||||||
|
imlib_set_font_cache_size(0);
|
||||||
|
imlib_set_font_cache_size(size);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
__evas_imlib_text_cache_set_size(Display *disp, int size)
|
||||||
|
{
|
||||||
|
imlib_set_font_cache_size(size);
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
__evas_imlib_text_cache_get_size(Display *disp)
|
||||||
|
{
|
||||||
|
return imlib_get_font_cache_size();
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
__evas_imlib_text_draw(Evas_Imlib_Font *fn, Display *disp, Window win, int x, int y,
|
||||||
|
char *text, int r, int g, int b, int a)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/* general externals *********************************************************/
|
||||||
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
void
|
||||||
|
__evas_imlib_sync(Display *disp)
|
||||||
|
{
|
||||||
|
XSync(disp, False);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
__evas_imlib_flush_draw(Display *disp, Window win)
|
||||||
|
{
|
||||||
|
imlib_context_set_display(disp);
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
__evas_imlib_capable(Display *disp)
|
||||||
|
{
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
Visual *
|
||||||
|
__evas_imlib_get_visual(Display *disp, int screen)
|
||||||
|
{
|
||||||
|
int depth;
|
||||||
|
return imlib_get_best_visual(disp, screen, &depth);
|
||||||
|
}
|
||||||
|
|
||||||
|
XVisualInfo *
|
||||||
|
__evas_imlib_get_visual_info(Display *disp, int screen)
|
||||||
|
{
|
||||||
|
static XVisualInfo *vi = NULL;
|
||||||
|
XVisualInfo vi_template;
|
||||||
|
int n;
|
||||||
|
|
||||||
|
if (vi) return vi;
|
||||||
|
vi_template.visualid = (__evas_imlib_get_visual(disp, screen))->visualid;
|
||||||
|
vi_template.screen = screen;
|
||||||
|
vi = XGetVisualInfo(disp, VisualIDMask | VisualScreenMask, &vi_template ,&n);
|
||||||
|
return vi;
|
||||||
|
}
|
||||||
|
|
||||||
|
Colormap
|
||||||
|
__evas_imlib_get_colormap(Display *disp, int screen)
|
||||||
|
{
|
||||||
|
return DefaultColormap(disp, screen);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
__evas_imlib_init(Display *disp)
|
||||||
|
{
|
||||||
|
imlib_context_set_display(disp);
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,66 @@
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <math.h>
|
||||||
|
#include <sys/time.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
|
||||||
|
#include <X11/X.h>
|
||||||
|
#include <X11/Xlib.h>
|
||||||
|
#include <X11/Xatom.h>
|
||||||
|
#include <X11/Xutil.h>
|
||||||
|
|
||||||
|
#include "Evas.h"
|
||||||
|
|
||||||
|
#include <Imlib2.h>
|
||||||
|
|
||||||
|
typedef void Evas_Imlib_Image;
|
||||||
|
typedef void Evas_Imlib_Font;
|
||||||
|
|
||||||
|
/***************/
|
||||||
|
/* image stuff */
|
||||||
|
/***************/
|
||||||
|
Evas_Imlib_Image *__evas_imlib_image_new_from_file(Display *disp, char *file);
|
||||||
|
void __evas_imlib_image_free(Evas_Imlib_Image *im);
|
||||||
|
void __evas_imlib_image_cache_empty(Display *disp);
|
||||||
|
void __evas_imlib_image_cache_set_size(Display *disp, int size);
|
||||||
|
int __evas_imlib_image_cache_get_size(Display *disp);
|
||||||
|
void __evas_imlib_image_draw(Evas_Imlib_Image *im, Display *disp, Window w, int win_w, int win_h, int src_x, int src_y, int src_w, int src_h, int dst_x, int dst_y, int dst_w, int dst_h);
|
||||||
|
|
||||||
|
/********/
|
||||||
|
/* text */
|
||||||
|
/********/
|
||||||
|
Evas_Imlib_Font *__evas_imlib_text_font_new(Display *disp, char *font, int size);
|
||||||
|
void __evas_imlib_text_font_free(Evas_Imlib_Font *fn);
|
||||||
|
void __evas_imlib_text_font_add_path(char *path);
|
||||||
|
void __evas_imlib_text_font_del_path(char *path);
|
||||||
|
char **__evas_imlib_text_font_list_paths(int *count);
|
||||||
|
void __evas_imlib_text_cache_empty(Display *disp);
|
||||||
|
void __evas_imlib_text_cache_set_size(Display *disp, int size);
|
||||||
|
int __evas_imlib_text_cache_get_size(Display *disp);
|
||||||
|
void __evas_imlib_text_draw(Evas_Imlib_Font *fn, Display *disp, Window win, int x, int y, char *text, int r, int g, int b, int a);
|
||||||
|
|
||||||
|
/**************/
|
||||||
|
/* rectangles */
|
||||||
|
/**************/
|
||||||
|
|
||||||
|
/*********/
|
||||||
|
/* lines */
|
||||||
|
/*********/
|
||||||
|
|
||||||
|
/*************/
|
||||||
|
/* gradients */
|
||||||
|
/*************/
|
||||||
|
|
||||||
|
/***********/
|
||||||
|
/* drawing */
|
||||||
|
/***********/
|
||||||
|
void __evas_imlib_init(Display *disp);
|
||||||
|
int __evas_imlib_capable(Display *disp);
|
||||||
|
void __evas_imlib_flush_draw(Display *disp, Window win);
|
||||||
|
void __evas_imlib_sync(Display *disp);
|
||||||
|
Visual *__evas_imlib_get_visual(Display *disp, int screen);
|
||||||
|
XVisualInfo *__evas_imlib_get_visual_info(Display *disp, int screen);
|
||||||
|
Colormap __evas_imlib_get_colormap(Display *disp, int screen);
|
||||||
|
|
|
@ -24,8 +24,8 @@ main(int argc, char **argv)
|
||||||
|
|
||||||
d = XOpenDisplay(NULL);
|
d = XOpenDisplay(NULL);
|
||||||
__evas_gl_init(d);
|
__evas_gl_init(d);
|
||||||
vis = __evas_gl_get_visual(d);
|
vis = __evas_gl_get_visual(d, DefaultScreen(d));
|
||||||
cmap = __evas_gl_get_colormap(d);
|
cmap = __evas_gl_get_colormap(d, DefaultScreen(d));
|
||||||
|
|
||||||
win_w = 640; win_h = 480;
|
win_w = 640; win_h = 480;
|
||||||
{
|
{
|
||||||
|
@ -38,7 +38,7 @@ main(int argc, char **argv)
|
||||||
win = XCreateWindow(d,
|
win = XCreateWindow(d,
|
||||||
RootWindow(d, DefaultScreen(d)),
|
RootWindow(d, DefaultScreen(d)),
|
||||||
0, 0, win_w, win_h, 0,
|
0, 0, win_w, win_h, 0,
|
||||||
(__evas_gl_get_visual_info(d))->depth,
|
(__evas_gl_get_visual_info(d, DefaultScreen(d)))->depth,
|
||||||
InputOutput,
|
InputOutput,
|
||||||
vis,
|
vis,
|
||||||
CWColormap | CWBorderPixel | CWEventMask,
|
CWColormap | CWBorderPixel | CWEventMask,
|
||||||
|
|
Loading…
Reference in New Issue