/*
* 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
#include "arraylist.h"
#include "bcpixmap.inc"
-#include "colors.h"
+#include "bccolors.h"
#include "vframe.h"
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.
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) {
// 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;