colorpicker cleanup, make ffmpeg probes early default
authorGood Guy <good1.2guy@gmail.com>
Sun, 9 Apr 2017 16:59:40 +0000 (10:59 -0600)
committerGood Guy <good1.2guy@gmail.com>
Sun, 9 Apr 2017 16:59:40 +0000 (10:59 -0600)
17 files changed:
cinelerra-5.1/cinelerra/colorpicker.C
cinelerra-5.1/cinelerra/colorpicker.h
cinelerra-5.1/cinelerra/colorpicker.inc
cinelerra-5.1/cinelerra/gwindowgui.C
cinelerra-5.1/cinelerra/gwindowgui.h
cinelerra-5.1/cinelerra/indexfile.C
cinelerra-5.1/cinelerra/preferences.C
cinelerra-5.1/plugins/chromakey/chromakey.C
cinelerra-5.1/plugins/chromakey/chromakey.h
cinelerra-5.1/plugins/chromakeyhsv/chromakey.C
cinelerra-5.1/plugins/chromakeyhsv/chromakey.h
cinelerra-5.1/plugins/gradient/gradient.C
cinelerra-5.1/plugins/gradient/gradient.h
cinelerra-5.1/plugins/threshold/thresholdwindow.C
cinelerra-5.1/plugins/threshold/thresholdwindow.h
cinelerra-5.1/plugins/titler/titlerwindow.C
cinelerra-5.1/plugins/titler/titlerwindow.h

index c82e728a644618e0c0a54a4019b2e4f4a70a424e..5c43fb93da1c49afe173a8970e5e0710cd26925e 100644 (file)
@@ -39,7 +39,7 @@
 
 #define PALETTE_DATA "palette.dat"
 
-ColorThread::ColorThread(int do_alpha, const char *title)
+ColorPicker::ColorPicker(int do_alpha, const char *title)
  : BC_DialogThread()
 {
        this->title = title;
@@ -49,17 +49,17 @@ ColorThread::ColorThread(int do_alpha, const char *title)
        this->alpha = 255;
 }
 
-ColorThread::~ColorThread()
+ColorPicker::~ColorPicker()
 {
        close_window();
 }
 
