Merge CV, ver=5.1; ops/methods from HV, and interface from CV where possible
[goodguy/history.git] / cinelerra-5.0 / guicast / bclistboxitem.C
diff --git a/cinelerra-5.0/guicast/bclistboxitem.C b/cinelerra-5.0/guicast/bclistboxitem.C
deleted file mode 100644 (file)
index 0b0987d..0000000
+++ /dev/null
@@ -1,160 +0,0 @@
-
-/*
- * 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
- * 
- */
-
-#include "bclistboxitem.h"
-#include "bcpixmap.h"
-#include "bcresources.h"
-#include "bcwindowbase.h"
-
-#include <string.h>
-
-
-// ====================================================== item
-
-BC_ListBoxItem::BC_ListBoxItem()
-{
-       initialize();
-
-       color = BC_WindowBase::get_resources()->listbox_text;
-       this->text = new char[1];
-       text[0] = 0;
-       selectable = 1;
-}
-
-BC_ListBoxItem::BC_ListBoxItem(const char *text, 
-       BC_Pixmap *icon, 
-       int color)
-{
-       initialize();
-
-       if(color == -1) color = BC_WindowBase::get_resources()->listbox_text;
-       this->text = new char[strlen(text) + 1];
-       this->icon = icon;
-
-       strcpy(this->text, text);
-       this->color = color;
-       selectable = 1;
-}
-
-BC_ListBoxItem::BC_ListBoxItem(const char *text, int color)
-{
-       initialize();
-
-       if(color == -1) color = BC_WindowBase::get_resources()->listbox_text;
-       this->text = new char[strlen(text) + 1];
-       strcpy(this->text, text);
-       this->color = color;
-       selectable = 1;
-}
-
-BC_ListBoxItem::~BC_ListBoxItem()
-{
-       if(text) delete [] text;
-       if(sublist)
-       {
-               for(int i = 0; i < columns; i++)
-                       sublist[i].remove_all_objects();
-               delete sublist;
-       }
-}
-
-int BC_ListBoxItem::initialize()
-{
-       autoplace_icon = 1;
-       autoplace_text = 1;
-       text = 0;
-       color = BLACK;
-       selected = 0;
-       icon = 0;
-       icon_vframe = 0;
-       text_x = text_y = -1;
-       text_w = text_h = -1;
-       baseline = -1;
-       icon_x = -1;
-       icon_y = -1;
-       searchable = 1;
-       in_view = -1;
-       sublist = 0;
-       columns = 0;
-       expand = 0;
-       return 0;
-}
-
-int BC_ListBoxItem::get_icon_w() { return !icon ? 0 : icon->get_w(); }
-int BC_ListBoxItem::get_icon_h() { return !icon ? 0 : icon->get_h(); }
-
-BC_Pixmap* BC_ListBoxItem::get_icon()
-{
-       return icon;
-}
-
-
-void BC_ListBoxItem::set_text(const char *new_text)
-{
-       if(this->text) delete [] this->text;
-
-       if(new_text) {
-               text = new char[strlen(new_text) + 1];
-               strcpy(this->text, new_text);
-       }
-       else
-               text = 0;
-       text_w = text_h = -1;
-       baseline = -1;
-}
-
-void BC_ListBoxItem::copy_from(BC_ListBoxItem *item)
-{
-       if(item->text) set_text(item->text);
-       color = item->color;
-       text_x = item->text_x;  text_y = item->text_y;
-       text_w = item->text_w;  text_h = item->text_h;
-       baseline = item->baseline;  in_view = -1;
-       icon_x = item->icon_x;
-       icon_y = item->icon_y;
-       selectable = item->selectable;
-       columns = item->columns;
-       if(item->sublist)
-       {
-               sublist = new ArrayList<BC_ListBoxItem*>[columns];
-               for(int i = 0; i < columns; i++)
-               {
-                       ArrayList<BC_ListBoxItem*> *list = &item->get_sublist()[i];
-
-                       for(int j = 0; j < list->total; j++)
-                       {
-                               BC_ListBoxItem *new_item = new BC_ListBoxItem;
-                               BC_ListBoxItem *old_item = list->values[j];
-                               sublist[i].append(new_item);
-                               new_item->copy_from(old_item);
-                       }
-               }
-       }
-}
-
-ArrayList<BC_ListBoxItem*>* BC_ListBoxItem::new_sublist(int columns)
-{
-       sublist = new ArrayList<BC_ListBoxItem*>[columns];
-       this->columns = columns;
-       return sublist;
-}
-
-