mirror of
https://github.com/brunoherbelin/vimix.git
synced 2025-12-11 18:34:58 +01:00
Improve group session (play, info)
This commit is contained in:
@@ -148,17 +148,16 @@ void InfoVisitor::visit (SessionFileSource& s)
|
||||
return;
|
||||
|
||||
std::ostringstream oss;
|
||||
|
||||
if (s.session()->frame()){
|
||||
std::string numsource = std::to_string(s.session()->numSource()) + " source" + (s.session()->numSource()>1 ? "s" : "");
|
||||
if (brief_) {
|
||||
oss << SystemToolkit::filename(s.path()) << " (";
|
||||
oss << s.session()->numSource() << " sources)" << std::endl;
|
||||
oss << "RGB, ";
|
||||
oss << s.session()->frame()->width() << " x " << s.session()->frame()->height();
|
||||
oss << SystemToolkit::filename(s.path()) << std::endl;
|
||||
oss << numsource << ", " ;
|
||||
oss << "RGB, " << s.session()->frame()->width() << " x " << s.session()->frame()->height();
|
||||
}
|
||||
else {
|
||||
oss << s.path() << std::endl;
|
||||
oss << "RGB" << std::endl;
|
||||
oss << "MIX session (" << numsource << "), RGB" << std::endl;
|
||||
oss << s.session()->frame()->width() << " x " << s.session()->frame()->height();
|
||||
}
|
||||
}
|
||||
@@ -173,11 +172,18 @@ void InfoVisitor::visit (SessionGroupSource& s)
|
||||
return;
|
||||
|
||||
std::ostringstream oss;
|
||||
oss << s.session()->numSource() << " sources in group" << std::endl;
|
||||
if (s.session()->frame()){
|
||||
oss << "RGB, ";
|
||||
std::string numsource = std::to_string(s.session()->numSource()) + " source" + (s.session()->numSource()>1 ? "s" : "");
|
||||
if (brief_) {
|
||||
oss << numsource << ", " ;
|
||||
oss << "RGB, " << s.session()->frame()->width() << " x " << s.session()->frame()->height();
|
||||
}
|
||||
else {
|
||||
oss << "Group of " << numsource << std::endl;
|
||||
oss << "RGB" << std::endl;
|
||||
oss << s.session()->frame()->width() << " x " << s.session()->frame()->height();
|
||||
}
|
||||
}
|
||||
|
||||
information_ = oss.str();
|
||||
current_id_ = s.id();
|
||||
|
||||
@@ -119,6 +119,16 @@ void SessionSource::update(float dt)
|
||||
|
||||
}
|
||||
|
||||
void SessionSource::play (bool on)
|
||||
{
|
||||
paused_ = !on;
|
||||
|
||||
if (session_) {
|
||||
for( SourceList::iterator it = session_->begin(); it != session_->end(); ++it)
|
||||
(*it)->setActive(!paused_);
|
||||
}
|
||||
}
|
||||
|
||||
void SessionSource::replay ()
|
||||
{
|
||||
if (session_) {
|
||||
|
||||
@@ -15,7 +15,7 @@ public:
|
||||
void update (float dt) override;
|
||||
void setActive (bool on) override;
|
||||
bool playing () const override { return !paused_; }
|
||||
void play (bool on) override { paused_ = !on; }
|
||||
void play (bool on) override;
|
||||
bool playable () const override { return true; }
|
||||
guint64 playtime () const override { return timer_; }
|
||||
void replay () override;
|
||||
|
||||
@@ -215,7 +215,7 @@ bool UserInterface::Init()
|
||||
// init dialogs
|
||||
sessionopendialog = new DialogToolkit::OpenSessionDialog("Open Session");
|
||||
sessionsavedialog = new DialogToolkit::SaveSessionDialog("Save Session");
|
||||
sessionimportdialog = new DialogToolkit::OpenSessionDialog("Import Session");
|
||||
sessionimportdialog = new DialogToolkit::OpenSessionDialog("Import Sources");
|
||||
|
||||
// init tooltips
|
||||
ImGuiToolkit::setToolTipsEnabled(Settings::application.show_tooptips);
|
||||
|
||||
Reference in New Issue
Block a user