changed preview generator functions to a static function
This commit is contained in:
+1
-1
@@ -649,7 +649,7 @@ void LoadThread::run() {
|
||||
emit success(); // run in main thread
|
||||
|
||||
for (int i=0;i<loaded_media_items.size();i++) {
|
||||
PreviewGenerator* pg = new PreviewGenerator(loaded_media_items.at(i));
|
||||
PreviewGenerator::AnalyzeMedia(loaded_media_items.at(i));
|
||||
}
|
||||
} else {
|
||||
if (error_str.isEmpty()) {
|
||||
|
||||
@@ -593,3 +593,11 @@ void PreviewGenerator::cancel() {
|
||||
cancelled_ = true;
|
||||
wait();
|
||||
}
|
||||
|
||||
void PreviewGenerator::AnalyzeMedia(Media *m)
|
||||
{
|
||||
// PreviewGenerator's constructor starts the thread, sets a reference of itself as the media's generator,
|
||||
// and connects its thread completion to its own deletion, therefore handling its own memory. Nothing else needs to
|
||||
// be done.
|
||||
new PreviewGenerator(m);
|
||||
}
|
||||
|
||||
@@ -42,6 +42,8 @@ public:
|
||||
PreviewGenerator(Media*);
|
||||
void run();
|
||||
void cancel();
|
||||
|
||||
static void AnalyzeMedia(Media*);
|
||||
private:
|
||||
void parse_media();
|
||||
bool retrieve_preview(const QString &hash);
|
||||
|
||||
+1
-1
@@ -832,7 +832,7 @@ void Project::process_file_list(QStringList& files, bool recursive, Media* repla
|
||||
|
||||
for (int i=0;i<last_imported_media.size();i++) {
|
||||
// generate waveform/thumbnail in another thread
|
||||
PreviewGenerator* pg = new PreviewGenerator(last_imported_media.at(i));
|
||||
PreviewGenerator::AnalyzeMedia(last_imported_media.at(i));
|
||||
}
|
||||
} else {
|
||||
delete ca;
|
||||
|
||||
+1
-1
@@ -528,7 +528,7 @@ void ReplaceMediaCommand::replace(QString& filename) {
|
||||
QStringList files;
|
||||
files.append(filename);
|
||||
panel_project->process_file_list(files, false, item, nullptr);
|
||||
PreviewGenerator* pg = new PreviewGenerator(item);
|
||||
PreviewGenerator::AnalyzeMedia(item);
|
||||
}
|
||||
|
||||
void ReplaceMediaCommand::doUndo() {
|
||||
|
||||
+1
-1
@@ -220,6 +220,6 @@ namespace olive {
|
||||
* @brief A global MenuHelper object to assist menu creation throughout Olive.
|
||||
*/
|
||||
extern MenuHelper MenuHelper;
|
||||
}
|
||||
};
|
||||
|
||||
#endif // MENUHELPER_H
|
||||
|
||||
Reference in New Issue
Block a user