From 3d5faf45a6c261bb3e9973b42cf682415a1fde2e Mon Sep 17 00:00:00 2001 From: Good Guy Date: Thu, 20 Jun 2019 16:54:10 -0600 Subject: [PATCH 1/1] hard edges rework, add hard edge in gwdw, config.ac nv/cuda tweaks, message log warn mods, shell onexit options --- cinelerra-5.1/cinelerra/autoconf.C | 15 +++-- cinelerra-5.1/cinelerra/autoconf.h | 1 + cinelerra-5.1/cinelerra/automation.inc | 1 + cinelerra-5.1/cinelerra/edits.C | 21 +++++-- cinelerra-5.1/cinelerra/gwindowgui.C | 32 +++++++--- cinelerra-5.1/cinelerra/gwindowgui.h | 3 +- cinelerra-5.1/cinelerra/mainerror.C | 4 +- cinelerra-5.1/cinelerra/performanceprefs.C | 11 +++- cinelerra-5.1/cinelerra/shbtnprefs.C | 58 ++++++++++++++---- cinelerra-5.1/cinelerra/shbtnprefs.h | 16 ++++- cinelerra-5.1/cinelerra/shbtnprefs.inc | 1 + cinelerra-5.1/cinelerra/theme.C | 1 + cinelerra-5.1/cinelerra/theme.h | 1 + cinelerra-5.1/cinelerra/trackcanvas.C | 2 + cinelerra-5.1/configure.ac | 3 +- cinelerra-5.1/guicast/bctextbox.C | 5 ++ cinelerra-5.1/guicast/bctextbox.h | 1 + .../plugins/theme_blond/blondtheme.C | 2 + .../plugins/theme_blond/data/hardedge.png | Bin 0 -> 3412 bytes .../plugins/theme_blond_cv/blondcvtheme.C | 2 + .../plugins/theme_blond_cv/data/hardedge.png | Bin 0 -> 3412 bytes cinelerra-5.1/plugins/theme_blue/bluetheme.C | 2 + .../plugins/theme_blue/data/hardedge.png | Bin 0 -> 3412 bytes .../plugins/theme_blue_dot/bluedottheme.C | 2 + .../plugins/theme_blue_dot/data/hardedge.png | Bin 0 -> 3412 bytes .../plugins/theme_bright/brighttheme.C | 2 + .../plugins/theme_bright/data/hardedge.png | Bin 0 -> 3412 bytes .../plugins/theme_cakewalk/cakewalk.C | 2 + .../plugins/theme_cakewalk/data/hardedge.png | Bin 0 -> 3412 bytes .../plugins/theme_hulk/data/hardedge.png | Bin 0 -> 3412 bytes cinelerra-5.1/plugins/theme_hulk/hulktheme.C | 2 + .../plugins/theme_neophyte/data/hardedge.png | Bin 0 -> 3412 bytes .../plugins/theme_neophyte/neophyte.C | 2 + .../plugins/theme_pinklady/data/hardedge.png | Bin 0 -> 3412 bytes .../plugins/theme_pinklady/pinkladytheme.C | 2 + .../plugins/theme_suv/data/hardedge.png | Bin 0 -> 3412 bytes cinelerra-5.1/plugins/theme_suv/suv.C | 2 + .../plugins/theme_unflat/data/hardedge.png | Bin 0 -> 3412 bytes .../plugins/theme_unflat/unflattheme.C | 2 + 39 files changed, 162 insertions(+), 36 deletions(-) create mode 100644 cinelerra-5.1/plugins/theme_blond/data/hardedge.png create mode 100644 cinelerra-5.1/plugins/theme_blond_cv/data/hardedge.png create mode 100644 cinelerra-5.1/plugins/theme_blue/data/hardedge.png create mode 100644 cinelerra-5.1/plugins/theme_blue_dot/data/hardedge.png create mode 100644 cinelerra-5.1/plugins/theme_bright/data/hardedge.png create mode 100644 cinelerra-5.1/plugins/theme_cakewalk/data/hardedge.png create mode 100644 cinelerra-5.1/plugins/theme_hulk/data/hardedge.png create mode 100644 cinelerra-5.1/plugins/theme_neophyte/data/hardedge.png create mode 100644 cinelerra-5.1/plugins/theme_pinklady/data/hardedge.png create mode 100644 cinelerra-5.1/plugins/theme_suv/data/hardedge.png create mode 100644 cinelerra-5.1/plugins/theme_unflat/data/hardedge.png diff --git a/cinelerra-5.1/cinelerra/autoconf.C b/cinelerra-5.1/cinelerra/autoconf.C index 6b5e8d7c..b434d990 100644 --- a/cinelerra-5.1/cinelerra/autoconf.C +++ b/cinelerra-5.1/cinelerra/autoconf.C @@ -64,6 +64,7 @@ int AutoConf::load_defaults(BC_Hash* defaults) } transitions = defaults->get("SHOW_TRANSITIONS", 1); plugins = defaults->get("SHOW_PLUGINS", 1); + hard_edges = defaults->get("SHOW_HARD_EDGES", 1); return 0; } @@ -75,6 +76,7 @@ void AutoConf::load_xml(FileXML *file) } transitions = file->tag.get_property("SHOW_TRANSITIONS", 1); plugins = file->tag.get_property("SHOW_PLUGINS", 1); + hard_edges = file->tag.get_property("SHOW_HARD_EDGES", 1); } int AutoConf::save_defaults(BC_Hash* defaults) @@ -85,27 +87,28 @@ int AutoConf::save_defaults(BC_Hash* defaults) } defaults->update("SHOW_TRANSITIONS", transitions); defaults->update("SHOW_PLUGINS", plugins); + defaults->update("SHOW_HARD_EDGES", hard_edges); return 0; } void AutoConf::save_xml(FileXML *file) { - for(int i = 0; i < AUTOMATION_TOTAL; i++) - { + for(int i = 0; i < AUTOMATION_TOTAL; i++) { file->tag.set_property(xml_titles[i], autos[i]); } file->tag.set_property("SHOW_TRANSITIONS", transitions); file->tag.set_property("SHOW_PLUGINS", plugins); + file->tag.set_property("SHOW_HARD_EDGES", hard_edges); } int AutoConf::set_all(int value) { - for(int i = 0; i < AUTOMATION_TOTAL; i++) - { + for(int i = 0; i < AUTOMATION_TOTAL; i++) { autos[i] = value; } transitions = value; plugins = value; + hard_edges = value; return 0; } @@ -117,12 +120,12 @@ AutoConf& AutoConf::operator=(AutoConf &that) void AutoConf::copy_from(AutoConf *src) { - for(int i = 0; i < AUTOMATION_TOTAL; i++) - { + for(int i = 0; i < AUTOMATION_TOTAL; i++) { autos[i] = src->autos[i]; } transitions = src->transitions; plugins = src->plugins; + hard_edges = src->hard_edges; } diff --git a/cinelerra-5.1/cinelerra/autoconf.h b/cinelerra-5.1/cinelerra/autoconf.h index e5f38341..2395a191 100644 --- a/cinelerra-5.1/cinelerra/autoconf.h +++ b/cinelerra-5.1/cinelerra/autoconf.h @@ -51,6 +51,7 @@ public: // Other viewable things int transitions; int plugins; + int hard_edges; }; #endif diff --git a/cinelerra-5.1/cinelerra/automation.inc b/cinelerra-5.1/cinelerra/automation.inc index 98ba2b00..f573c3ec 100644 --- a/cinelerra-5.1/cinelerra/automation.inc +++ b/cinelerra-5.1/cinelerra/automation.inc @@ -54,6 +54,7 @@ enum NON_AUTOMATION_TITLES, NON_AUTOMATION_TRANSITIONS, NON_AUTOMATION_PLUGIN_AUTOS, + NON_AUTOMATION_HARD_EDGES, NON_AUTOMATION_TOTAL }; diff --git a/cinelerra-5.1/cinelerra/edits.C b/cinelerra-5.1/cinelerra/edits.C index ae7ab0c7..74bd4164 100644 --- a/cinelerra-5.1/cinelerra/edits.C +++ b/cinelerra-5.1/cinelerra/edits.C @@ -223,9 +223,7 @@ Edit* Edits::insert_new_edit(int64_t position) //printf("Edits::insert_new_edit 1\n"); Edit *new_edit = create_edit(); - if( current ) new_edit->hard_right = current->hard_left; if( current ) current = PREVIOUS; - if( current ) new_edit->hard_left = current->hard_right; //printf("Edits::insert_new_edit 1\n"); insert_after(current, new_edit); new_edit->startproject = position; @@ -247,6 +245,14 @@ Edit* Edits::split_edit(int64_t position) new_edit->copy_from(edit); new_edit->length = new_edit->startproject + new_edit->length - position; edit->length = position - edit->startproject; + if( !new_edit->length ) + new_edit->hard_left = new_edit->hard_right = 0; + else if( !edit->length ) + edit->hard_left = edit->hard_right = 0; + else { + new_edit->hard_right = edit->hard_right; + new_edit->hard_left = edit->hard_right = 0; + } new_edit->startproject = position; new_edit->startsource += edit->length; @@ -367,13 +373,19 @@ int Edits::optimize() // delete 0 length edits for( current = first; !result && current; ) { - Edit* next = current->next; + Edit* prev = current->previous, *next = current->next; if( current->length == 0 ) { if( next && current->transition && !next->transition) { next->transition = current->transition; next->transition->edit = next; current->transition = 0; } + if( !current->silence() ) { + if( current->hard_left && next && !next->silence() ) + next->hard_left = 1; + if( current->hard_right && prev && !prev->silence()) + prev->hard_right = 1; + } delete current; result = 1; break; @@ -394,7 +406,8 @@ int Edits::optimize() Edit *next_edit = 0; for( ; current && (next_edit=current->next); current=NEXT ) { // both edges are not hard edges - if( current->hard_right || next_edit->hard_left ) continue; + if( current->hard_right || next_edit->hard_left ) + continue; // next edit is a glitch if( is_glitch(next_edit) ) break; diff --git a/cinelerra-5.1/cinelerra/gwindowgui.C b/cinelerra-5.1/cinelerra/gwindowgui.C index 81520f01..f90a3878 100644 --- a/cinelerra-5.1/cinelerra/gwindowgui.C +++ b/cinelerra-5.1/cinelerra/gwindowgui.C @@ -63,6 +63,7 @@ const char *GWindowGUI::non_auto_text[NON_AUTOMATION_TOTAL] = N_("Titles"), N_("Transitions"), N_("Plugin Keyframes"), + N_("Hard Edges"), }; const char *GWindowGUI::auto_text[AUTOMATION_TOTAL] = @@ -138,6 +139,7 @@ static toggleinfo toggle_order[] = {1, AUTOMATION_MODE}, {1, AUTOMATION_PAN}, {1, AUTOMATION_MASK}, + {-1, NON_AUTOMATION_HARD_EDGES}, {0, -1}, // bar {1, AUTOMATION_CAMERA_X}, {1, AUTOMATION_CAMERA_Y}, @@ -154,7 +156,14 @@ const char *GWindowGUI::toggle_text(toggleinfo *tp) { if( tp->isauto > 0 ) return _(auto_text[tp->ref]); if( !tp->isauto ) return _(non_auto_text[tp->ref]); - return _("XYZ"); + switch( tp->ref ) { + case NONAUTOTOGGLES_CAMERA_XYZ: + case NONAUTOTOGGLES_PROJECTOR_XYZ: + return _("XYZ"); + case NON_AUTOMATION_HARD_EDGES: + return _("Hard Edges"); + } + return "()"; } void GWindowGUI::calculate_extents(BC_WindowBase *gui, int *w, int *h) @@ -263,7 +272,7 @@ void GWindowGUI::create_objects() else draw_vframe(vframe, get_w()-vframe->get_w()-10, y); } - else if( tp->isauto < 0 ) { + else { const char *accel = 0; switch( ref ) { case NONAUTOTOGGLES_CAMERA_XYZ: @@ -274,6 +283,11 @@ void GWindowGUI::create_objects() projector_xyz = toggle; accel = _("Shift-F2"); break; + case NON_AUTOMATION_HARD_EDGES: + VFrame *vframe = mwindow->theme->hardedge_data; + draw_vframe(vframe, get_w()-vframe->get_w()-10, y); + hard_edges = toggle; + break; } if( accel ) { int x1 = get_w() - BC_Title::calculate_w(this, accel) - 10; @@ -412,13 +426,12 @@ int* GWindowGUI::get_main_value(toggleinfo *info) { if( info->isauto > 0 ) return &mwindow->edl->session->auto_conf->autos[info->ref]; - if( !info->isauto ) { - switch( info->ref ) { - case NON_AUTOMATION_ASSETS: return &mwindow->edl->session->show_assets; - case NON_AUTOMATION_TITLES: return &mwindow->edl->session->show_titles; - case NON_AUTOMATION_TRANSITIONS: return &mwindow->edl->session->auto_conf->transitions; - case NON_AUTOMATION_PLUGIN_AUTOS: return &mwindow->edl->session->auto_conf->plugins; - } + switch( info->ref ) { + case NON_AUTOMATION_ASSETS: return &mwindow->edl->session->show_assets; + case NON_AUTOMATION_TITLES: return &mwindow->edl->session->show_titles; + case NON_AUTOMATION_TRANSITIONS: return &mwindow->edl->session->auto_conf->transitions; + case NON_AUTOMATION_PLUGIN_AUTOS: return &mwindow->edl->session->auto_conf->plugins; + case NON_AUTOMATION_HARD_EDGES: return &mwindow->edl->session->auto_conf->hard_edges; } return 0; } @@ -477,6 +490,7 @@ int GWindowToggle::handle_event() switch( info->ref ) { case NONAUTOTOGGLES_CAMERA_XYZ: group = AUTOMATION_CAMERA_X; break; case NONAUTOTOGGLES_PROJECTOR_XYZ: group = AUTOMATION_PROJECTOR_X; break; + case NON_AUTOMATION_HARD_EDGES: *gui->get_main_value(info) = value; break; } if( group >= 0 ) { gui->xyz_check(group, value); diff --git a/cinelerra-5.1/cinelerra/gwindowgui.h b/cinelerra-5.1/cinelerra/gwindowgui.h index 302417cf..6490c851 100644 --- a/cinelerra-5.1/cinelerra/gwindowgui.h +++ b/cinelerra-5.1/cinelerra/gwindowgui.h @@ -34,6 +34,7 @@ enum { NONAUTOTOGGLES_TITLES, NONAUTOTOGGLES_TRANSITIONS, NONAUTOTOGGLES_PLUGIN_AUTOS, + NONAUTOTOGGLES_HARD_EDGES, NONAUTOTOGGLES_CAMERA_XYZ, NONAUTOTOGGLES_PROJECTOR_XYZ, NONAUTOTOGGLES_BAR1, @@ -77,7 +78,7 @@ public: MWindow *mwindow; GWindowToggle *toggles[NONAUTOTOGGLES_COUNT + AUTOMATION_TOTAL]; - GWindowToggle *camera_xyz, *projector_xyz; + GWindowToggle *camera_xyz, *projector_xyz, *hard_edges; }; class GWindowToggle : public BC_CheckBox diff --git a/cinelerra-5.1/cinelerra/mainerror.C b/cinelerra-5.1/cinelerra/mainerror.C index 4fdc592f..c82d23a3 100644 --- a/cinelerra-5.1/cinelerra/mainerror.C +++ b/cinelerra-5.1/cinelerra/mainerror.C @@ -40,7 +40,7 @@ MainError* MainError::main_error = 0; MainErrorGUI::MainErrorGUI(MWindow *mwindow, MainError *thread, int x, int y) - : BC_Window(_(PROGRAM_NAME ": Errors"), + : BC_Window(_(PROGRAM_NAME ": Messages"), x, y, mwindow->session->ewindow_w, @@ -68,7 +68,7 @@ void MainErrorGUI::create_objects() BC_Button *button; add_subwindow(button = new BC_OKButton(this)); int x = 10, y = 10; - add_subwindow(title = new BC_Title(x, y, _("The following errors occurred:"))); + add_subwindow(title = new BC_Title(x, y, _("Message log:"))); y += title->get_h() + 5; add_subwindow(list = new BC_ListBox(x, y, get_w() - 20, button->get_y() - y - 5, diff --git a/cinelerra-5.1/cinelerra/performanceprefs.C b/cinelerra-5.1/cinelerra/performanceprefs.C index cb19f905..c00ca732 100644 --- a/cinelerra-5.1/cinelerra/performanceprefs.C +++ b/cinelerra-5.1/cinelerra/performanceprefs.C @@ -332,10 +332,19 @@ PrefsUseHWDev::PrefsUseHWDev(PreferencesWindow *pwindow, void PrefsUseHWDev::create_objects() { BC_PopupTextBox::create_objects(); + set_tooltip(_("vdpau - Nvidia, Nouveau, Amdgpu\n" + "vaapi - Broadcom, Intel HD graphics, Radeon\n" + "cuda - Nvidia + Cuda SDK")); hw_dev_names.append(new BC_ListBoxItem(_("none"))); +#ifdef HAVE_VAAPI hw_dev_names.append(new BC_ListBoxItem("vaapi")); +#endif +#ifdef HAVE_VDPAU hw_dev_names.append(new BC_ListBoxItem("vdpau")); - hw_dev_names.append(new BC_ListBoxItem("")); +#endif +#ifdef HAVE_NV + hw_dev_names.append(new BC_ListBoxItem("cuda")); +#endif update_list(&hw_dev_names); update(&pwindow->thread->preferences->use_hw_dev[0]); } diff --git a/cinelerra-5.1/cinelerra/shbtnprefs.C b/cinelerra-5.1/cinelerra/shbtnprefs.C index 2945c035..679d16f4 100644 --- a/cinelerra-5.1/cinelerra/shbtnprefs.C +++ b/cinelerra-5.1/cinelerra/shbtnprefs.C @@ -43,17 +43,22 @@ void ShBtnRun::run() perror("fork"); return; } - if( pid > 0 ) { - int stat; waitpid(pid, &stat, 0); - if( warn && stat ) { - char msg[BCTEXTLEN]; - sprintf(msg, "%s: error exit status %d", name, stat); - MainError::show_error(msg); - } + char msg[BCTEXTLEN]; + if( !pid ) { + argv.append(0); + execvp(argv[0], &argv[0]); return; } - argv.append(0); - execvp(argv[0], &argv[0]); + // warn <0:always, =0:never, >0:on err + if( !warn ) return; + int stat; waitpid(pid, &stat, 0); + if( !stat ) { + if( warn > 0 ) return; + sprintf(msg, "%s: completed", name); + } + else + sprintf(msg, "%s: error exit status %d", name, stat); + MainError::show_error(msg); } ShBtnPref::ShBtnPref(const char *nm, const char *cmds, int warn, int run_script) @@ -223,15 +228,43 @@ ShBtnTextWindow::~ShBtnTextWindow() { } + +ShBtnErrWarnItem::ShBtnErrWarnItem(ShBtnErrWarn *popup, + const char *text, int warn) + : BC_MenuItem(text) +{ + this->popup = popup; + this->warn = warn; +} + +int ShBtnErrWarnItem::handle_event() +{ + popup->set_text(get_text()); + popup->st_window->warn = warn; + return 1; +} + ShBtnErrWarn::ShBtnErrWarn(ShBtnTextWindow *st_window, int x, int y) - : BC_CheckBox(x, y, &st_window->warn, _("Warn on err exit")) + : BC_PopupMenu(x, y, 120, st_window->warn < 0 ? _("Always"): + !st_window->warn ? _("Never") : _("On Error")) { this->st_window = st_window; } - ShBtnErrWarn::~ShBtnErrWarn() { } +int ShBtnErrWarn::handle_event() +{ + return 0; +} + +void ShBtnErrWarn::create_objects() +{ + add_item(new ShBtnErrWarnItem(this,_("Always"), -1)); + add_item(new ShBtnErrWarnItem(this,_("Never"), 0)); + add_item(new ShBtnErrWarnItem(this,_("On Error"), 1)); +} + ShBtnRunScript::ShBtnRunScript(ShBtnTextWindow *st_window, int x, int y) : BC_CheckBox(x, y, &st_window->run_script, _("run /path/script.sh + argvs")) @@ -259,7 +292,10 @@ void ShBtnTextWindow::create_objects() cmd_text = new BC_ScrollTextBox(this, x1, y, get_w()-x1-20, 4, pref->commands); cmd_text->create_objects(); y += cmd_text->get_h() + 16; + add_subwindow(title = new BC_Title(x1,y, _("OnExit Notify:"))); + x1 += title->get_w() + 10; add_subwindow(st_err_warn = new ShBtnErrWarn(this, x1, y)); + st_err_warn->create_objects(); x1 += st_err_warn->get_w() + 20; add_subwindow(st_run_script = new ShBtnRunScript(this, x1, y)); y = get_h() - ShBtnTextOK::calculate_h() - 10; diff --git a/cinelerra-5.1/cinelerra/shbtnprefs.h b/cinelerra-5.1/cinelerra/shbtnprefs.h index 36022205..de7050d3 100644 --- a/cinelerra-5.1/cinelerra/shbtnprefs.h +++ b/cinelerra-5.1/cinelerra/shbtnprefs.h @@ -107,12 +107,26 @@ public: ~ShBtnTextOK(); }; -class ShBtnErrWarn : public BC_CheckBox +class ShBtnErrWarnItem : public BC_MenuItem +{ +public: + ShBtnErrWarnItem(ShBtnErrWarn *popup, const char *text, int warn); + ShBtnErrWarnItem(); + int handle_event(); + + ShBtnErrWarn *popup; + int warn; +}; + +class ShBtnErrWarn : public BC_PopupMenu { public: ShBtnErrWarn(ShBtnTextWindow *st_window, int x, int y); ~ShBtnErrWarn(); + void create_objects(); + int handle_event(); + ShBtnTextWindow *st_window; }; diff --git a/cinelerra-5.1/cinelerra/shbtnprefs.inc b/cinelerra-5.1/cinelerra/shbtnprefs.inc index 1ce40933..ed626105 100644 --- a/cinelerra-5.1/cinelerra/shbtnprefs.inc +++ b/cinelerra-5.1/cinelerra/shbtnprefs.inc @@ -9,6 +9,7 @@ class ShBtnDelButton; class ShBtnEditButton; class ShBtnTextDialog; class ShBtnTextOK; +class ShBtnErrWarnItem; class ShBtnErrWarn; class ShBtnTextWindow; class ShBtnPrefItem; diff --git a/cinelerra-5.1/cinelerra/theme.C b/cinelerra-5.1/cinelerra/theme.C index 3b5de953..4141f08f 100644 --- a/cinelerra-5.1/cinelerra/theme.C +++ b/cinelerra-5.1/cinelerra/theme.C @@ -140,6 +140,7 @@ Theme::Theme() lift_data = 0; maskkeyframe_data = 0; modekeyframe_data = 0; + hardedge_data = 0; movedn_data = 0; moveup_data = 0; newbin_data = 0; diff --git a/cinelerra-5.1/cinelerra/theme.h b/cinelerra-5.1/cinelerra/theme.h index 1845b871..7055ee15 100644 --- a/cinelerra-5.1/cinelerra/theme.h +++ b/cinelerra-5.1/cinelerra/theme.h @@ -331,6 +331,7 @@ public: VFrame **lift_data; VFrame *maskkeyframe_data; VFrame *modekeyframe_data; + VFrame *hardedge_data; VFrame **movedn_data; VFrame **moveup_data; VFrame **newbin_data; diff --git a/cinelerra-5.1/cinelerra/trackcanvas.C b/cinelerra-5.1/cinelerra/trackcanvas.C index 7dbda4e1..3f526fd6 100644 --- a/cinelerra-5.1/cinelerra/trackcanvas.C +++ b/cinelerra-5.1/cinelerra/trackcanvas.C @@ -1888,6 +1888,8 @@ void TrackCanvas::refresh_plugintoggles() void TrackCanvas::draw_hard_edges() { + if( !mwindow->edl->session->auto_conf->hard_edges ) + return; int64_t x, y, w, h; for(Track *track = mwindow->edl->tracks->first; track; track = track->next) { diff --git a/cinelerra-5.1/configure.ac b/cinelerra-5.1/configure.ac index 574b0db2..77fe5cac 100644 --- a/cinelerra-5.1/configure.ac +++ b/cinelerra-5.1/configure.ac @@ -867,7 +867,8 @@ if test "x$WANT_CIN_3RDPARTY" != "xno"; then fi for v in GL XFT XXF86VM OSS ALSA FIREWIRE DV DVB \ VIDEO4LINUX2 ESOUND PACTL OPENEXR LV2 \ - COMMERCIAL LIBZMPEG SHUTTLE SHUTTLE_USB; do + COMMERCIAL LIBZMPEG SHUTTLE SHUTTLE_USB \ + VAAPI VDPAU CUDA NV; do eval vv="\$WANT_$v" if test "x$vv" != "xno"; then CFG_CFLAGS+=" -DHAVE_$v" diff --git a/cinelerra-5.1/guicast/bctextbox.C b/cinelerra-5.1/guicast/bctextbox.C index 725bbfa5..078134c0 100644 --- a/cinelerra-5.1/guicast/bctextbox.C +++ b/cinelerra-5.1/guicast/bctextbox.C @@ -2626,6 +2626,11 @@ void BC_PopupTextBox::reposition_window(int x, int y) // if(flush) parent_window->flush(); } +void BC_PopupTextBox::set_tooltip(const char *text) +{ + listbox->set_tooltip(text); +} + BC_TumbleTextBoxText::BC_TumbleTextBoxText(BC_TumbleTextBox *popup, diff --git a/cinelerra-5.1/guicast/bctextbox.h b/cinelerra-5.1/guicast/bctextbox.h index fa569fa8..d5860577 100644 --- a/cinelerra-5.1/guicast/bctextbox.h +++ b/cinelerra-5.1/guicast/bctextbox.h @@ -358,6 +358,7 @@ public: int get_h(); int get_show_query(); void set_show_query(int v); + void set_tooltip(const char *text); void update(const char *text); void update_list(ArrayList *data); diff --git a/cinelerra-5.1/plugins/theme_blond/blondtheme.C b/cinelerra-5.1/plugins/theme_blond/blondtheme.C index da215d57..37e2c397 100644 --- a/cinelerra-5.1/plugins/theme_blond/blondtheme.C +++ b/cinelerra-5.1/plugins/theme_blond/blondtheme.C @@ -97,6 +97,7 @@ BlondTheme::~BlondTheme() delete keyframe_data; delete maskkeyframe_data; delete modekeyframe_data; + delete hardedge_data; delete pankeyframe_data; delete projectorkeyframe_data; } @@ -879,6 +880,7 @@ void BlondTheme::build_overlays() camerakeyframe_data = new VFramePng(get_image_data("camerakeyframe.png")); maskkeyframe_data = new VFramePng(get_image_data("maskkeyframe.png")); modekeyframe_data = new VFramePng(get_image_data("modekeyframe.png")); + hardedge_data = new VFramePng(get_image_data("hardedge.png")); pankeyframe_data = new VFramePng(get_image_data("pankeyframe.png")); projectorkeyframe_data = new VFramePng(get_image_data("projectorkeyframe.png")); } diff --git a/cinelerra-5.1/plugins/theme_blond/data/hardedge.png b/cinelerra-5.1/plugins/theme_blond/data/hardedge.png new file mode 100644 index 0000000000000000000000000000000000000000..c3724eb387879dc4e4701d3ae681ffe27d0a3b69 GIT binary patch literal 3412 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 literal 0 HcmV?d00001 diff --git a/cinelerra-5.1/plugins/theme_blond_cv/blondcvtheme.C b/cinelerra-5.1/plugins/theme_blond_cv/blondcvtheme.C index 246aab94..6ab7a9e7 100644 --- a/cinelerra-5.1/plugins/theme_blond_cv/blondcvtheme.C +++ b/cinelerra-5.1/plugins/theme_blond_cv/blondcvtheme.C @@ -97,6 +97,7 @@ BlondCVTheme::~BlondCVTheme() delete keyframe_data; delete maskkeyframe_data; delete modekeyframe_data; + delete hardedge_data; delete pankeyframe_data; delete projectorkeyframe_data; } @@ -1189,6 +1190,7 @@ void BlondCVTheme::build_overlays() camerakeyframe_data = new VFramePng(get_image_data("camerakeyframe.png")); maskkeyframe_data = new VFramePng(get_image_data("maskkeyframe.png")); modekeyframe_data = new VFramePng(get_image_data("modekeyframe.png")); + hardedge_data = new VFramePng(get_image_data("hardedge.png")); pankeyframe_data = new VFramePng(get_image_data("pankeyframe.png")); projectorkeyframe_data = new VFramePng(get_image_data("projectorkeyframe.png")); } diff --git a/cinelerra-5.1/plugins/theme_blond_cv/data/hardedge.png b/cinelerra-5.1/plugins/theme_blond_cv/data/hardedge.png new file mode 100644 index 0000000000000000000000000000000000000000..c3724eb387879dc4e4701d3ae681ffe27d0a3b69 GIT binary patch literal 3412 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 literal 0 HcmV?d00001 diff --git a/cinelerra-5.1/plugins/theme_blue/bluetheme.C b/cinelerra-5.1/plugins/theme_blue/bluetheme.C index 63216e41..ea43e59d 100644 --- a/cinelerra-5.1/plugins/theme_blue/bluetheme.C +++ b/cinelerra-5.1/plugins/theme_blue/bluetheme.C @@ -97,6 +97,7 @@ BlueDotTheme::~BlueDotTheme() delete keyframe_data; delete maskkeyframe_data; delete modekeyframe_data; + delete hardedge_data; delete pankeyframe_data; delete projectorkeyframe_data; } @@ -876,6 +877,7 @@ void BlueDotTheme::build_overlays() camerakeyframe_data = new VFramePng(get_image_data("camerakeyframe.png")); maskkeyframe_data = new VFramePng(get_image_data("maskkeyframe.png")); modekeyframe_data = new VFramePng(get_image_data("modekeyframe.png")); + hardedge_data = new VFramePng(get_image_data("hardedge.png")); pankeyframe_data = new VFramePng(get_image_data("pankeyframe.png")); projectorkeyframe_data = new VFramePng(get_image_data("projectorkeyframe.png")); } diff --git a/cinelerra-5.1/plugins/theme_blue/data/hardedge.png b/cinelerra-5.1/plugins/theme_blue/data/hardedge.png new file mode 100644 index 0000000000000000000000000000000000000000..c3724eb387879dc4e4701d3ae681ffe27d0a3b69 GIT binary patch literal 3412 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 literal 0 HcmV?d00001 diff --git a/cinelerra-5.1/plugins/theme_blue_dot/bluedottheme.C b/cinelerra-5.1/plugins/theme_blue_dot/bluedottheme.C index 7d43a698..e55d920b 100644 --- a/cinelerra-5.1/plugins/theme_blue_dot/bluedottheme.C +++ b/cinelerra-5.1/plugins/theme_blue_dot/bluedottheme.C @@ -100,6 +100,7 @@ BlueDotTheme::~BlueDotTheme() delete keyframe_data; delete maskkeyframe_data; delete modekeyframe_data; + delete hardedge_data; delete pankeyframe_data; delete projectorkeyframe_data; } @@ -1246,6 +1247,7 @@ void BlueDotTheme::build_overlays() camerakeyframe_data = new VFramePng(get_image_data("camerakeyframe.png")); maskkeyframe_data = new VFramePng(get_image_data("maskkeyframe.png")); modekeyframe_data = new VFramePng(get_image_data("modekeyframe.png")); + hardedge_data = new VFramePng(get_image_data("hardedge.png")); pankeyframe_data = new VFramePng(get_image_data("pankeyframe.png")); projectorkeyframe_data = new VFramePng(get_image_data("projectorkeyframe.png")); } diff --git a/cinelerra-5.1/plugins/theme_blue_dot/data/hardedge.png b/cinelerra-5.1/plugins/theme_blue_dot/data/hardedge.png new file mode 100644 index 0000000000000000000000000000000000000000..c3724eb387879dc4e4701d3ae681ffe27d0a3b69 GIT binary patch literal 3412 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 literal 0 HcmV?d00001 diff --git a/cinelerra-5.1/plugins/theme_bright/brighttheme.C b/cinelerra-5.1/plugins/theme_bright/brighttheme.C index 4a2735ef..cd3acc9c 100644 --- a/cinelerra-5.1/plugins/theme_bright/brighttheme.C +++ b/cinelerra-5.1/plugins/theme_bright/brighttheme.C @@ -95,6 +95,7 @@ BrightTheme::~BrightTheme() delete keyframe_data; delete maskkeyframe_data; delete modekeyframe_data; + delete hardedge_data; delete pankeyframe_data; delete projectorkeyframe_data; } @@ -882,6 +883,7 @@ void BrightTheme::build_overlays() camerakeyframe_data = new VFramePng(get_image_data("camerakeyframe.png")); maskkeyframe_data = new VFramePng(get_image_data("maskkeyframe.png")); modekeyframe_data = new VFramePng(get_image_data("modekeyframe.png")); + hardedge_data = new VFramePng(get_image_data("hardedge.png")); pankeyframe_data = new VFramePng(get_image_data("pankeyframe.png")); projectorkeyframe_data = new VFramePng(get_image_data("projectorkeyframe.png")); } diff --git a/cinelerra-5.1/plugins/theme_bright/data/hardedge.png b/cinelerra-5.1/plugins/theme_bright/data/hardedge.png new file mode 100644 index 0000000000000000000000000000000000000000..c3724eb387879dc4e4701d3ae681ffe27d0a3b69 GIT binary patch literal 3412 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 literal 0 HcmV?d00001 diff --git a/cinelerra-5.1/plugins/theme_cakewalk/cakewalk.C b/cinelerra-5.1/plugins/theme_cakewalk/cakewalk.C index ac1f5159..b4170efd 100644 --- a/cinelerra-5.1/plugins/theme_cakewalk/cakewalk.C +++ b/cinelerra-5.1/plugins/theme_cakewalk/cakewalk.C @@ -65,6 +65,7 @@ CAKEWALKTHEME::~CAKEWALKTHEME() delete keyframe_data; delete maskkeyframe_data; delete modekeyframe_data; + delete hardedge_data; delete pankeyframe_data; delete projectorkeyframe_data; } @@ -997,6 +998,7 @@ void CAKEWALKTHEME::build_overlays() camerakeyframe_data = new VFramePng(get_image_data("camerakeyframe.png")); maskkeyframe_data = new VFramePng(get_image_data("maskkeyframe.png")); modekeyframe_data = new VFramePng(get_image_data("modekeyframe.png")); + hardedge_data = new VFramePng(get_image_data("hardedge.png")); pankeyframe_data = new VFramePng(get_image_data("pankeyframe.png")); projectorkeyframe_data = new VFramePng(get_image_data("projectorkeyframe.png")); } diff --git a/cinelerra-5.1/plugins/theme_cakewalk/data/hardedge.png b/cinelerra-5.1/plugins/theme_cakewalk/data/hardedge.png new file mode 100644 index 0000000000000000000000000000000000000000..c3724eb387879dc4e4701d3ae681ffe27d0a3b69 GIT binary patch literal 3412 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 literal 0 HcmV?d00001 diff --git a/cinelerra-5.1/plugins/theme_hulk/data/hardedge.png b/cinelerra-5.1/plugins/theme_hulk/data/hardedge.png new file mode 100644 index 0000000000000000000000000000000000000000..c3724eb387879dc4e4701d3ae681ffe27d0a3b69 GIT binary patch literal 3412 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 literal 0 HcmV?d00001 diff --git a/cinelerra-5.1/plugins/theme_hulk/hulktheme.C b/cinelerra-5.1/plugins/theme_hulk/hulktheme.C index 082b9654..8222d6df 100644 --- a/cinelerra-5.1/plugins/theme_hulk/hulktheme.C +++ b/cinelerra-5.1/plugins/theme_hulk/hulktheme.C @@ -98,6 +98,7 @@ HULKTHEME::~HULKTHEME() delete keyframe_data; delete maskkeyframe_data; delete modekeyframe_data; + delete hardedge_data; delete pankeyframe_data; delete projectorkeyframe_data; } @@ -881,6 +882,7 @@ void HULKTHEME::build_overlays() camerakeyframe_data = new VFramePng(get_image_data("camerakeyframe.png")); maskkeyframe_data = new VFramePng(get_image_data("maskkeyframe.png")); modekeyframe_data = new VFramePng(get_image_data("modekeyframe.png")); + hardedge_data = new VFramePng(get_image_data("hardedge.png")); pankeyframe_data = new VFramePng(get_image_data("pankeyframe.png")); projectorkeyframe_data = new VFramePng(get_image_data("projectorkeyframe.png")); } diff --git a/cinelerra-5.1/plugins/theme_neophyte/data/hardedge.png b/cinelerra-5.1/plugins/theme_neophyte/data/hardedge.png new file mode 100644 index 0000000000000000000000000000000000000000..c3724eb387879dc4e4701d3ae681ffe27d0a3b69 GIT binary patch literal 3412 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 literal 0 HcmV?d00001 diff --git a/cinelerra-5.1/plugins/theme_neophyte/neophyte.C b/cinelerra-5.1/plugins/theme_neophyte/neophyte.C index de9d59c0..3d34c837 100644 --- a/cinelerra-5.1/plugins/theme_neophyte/neophyte.C +++ b/cinelerra-5.1/plugins/theme_neophyte/neophyte.C @@ -94,6 +94,7 @@ NEOPHYTETHEME::~NEOPHYTETHEME() delete keyframe_data; delete maskkeyframe_data; delete modekeyframe_data; + delete hardedge_data; delete pankeyframe_data; delete projectorkeyframe_data; } @@ -1185,6 +1186,7 @@ void NEOPHYTETHEME::build_overlays() camerakeyframe_data = new VFramePng(get_image_data("camerakeyframe.png")); maskkeyframe_data = new VFramePng(get_image_data("maskkeyframe.png")); modekeyframe_data = new VFramePng(get_image_data("modekeyframe.png")); + hardedge_data = new VFramePng(get_image_data("hardedge.png")); pankeyframe_data = new VFramePng(get_image_data("pankeyframe.png")); projectorkeyframe_data = new VFramePng(get_image_data("projectorkeyframe.png")); } diff --git a/cinelerra-5.1/plugins/theme_pinklady/data/hardedge.png b/cinelerra-5.1/plugins/theme_pinklady/data/hardedge.png new file mode 100644 index 0000000000000000000000000000000000000000..c3724eb387879dc4e4701d3ae681ffe27d0a3b69 GIT binary patch literal 3412 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 literal 0 HcmV?d00001 diff --git a/cinelerra-5.1/plugins/theme_pinklady/pinkladytheme.C b/cinelerra-5.1/plugins/theme_pinklady/pinkladytheme.C index 671da394..50017627 100644 --- a/cinelerra-5.1/plugins/theme_pinklady/pinkladytheme.C +++ b/cinelerra-5.1/plugins/theme_pinklady/pinkladytheme.C @@ -83,6 +83,7 @@ PINKLADY::~PINKLADY() delete keyframe_data; delete maskkeyframe_data; delete modekeyframe_data; + delete hardedge_data; delete pankeyframe_data; delete projectorkeyframe_data; } @@ -863,6 +864,7 @@ void PINKLADY::build_overlays() camerakeyframe_data = new VFramePng(get_image_data("camerakeyframe.png")); maskkeyframe_data = new VFramePng(get_image_data("maskkeyframe.png")); modekeyframe_data = new VFramePng(get_image_data("modekeyframe.png")); + hardedge_data = new VFramePng(get_image_data("hardedge.png")); pankeyframe_data = new VFramePng(get_image_data("pankeyframe.png")); projectorkeyframe_data = new VFramePng(get_image_data("projectorkeyframe.png")); } diff --git a/cinelerra-5.1/plugins/theme_suv/data/hardedge.png b/cinelerra-5.1/plugins/theme_suv/data/hardedge.png new file mode 100644 index 0000000000000000000000000000000000000000..c3724eb387879dc4e4701d3ae681ffe27d0a3b69 GIT binary patch literal 3412 zcmV-a4Xg5rP)P000>X1^@s6#OZ}&000XFdQ@0+Qek%> zaB^>EX>4U6ba`-PAZ2)IW&i+q+U=NIb{x5`ME^O8GX#?0b2xlqtviD|{IijnDqGc( z`?yzsTC$Z@tV})-fk2?#`Tze@_aAH2%W>Cb23 z^SFC`5E&A#a=$I-xqmR8e>_mrGd@3$ySkov+A~pjO?>@`t!%INv&m;7iT8MT-n;%h zFv?HIdH%=sO#4j!{ytTLu`}~Ybn!?KfB(H#5_Tb72G_!0UPl{AypGp+lK$8DxmW1E z2;l40Tm1aT&g4fp?ukB*Ro>$CjEDR-F0Wo_qqROl{MY!Y?xuR~(~VRd z;VRFeK8|v|;>Jlh<$A2}Tlt@PU9aEHZ}Y=1P}>}JIzM^SLnPK3QrKYx4d=S9u-IaX zCswX8t|-@7lNx(maznsx&{!QfY-!-JKu#Eruf2q8-EQl#SYzcKxHASO3q0}Z*S!z? z)89`MsT$2g@a+{V_7#n?Y{QVVzuW~NL7$lBE559O!Q}>e{UkCR>gY4ENxds)!II3qE9ELe)f@`TU;oT&j?!( z#GxWzc_CC=lAlTaDN{Vc(pMK*Ma!9}mrz)1%)Qm(r5&FuO1)NTxwtXU8lfWW-uG}y z2`Xh#EfKU4(w+yg8np-l7Uw{7@@b*;6J?{KsNU+aq~=h!J*X7{yLGG>pMz0aeVnPe zXe--}WM|v8hrG6S%;~H>=InQj#rK>ej;$hxedUlPl#BVU>2PV~vK) zYoF=#y)(O6M4(6^q&o)D?985K((iVJdacetKX25JX)A z2a!f}=t`3yHUcjE#QZPEbBr{ z$Cjx_kEp%J@&s*6nwfCJ0Kp{f#a1egG6H5fJthh$!Q(?m&ybqtp(PIOXKf7WnAoS- zb|_;P&1Wp-fTv0yz&OqbRLaPQ^|1WzNvX6mo6}8YhKbJ^H@58%j8Pj9;}IHkjB`y0 zJ*rX@wQObn1oS)!-L`NF4?>X2dt- zGj}RAV?0->5>M-XwpQ>cwhwzBNP-)!53t-9Xf4ts49<(68B>f`QNvu@pS{-(WCv%X zHCQG2v&uXTLTcEgR%vq(e{JyY)Ct~E3rS6g_l&7}k=PdrvgDx@plw-5_rH)JkkOITB8Vwjx^5BBEFWuQ(pD z6M|a`4JSDc5liYS85|KO(d;zh^~j=i04bYoh2lw}8cA7@0%k{O({1RqH#yP>SbIwt z_c>$!CSeL)ooY4o7Z=#6+bRcbth@OAklXvu^v=d#kNZ3jeRdYqh`!O1Mq8N4nCNVX z>yL{U)vKAF6QVF%!ly_%S?E}ZOkaS}#d9kOK-CG;9B z#^(@sV!>GvpN2yYY=cCv{9@VH$2|QecV9u(O4Ox zP0xxZVw$!AdM!ndb#NDjf|OxJ0`g4lq3+#$?~V`X;y7}xl*KRsBaM-GfYtY$le;eM zuuk&_^*<9I+FOCNUW#JKJbEiQJcQz$7K-yR(gfStIx33>c#6fOnj{>M(cYq0s+-s2 zH}~zUy_@}4QU(jRC6!!NY+Fu3YnEn0CSyk_g>|j695v^by^NDXkh4XqiA8Foh=;;| zMXISFt5=-ZVrcZIjHM?|WHDBU-UiA7|^S!@q5+>r({TVt%Zc>lzc?xznj=|&) z_w$AMdGaCGJ0INFmc}M3#?>0arP%g$M0$=xZEx|t^t$iU(7u_1NqEMf&v|CJY8cYO zp>ef!OUY)p)I0Ti^#f^?XCReA1Gv*Nf=>;2KF|#Y;kNq+^EpY+3+UI?y$^g`1-Nvun$Po{3N?wrSsGbzgQ7 z8%Fk1flOTYigwQgGTlAk`KeH;eOkf$Pix#OJoCHP0@w5$#-_K~1twSjJWh?)Lef?{ zdzATOf{*9j&lCLecz6#$_<8T)W9!z*xVPPZF+sO9%t{%cBr3*?te{Hb-h*$A(9zid zziA29gWhu?6Eh8KoCTS$_RV`t%UZW=2MK~(rIz$Q=I~`I6)G$)cxZz^AY^p9!M?2Q zQG9CjVU`8KS~qs}&J0VKa-sFX4Mfnp%+WXEGP+OJ$gu>hqn^?l`#!I@{tfh3WZZYa zUa>`iekO+ef*9_5X8ay8-1p4*Jz}`;neq3;Fx#kMP!CUZG7)D%LuvOS?Q}{5oEptI zzFsDM9v*{+_JU^lLZ+@x=LQW%Jl$H!>w9A-En7E!tH-2Y)bE7l*H`zu5B!EX>4Tx0C=2zkv&MmKpe$iQ?()$hh`9U z$WWauh>CR7DionYs1;guFdzMbCJjl7i=*ILaPVWX>fqw6tAnc`2!4RLxH>7iNQwVT z3N2zhIPS;0dyl(!0N1D}n$t~4AUmwAfDN@4aWP#yi$@>;&bA0lP*a7$aLA`H^xPmIhM(r zne;p{Pb?HWSngn@WNO6I#8Fk#DWA)FtTNtWtW|1C>z?d|;k>@G%ygO~NMaF75FtQD z4P{hdBSx!EiiI@oCw%-vu3sdVOs+B%ax9<<4U+2z`-9)zT7{`eFDaY=x?ddUV-yJO z0?oSPd>=bb^8^S!16O+6Uu^*KPtxmcEqVkDYy%h9ZB5<-E_Z;zCqptNR|?YP3I*W( zjJ_!cL~en;HLthUK29Hi40V;d0S*pS qaUB?h=pIn!Xa|IOJ_)#c5o-sy3mfrakgMqc0000wWkD literal 0 HcmV?d00001 diff --git a/cinelerra-5.1/plugins/theme_suv/suv.C b/cinelerra-5.1/plugins/theme_suv/suv.C index 3c6de6f2..40ad35c4 100644 --- a/cinelerra-5.1/plugins/theme_suv/suv.C +++ b/cinelerra-5.1/plugins/theme_suv/suv.C @@ -94,6 +94,7 @@ SUV::~SUV() delete keyframe_data; delete maskkeyframe_data; delete modekeyframe_data; + delete hardedge_data; delete pankeyframe_data; delete projectorkeyframe_data; } @@ -876,6 +877,7 @@ void SUV::build_overlays() camerakeyframe_data = new VFramePng(get_image_data("camerakeyframe.png")); maskkeyframe_data = new VFramePng(get_image_data("maskkeyframe.png")); modekeyframe_data = new VFramePng(get_image_data("modekeyframe.png")); + hardedge_data = new VFramePng(get_image_data("hardedge.png")); pankeyframe_data = new VFramePng(get_image_data("pankeyframe.png")); projectorkeyframe_data = new VFramePng(get_image_data("projectorkeyframe.png")); } diff --git a/cinelerra-5.1/plugins/theme_unflat/data/hardedge.png b/cinelerra-5.1/plugins/theme_unflat/data/hardedge.png new file mode 100644 index 0000000000000000000000000000000000000000..c3724eb387879dc4e4701d3ae681ffe27d0a3b69 GIT binary patch literal 3412 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 literal 0 HcmV?d00001 diff --git a/cinelerra-5.1/plugins/theme_unflat/unflattheme.C b/cinelerra-5.1/plugins/theme_unflat/unflattheme.C index def4469b..55a3dd04 100644 --- a/cinelerra-5.1/plugins/theme_unflat/unflattheme.C +++ b/cinelerra-5.1/plugins/theme_unflat/unflattheme.C @@ -92,6 +92,7 @@ UNFLATTHEME::~UNFLATTHEME() delete keyframe_data; delete maskkeyframe_data; delete modekeyframe_data; + delete hardedge_data; delete pankeyframe_data; delete projectorkeyframe_data; } @@ -872,6 +873,7 @@ void UNFLATTHEME::build_overlays() camerakeyframe_data = new VFramePng(get_image_data("camerakeyframe.png")); maskkeyframe_data = new VFramePng(get_image_data("maskkeyframe.png")); modekeyframe_data = new VFramePng(get_image_data("modekeyframe.png")); + hardedge_data = new VFramePng(get_image_data("hardedge.png")); pankeyframe_data = new VFramePng(get_image_data("pankeyframe.png")); projectorkeyframe_data = new VFramePng(get_image_data("projectorkeyframe.png")); } -- 2.26.2