X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fguicast%2Fbctheme.h;h=c9addd3c9d918bda1ff7de2adcc9a4e6ef994538;hb=HEAD;hp=2db0a75e61408f19ccf6936f231f48146923ddcf;hpb=38cb4182e11e57fc426bede3825e825e9d61433b;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/guicast/bctheme.h b/cinelerra-5.1/guicast/bctheme.h index 2db0a75e..c9addd3c 100644 --- a/cinelerra-5.1/guicast/bctheme.h +++ b/cinelerra-5.1/guicast/bctheme.h @@ -29,8 +29,18 @@ #include class BC_ThemeSet; +class BC_ImageData; +class BC_ImageData { +public: + char *name; + unsigned char *data; + int used; + BC_ImageData(char *nm, unsigned char *dp) { + name = nm; data = dp; used = 0; + } +}; class BC_Theme @@ -105,6 +115,7 @@ public: // Verify all images have been used after initialization. void check_used(); + void sort_image_sets(); void dump(); BC_Resources* get_resources(); @@ -118,21 +129,15 @@ private: // Decompressed image storage. // Sets of images. ArrayList image_sets; + BC_ThemeSet *last_image_set; + int image_sets_start; + static int image_set_cmpr(const void *ap, const void *bp); + void add_image_set(BC_ThemeSet *image_set); // Compressed images are loaded in here. - class image_item { - public: - char *name; - unsigned char *data; - int used; - - image_item(char *nm, unsigned char *dp) { - name = nm; data = dp; used = 0; - } - } *last_image; - int images_dirty; - ArrayList images; - + ArrayList data_items; + ArrayList images; + BC_ImageData *last_image_data; static int images_cmpr(const void *ap, const void *bp); };