-void ColorThread::start_window(int output, int alpha, int do_okcancel)
+void ColorPicker::start_window(int output, int alpha, int do_okcancel)
 {
        if( running() ) {
                ColorWindow *gui = (ColorWindow *)get_gui();
                if( gui ) {
-                       gui->lock_window("ColorThread::start_window");
+                       gui->lock_window("ColorPicker::start_window");
                        gui->raise_window(1);
                        gui->unlock_window();
                }
@@ -71,7 +71,7 @@ void ColorThread::start_window(int output, int alpha, int do_okcancel)
        start();
 }
 
-BC_Window* ColorThread::new_gui()
+BC_Window* ColorPicker::new_gui()
 {
        char window_title[BCTEXTLEN];
        strcpy(window_title, _(PROGRAM_NAME ": "));
@@ -92,7 +92,7 @@ BC_Window* ColorThread::new_gui()
        return gui;
 }
 
-void ColorThread::update_gui(int output, int alpha)
+void ColorPicker::update_gui(int output, int alpha)
 {
        ColorWindow *gui = (ColorWindow *)get_gui();
        if( !gui ) return;
@@ -104,14 +104,14 @@ void ColorThread::update_gui(int output, int alpha)
        gui->unlock_window();
 }
 
-int ColorThread::handle_new_color(int output, int alpha)
+int ColorPicker::handle_new_color(int output, int alpha)
 {
-       printf("ColorThread::handle_new_color undefined.\n");
+       printf("ColorPicker::handle_new_color undefined.\n");
        return 0;
 }
 
 
-ColorWindow::ColorWindow(ColorThread *thread, int x, int y, int w, int h, const char *title)
+ColorWindow::ColorWindow(ColorPicker *thread, int x, int y, int w, int h, const char *title)
  : BC_Window(title, x, y, w, h, w, h, 0, 0, 1)
 {
        this->thread = thread;
index 3170be937cfcd97d462df5c41b4581338deeb9e7..0ae021edc6a31696785a5cfc88a2876c70769b24 100644 (file)
@@ -58,11 +58,11 @@ class PaletteHex;
 class PaletteGrabButton;
 class PaletteHistory;
 
-class ColorThread : public BC_DialogThread
+class ColorPicker : public BC_DialogThread
 {
 public:
-       ColorThread(int do_alpha = 0, const char *title = 0);
-       ~ColorThread();
+       ColorPicker(int do_alpha = 0, const char *title = 0);
+       ~ColorPicker();
 
        void start_window(int output, int alpha, int do_okcancel=0);
        virtual int handle_new_color(int output, int alpha);
@@ -77,7 +77,7 @@ public:
 class ColorWindow : public BC_Window
 {
 public:
-       ColorWindow(ColorThread *thread, int x, int y, int w, int h, const char *title);
+       ColorWindow(ColorPicker *thread, int x, int y, int w, int h, const char *title);
        ~ColorWindow();
 
        void create_objects();
@@ -103,7 +103,7 @@ public:
        void update_rgb_hex(const char *hex);
        int rgb888();
 
-       ColorThread *thread;
+       ColorPicker *thread;
        PaletteWheel *wheel;
        PaletteWheelValue *wheel_value;
        PaletteOutput *output;
index e30c52b2c50c7c504b47ce73f57f6b081fc45d56..3442aae60695a947d186f028f699b0fff6f4eafa 100644 (file)
@@ -24,6 +24,4 @@
 
 class ColorPicker;
 
-class ColorThread;
-
 #endif
index 5cf353caff3068013edd24f29bd6f36accfa3775..d01268618d80f17887547e1f04ad357d3a0f59b9 100644 (file)
@@ -248,7 +248,7 @@ void GWindowColorButton::update_gui(int color)
 }
 
 GWindowColorThread::GWindowColorThread(GWindowColorButton *color_button)
- : ColorThread(0, color_button->auto_toggle->caption)
+ : ColorPicker(0, color_button->auto_toggle->caption)
 {
        this->color = 0;
        this->color_button = color_button;
@@ -415,6 +415,7 @@ int GWindowGUI::translation_event()
 
 int GWindowGUI::close_event()
 {
+       delete color_thread;  color_thread = 0;
        hide_window();
        mwindow->session->show_gwindow = 0;
        unlock_window();
index 35a524e8003ff4c8221e16dd9cca5fdec1954593..1687e037eedba05dec428e69bfb5e58da372e159 100644 (file)
@@ -103,7 +103,7 @@ public:
        GWindowToggle *auto_toggle;
 };
 
-class GWindowColorThread : public ColorThread
+class GWindowColorThread : public ColorPicker
 {
 public:
        GWindowColorThread(GWindowColorButton *color_button);
index 02ecb66aceaa8e705e216e997baf712edb49c735..a5f12bcaaa1dda0272fbe9da5a485a172c82b4d3 100644 (file)
@@ -866,16 +866,19 @@ int IndexFile::read_info(Indexable *test_indexable)
 // Read the file format & index state.
                if(test_indexable->is_asset)
                {
-                       Asset asset, *test_asset = (Asset *)test_indexable;
-                       asset.read(&xml);
+                       Asset *test_asset = (Asset *)test_indexable;
+                       Asset *asset = new Asset;
+                       asset->read(&xml);
+                       int ret = 0;
 //printf("IndexFile::read_info %d %f\n", __LINE__, asset->get_frame_rate());
 
-                       if( asset.format == FILE_UNKNOWN ||
-                           test_asset->format != asset.format )
-                       {
+                       if( asset->format == FILE_UNKNOWN ||
+                           test_asset->format != asset->format ) {
 if(debug) printf("IndexFile::read_info %d\n", __LINE__);
-                               return 1;
+                               ret = 1;
                        }
+                       asset->remove_user();
+                       if( ret ) return ret;
                }
                else
                {
index 4b7a92aecf98b50de38953df03e80fb34c585fd3..f93a4ba96c72d488e2355378e1a2eb90db8eff13 100644 (file)
@@ -77,7 +77,7 @@ Preferences::Preferences()
        renderfarm_job_count = 20;
        project_smp = processors = calculate_processors(0);
        real_processors = calculate_processors(1);
-       ffmpeg_early_probe = 0;
+       ffmpeg_early_probe = 1;
        ffmpeg_marker_indexes = 1;
        warn_indexes = 1;
        warn_version = 1;
index 8618d03b605c2922c2539835bb7a042f216cd3ef..9d1926fc82ce83c66fde4233fe9860e8fcbcf73c 100644 (file)
@@ -169,6 +169,11 @@ void ChromaKeyWindow::update_sample()
        sample->flash();
 }
 
+void ChromaKeyWindow::done_event(int result)
+{
+       color_thread->close_window();
+}
+
 
 
 
@@ -279,7 +284,7 @@ int ChromaKeyUseColorPicker::handle_event()
 
 
 ChromaKeyColorThread::ChromaKeyColorThread(ChromaKey *plugin, ChromaKeyWindow *gui)
- : ColorThread(1, _("Inner color"))
+ : ColorPicker(1, _("Inner color"))
 {
        this->plugin = plugin;
        this->gui = gui;
index cefa8d9de6684a96fa989a008dc005db4ad96d95..8e1a1aafada53e5bb08dba57560de047c04f31e8 100644 (file)
@@ -103,7 +103,7 @@ public:
 };
 
 
-class ChromaKeyColorThread : public ColorThread
+class ChromaKeyColorThread : public ColorPicker
 {
 public:
        ChromaKeyColorThread(ChromaKey *plugin, ChromaKeyWindow *gui);
@@ -121,6 +121,7 @@ public:
 
        void create_objects();
        void update_sample();
+       void done_event(int result);
 
        ChromaKeyColor *color;
        ChromaKeyThreshold *threshold;
index 0636a981fe7bccc95f31ed31d0bf929b67bffe8d..39ff594eb18d1f49036a7b99ffc8e2aeed9b1fcb 100644 (file)
@@ -287,6 +287,10 @@ ChromaKeyWindow::update_sample ()
   sample->flash ();
 }
 
+void ChromaKeyWindow::done_event(int result)
+{
+       color_thread->close_window();
+}
 
 
 ChromaKeyColor::ChromaKeyColor (ChromaKeyHSV * plugin,
@@ -525,7 +529,7 @@ ChromaKeySpillAmount::handle_event ()
 
 
 ChromaKeyColorThread::ChromaKeyColorThread (ChromaKeyHSV * plugin, ChromaKeyWindow * gui)
- : ColorThread (1, _("Inner color"))
+ : ColorPicker (1, _("Inner color"))
 {
   this->plugin = plugin;
   this->gui = gui;
index d8007109b066565efb633fc450b0957e5fe8115a..68fd8b3b2f2df146860d857a320e4929e4476da1 100644 (file)
@@ -182,7 +182,7 @@ public:
 };
 
 
-class ChromaKeyColorThread : public ColorThread
+class ChromaKeyColorThread : public ColorPicker
 {
 public:
        ChromaKeyColorThread(ChromaKeyHSV *plugin, ChromaKeyWindow *gui);
@@ -209,6 +209,7 @@ public:
 
        void create_objects();
        void update_sample();
+       void done_event(int result);
 
        ChromaKeyColor *color;
        ChromaKeyUseColorPicker *use_colorpicker;
index a7d7828e4ae34601a87f1b9c8909daeaa0e986fc..bea77b2211da68927236ccf8d7d1b4a5f9169737 100644 (file)
@@ -317,6 +317,12 @@ void GradientWindow::update_out_color()
        flash(out_color_x, out_color_y, COLOR_W, COLOR_H);
 }
 
+void GradientWindow::done_event(int result)
+{
+       in_color_thread->close_window();
+       out_color_thread->close_window();
+}
+
 
 
 
@@ -534,7 +540,7 @@ int GradientOutColorButton::handle_event()
 
 GradientInColorThread::GradientInColorThread(GradientMain *plugin,
        GradientWindow *window)
- : ColorThread(1, _("Inner color"))
+ : ColorPicker(1, _("Inner color"))
 {
        this->plugin = plugin;
        this->window = window;
@@ -569,7 +575,7 @@ int GradientInColorThread::handle_new_color(int output, int alpha)
 
 GradientOutColorThread::GradientOutColorThread(GradientMain *plugin,
        GradientWindow *window)
- : ColorThread(1, _("Outer color"))
+ : ColorPicker(1, _("Outer color"))
 {
        this->plugin = plugin;
        this->window = window;
index 715b5b5255983f5c73f51b38ebfd8ef5e13fcd3e..736e975af0b156ae1536d8b12e2b66512bcfdcc9 100644 (file)
@@ -171,7 +171,7 @@ public:
 };
 
 
-class GradientInColorThread : public ColorThread
+class GradientInColorThread : public ColorPicker
 {
 public:
        GradientInColorThread(GradientMain *plugin, GradientWindow *window);
@@ -181,7 +181,7 @@ public:
 };
 
 
-class GradientOutColorThread : public ColorThread
+class GradientOutColorThread : public ColorPicker
 {
 public:
        GradientOutColorThread(GradientMain *plugin, GradientWindow *window);
@@ -202,6 +202,7 @@ public:
        void update_in_color();
        void update_out_color();
        void update_shape();
+       void done_event(int result);
 
        GradientMain *plugin;
        BC_Title *angle_title;
index f5706b0522e7ed61daf6556263d52a816e1836ed..7a22ba33668e91756c5bc0acad48de68de90fe7c 100644 (file)
@@ -367,7 +367,7 @@ int ThresholdHighColorButton::handle_event()
 
 
 ThresholdLowColorThread::ThresholdLowColorThread(ThresholdMain *plugin, ThresholdWindow *window)
- : ColorThread(1, _("Low color"))
+ : ColorPicker(1, _("Low color"))
 {
        this->plugin = plugin;
        this->window = window;
@@ -387,7 +387,7 @@ int ThresholdLowColorThread::handle_new_color(int output, int alpha)
 
 
 ThresholdMidColorThread::ThresholdMidColorThread(ThresholdMain *plugin, ThresholdWindow *window)
- : ColorThread(1, _("Mid color"))
+ : ColorPicker(1, _("Mid color"))
 {
        this->plugin = plugin;
        this->window = window;
@@ -407,7 +407,7 @@ int ThresholdMidColorThread::handle_new_color(int output, int alpha)
 
 
 ThresholdHighColorThread::ThresholdHighColorThread(ThresholdMain *plugin, ThresholdWindow *window)
- : ColorThread(1, _("High color"))
+ : ColorPicker(1, _("High color"))
 {
        this->plugin = plugin;
        this->window = window;
@@ -537,5 +537,12 @@ void ThresholdWindow::update_high_color()
        flash(high_color_x, high_color_y, COLOR_W, COLOR_H);
 }
 
+void ThresholdWindow::done_event(int result)
+{
+       low_color_thread->close_window();
+       mid_color_thread->close_window();
+       high_color_thread->close_window();
+}
+
 
 
index ff8439747cf3c7651edc3285f80b1e56a3b1936e..8c9f3dd825d3f67d12966cd01dcbd6c092f6a363 100644 (file)
@@ -91,7 +91,7 @@ public:
        ThresholdWindow *window;
 };
 
-class ThresholdLowColorThread : public ColorThread
+class ThresholdLowColorThread : public ColorPicker
 {
 public:
        ThresholdLowColorThread(ThresholdMain *plugin, ThresholdWindow *window);
@@ -100,7 +100,7 @@ public:
        ThresholdWindow *window;
 };
 
-class ThresholdMidColorThread : public ColorThread
+class ThresholdMidColorThread : public ColorPicker
 {
 public:
        ThresholdMidColorThread(ThresholdMain *plugin, ThresholdWindow *window);
@@ -109,7 +109,7 @@ public:
        ThresholdWindow *window;
 };
 
-class ThresholdHighColorThread : public ColorThread
+class ThresholdHighColorThread : public ColorPicker
 {
 public:
        ThresholdHighColorThread(ThresholdMain *plugin, ThresholdWindow *window);
@@ -155,6 +155,7 @@ public:
        void update_low_color();
        void update_mid_color();
        void update_high_color();
+       void done_event(int result);
 
        ThresholdMain *plugin;
        ThresholdMin *min;
index e2e1f972644e60fc7b60d8bc8030fe5a8c477ee8..66fb01dbecd946ea2d89db986d62d7b8c5cf5aaf 100644 (file)
@@ -1268,7 +1268,7 @@ int TitleBottom::handle_event()
 
 
 TitleColorThread::TitleColorThread(TitleMain *client, TitleWindow *window, int is_outline)
- : ColorThread(1, is_outline? _("Outline Color") : _("Text Color"))
+ : ColorPicker(1, is_outline? _("Outline Color") : _("Text Color"))
 {
        this->client = client;
        this->window = window;
@@ -1542,7 +1542,7 @@ int TitleFontsPopup::handle_event()
 }
 
 TitleColorPopup::TitleColorPopup(TitleMain *client, TitleWindow *window)
- : ColorThread(0, _("Color"))
+ : ColorPicker(0, _("Color"))
 {
        this->client = client;
        this->window = window;
index 2be28d18b094a6e60bcf1c49775d26d3954b7c4e..1088aa81c968ca57b4ccc8cad6e4052c671f91fd 100644 (file)
@@ -468,7 +468,7 @@ public:
        TitleMain *client;
        TitleWindow *window;
 };
-class TitleColorThread : public ColorThread
+class TitleColorThread : public ColorPicker
 {
 public:
        TitleColorThread(TitleMain *client, TitleWindow *window, int is_outline);
@@ -567,7 +567,7 @@ public:
        TitleWindow *window;
 };
 
-class TitleColorPopup : public ColorThread
+class TitleColorPopup : public ColorPicker
 {
 public:
        TitleColorPopup(TitleMain *client, TitleWindow *window);