sams ladspa icons, add theme color to common icons
[goodguy/history.git] / cinelerra-5.1 / guicast / bctheme.h
index d36f1ca26ca02820b0f8340377cccc90b8e48b7a..40cebb0fd51ac95f6cba557240af2e395029eb66 100644 (file)
@@ -50,32 +50,32 @@ public:
                const char *up_path,
                const char *hi_path,
                const char *dn_path,
-               const char *title = 0);
+               const char *title);
        VFrame** new_button4(const char *overlay_path,
                const char *up_path,
                const char *hi_path,
                const char *dn_path,
                const char *disabled_path,
-               const char *title = 0);
+               const char *title);
        VFrame** new_button(const char *overlay_path,
                VFrame *up,
                VFrame *hi,
                VFrame *dn,
-               const char *title = 0);
+               const char *title);
        VFrame** new_toggle(const char *overlay_path,
                const char *up_path,
                const char *hi_path,
                const char *checked_path,
                const char *dn_path,
                const char *checkedhi_path,
-               const char *title = 0);
+               const char *title);
        VFrame** new_toggle(const char *overlay_path,
                VFrame *up,
                VFrame *hi,
                VFrame *checked,
                VFrame *dn,
                VFrame *checkedhi,
-               const char *title = 0);
+               const char *title);
 
 
 // The two main routines for creating images are new_image_set and new_image.
@@ -101,14 +101,11 @@ public:
        BC_ThemeSet* get_image_set_object(const char *title);
 
 // Loads compressed data into temporary
-       unsigned char* get_image_data(const char *title);
+       unsigned char* get_image_data(const char *title, int log_errs=1);
 
 // Verify all images have been used after initialization.
        void check_used();
 
-
-
-
        void dump();
        BC_Resources* get_resources();
 
@@ -123,13 +120,21 @@ private:
        ArrayList<BC_ThemeSet*> image_sets;
 
 // Compressed images are loaded in here.
-       char *data_ptr;
-       char *contents_ptr;
-       ArrayList<char*> contents;
-       ArrayList<unsigned char*> pointers;
-       ArrayList<int> used;
-       char *last_image;
-       unsigned char *last_pointer;
+       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;
+
+       ArrayList<image_item *> images;
+       ArrayList<int> data_items;
+
+       static int images_cmpr(const void *ap, const void *bp);
 };
 
 class BC_ThemeSet