prev/next label fix in viewer, inout highlight, modify folder layout, ffmpeg scan...
[goodguy/history.git] / cinelerra-5.1 / guicast / bclistboxitem.h
index 6dac9e265cfb0a5c280f1cbb2f01a59b58573b4c..78db9d663e68f8b4f9afe838baf4c24eef54f90c 100644 (file)
@@ -2,21 +2,21 @@
 /*
  * CINELERRA
  * Copyright (C) 2008 Adam Williams <broadcast at earthling dot net>
- * 
+ *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation; either version 2 of the License, or
  * (at your option) any later version.
- * 
+ *
  * This program is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
- * 
+ *
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- * 
+ *
  */
 
 #ifndef BCLISTBOXITEM_H
@@ -24,7 +24,7 @@
 
 #include "arraylist.h"
 #include "bcpixmap.inc"
-#include "colors.h"
+#include "bccolors.h"
 #include "vframe.h"
 
 
@@ -35,12 +35,12 @@ class BC_ListBoxItem
 public:
        BC_ListBoxItem();
 // New items
-       BC_ListBoxItem(const char *text, 
+       BC_ListBoxItem(const char *text,
                int color = -1);
-       BC_ListBoxItem(const char *text, 
-               BC_Pixmap *icon, 
+       BC_ListBoxItem(const char *text,
+               BC_Pixmap *icon,
                int color = -1);
-       
+
 
 
 // autoplace is always 1 in initialization.
@@ -81,6 +81,7 @@ public:
        void set_icon_vframe(VFrame *p) { icon_vframe = p; }
        void set_color(int v) { color = v; }
        int get_color() { return color; }
+       virtual VFrame *get_vicon_frame() { return 0; }
 
        void copy_from(BC_ListBoxItem *item);
        BC_ListBoxItem& operator=(BC_ListBoxItem& item) {
@@ -99,10 +100,13 @@ public:
 // Return if it's expanded
        int get_expand() { return expand; }
        void set_expand(int value) { expand = value; }
+// alpha sort on text
+       static void sort_items(ArrayList<BC_ListBoxItem*> &items);
 
 private:
        int initialize();
        void set_in_view(int v) { in_view = v; }
+       static int compare_item_text(const void *a, const void *b);
 
        BC_Pixmap *icon;
        VFrame *icon_vframe;