kwo pushed a commit to branch master. http://git.enlightenment.org/legacy/imlib2_loaders.git/commit/?id=0f240318ce628988ec0779ee39853a475c767b52
commit 0f240318ce628988ec0779ee39853a475c767b52 Author: Kim Woelders <[email protected]> Date: Sat Feb 26 09:34:39 2022 +0100 Follow the imlib2 image flags refactoring --- src/modules/loaders/image.h | 29 ++++++++++------------------- src/modules/loaders/loader_eet.c | 7 ++----- src/modules/loaders/loader_xcf.c | 2 +- 3 files changed, 13 insertions(+), 25 deletions(-) diff --git a/src/modules/loaders/image.h b/src/modules/loaders/image.h index 393c37b..56a0bc0 100644 --- a/src/modules/loaders/image.h +++ b/src/modules/loaders/image.h @@ -17,14 +17,11 @@ typedef void *(*ImlibImageDataMemoryFunction)(void *, size_t size); enum _iflags { F_NONE = 0, F_HAS_ALPHA = (1 << 0), - F_UNLOADED = (1 << 1), - F_UNCACHEABLE = (1 << 2), - F_ALWAYS_CHECK_DISK = (1 << 3), - F_INVALID = (1 << 4), - F_DONT_FREE_DATA = (1 << 5), - F_FORMAT_IRRELEVANT = (1 << 6), - F_BORDER_IRRELEVANT = (1 << 7), - F_ALPHA_IRRELEVANT = (1 << 8) + F_UNCACHEABLE = (1 << 1), + F_ALWAYS_CHECK_DISK = (1 << 2), + F_INVALID = (1 << 3), + F_DONT_FREE_DATA = (1 << 4), + F_FORMAT_IRRELEVANT = (1 << 5), }; typedef enum _iflags ImlibImageFlags; @@ -132,17 +129,11 @@ void __imlib_SetCacheSize(int size); int __imlib_GetCacheSize(void); int __imlib_CurrentCacheSize(void); -#define IMAGE_HAS_ALPHA(im) ((im)->flags & F_HAS_ALPHA) -#define IMAGE_IS_UNLOADED(im) ((im)->flags & F_UNLOADED) -#define IMAGE_IS_UNCACHEABLE(im) ((im)->flags & F_UNCACHEABLE) -#define IMAGE_ALWAYS_CHECK_DISK(im) ((im)->flags & F_ALWAYS_CHECK_DISK) -#define IMAGE_IS_VALID(im) (!((im)->flags & F_INVALID)) -#define IMAGE_FREE_DATA(im) (!((im)->flags & F_DONT_FREE_DATA)) - -#define SET_FLAG(flags, f) ((flags) |= (f)) -#define UNSET_FLAG(flags, f) ((flags) &= (~f)) -#define UPDATE_FLAG(flags, f, set) \ - do { if (set) SET_FLAG(flags, f); else UNSET_FLAG(flags, f); } while(0) +#define IM_FLAG_SET(im, f) ((im)->flags |= (f)) +#define IM_FLAG_CLR(im, f) ((im)->flags &= ~(f)) +#define IM_FLAG_UPDATE(im, f, set) \ + do { if (set) IM_FLAG_SET(im, f); else IM_FLAG_CLR(im, f); } while(0) +#define IM_FLAG_ISSET(im, f) (((im)->flags & (f)) != 0) #define LOAD_BREAK 2 /* Break signaled by progress callback */ #define LOAD_SUCCESS 1 /* Image loaded successfully */ diff --git a/src/modules/loaders/loader_eet.c b/src/modules/loaders/loader_eet.c index ea7e62d..91bb330 100644 --- a/src/modules/loaders/loader_eet.c +++ b/src/modules/loaders/loader_eet.c @@ -119,10 +119,7 @@ load(ImlibImage * im, ImlibProgressFunction progress, } im->w = w; im->h = h; - if (alpha) - SET_FLAG(im->flags, F_HAS_ALPHA); - else - UNSET_FLAG(im->flags, F_HAS_ALPHA); + IM_FLAG_UPDATE(im, F_HAS_ALPHA, alpha); } if (((!im->data) && (im->loader)) || (immediate_load) || (progress)) { @@ -244,7 +241,7 @@ save(ImlibImage * im, ImlibProgressFunction progress, char progress_granularity) /* no image data? abort */ if (!im->data) return 0; - if (im->flags & F_HAS_ALPHA) + if (IM_FLAG_ISSET(im, F_HAS_ALPHA)) alpha = 1; if ((!im->file) || (!im->real_file)) return 0; diff --git a/src/modules/loaders/loader_xcf.c b/src/modules/loaders/loader_xcf.c index fbd1648..d6155b4 100644 --- a/src/modules/loaders/loader_xcf.c +++ b/src/modules/loaders/loader_xcf.c @@ -1578,7 +1578,7 @@ xcf_to_imlib(ImlibImage * im) { im->w = image->width; im->h = image->height; - SET_FLAG(im->flags, F_HAS_ALPHA); + IM_FLAG_SET(im, F_HAS_ALPHA); im->data = image->data; } --
