32
class ViewMediaVis: public ObjVisitor
35
typedef boost::function<bool(TrackLayout&)> Fnr;
38
static Fnr GetViewerFunctor(MediaItem mi)
47
void Visit(VideoMD& obj);
48
void Visit(VideoChapterMD& obj);
51
void ViewMedia(TrackLayout& layout, MediaItem mi);
53
void FillThumbnail(const Gtk::TreeIter& itr, RefPtr<MediaStore> ms, Media& md);
55
// определить тип файла и создать по нему соответствующее медиа
56
StorageItem CreateMedia(const char* fname, std::string& err_string);
58
// заполнить медиа в браузере
59
void PublishMedia(const Gtk::TreeIter& itr, RefPtr<MediaStore> ms, MediaItem mi);
60
void PublishMediaStore(RefPtr<MediaStore> ms);
32
typedef boost::function<bool(TrackLayout&)> BoolTLFunctor;
33
BoolTLFunctor GetViewerFunctor(MediaItem mi);
62
35
void PackMBWindow(Gtk::HPaned& fcw_hpaned, Timeline::DAMonitor& mon, TrackLayout& layout,
63
36
MediaBrowser& brw);
65
// pth - куда вставлять; по выходу pth равен позиции вставленного
66
// insert_after - вставить после pth, по возможности
67
bool TryAddMedia(const char* fname, Gtk::TreePath& pth, std::string& err_str,
68
bool insert_after = true);
69
// интерактивный вариант TryAddMedia()
70
void TryAddMedias(const Str::List& paths, MediaBrowser& brw,
71
Gtk::TreePath& brw_pth, bool insert_after);
72
// desc - метка происхождения, добавления
73
void TryAddMediaQuiet(const std::string& fname, const std::string& desc);
74
void MuxAddStreams(const std::string& src_fname);
76
// ограничиваем возможность вставки верхним уровнем
77
// want_ia - где хотим вставить (dnd)
78
// возвращает - куда надо вставить (до или после)
79
bool ValidateMediaInsertionPos(Gtk::TreePath& brw_pth, bool want_ia = true);
81
38
} // namespace Project
85
void RunImport(Gtk::Window& par_win, const std::string& dvd_path = std::string());
89
40
#endif // #ifndef __MGUI_PROJECT_MB_ACTIONS_H__