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;
|
return;
|
||||||
|
|
||||||
std::ostringstream oss;
|
std::ostringstream oss;
|
||||||
|
if (s.session()->frame()){
|
||||||
if (s.session()->frame()){
|
std::string numsource = std::to_string(s.session()->numSource()) + " source" + (s.session()->numSource()>1 ? "s" : "");
|
||||||
if (brief_) {
|
if (brief_) {
|
||||||
oss << SystemToolkit::filename(s.path()) << " (";
|
oss << SystemToolkit::filename(s.path()) << std::endl;
|
||||||
oss << s.session()->numSource() << " sources)" << std::endl;
|
oss << numsource << ", " ;
|
||||||
oss << "RGB, ";
|
oss << "RGB, " << s.session()->frame()->width() << " x " << s.session()->frame()->height();
|
||||||
oss << s.session()->frame()->width() << " x " << s.session()->frame()->height();
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
oss << s.path() << std::endl;
|
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();
|
oss << s.session()->frame()->width() << " x " << s.session()->frame()->height();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -173,10 +172,17 @@ void InfoVisitor::visit (SessionGroupSource& s)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
std::ostringstream oss;
|
std::ostringstream oss;
|
||||||
oss << s.session()->numSource() << " sources in group" << std::endl;
|
|
||||||
if (s.session()->frame()){
|
if (s.session()->frame()){
|
||||||
oss << "RGB, ";
|
std::string numsource = std::to_string(s.session()->numSource()) + " source" + (s.session()->numSource()>1 ? "s" : "");
|
||||||
oss << s.session()->frame()->width() << " x " << s.session()->frame()->height();
|
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();
|
information_ = oss.str();
|
||||||
|
|||||||
@@ -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 ()
|
void SessionSource::replay ()
|
||||||
{
|
{
|
||||||
if (session_) {
|
if (session_) {
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ public:
|
|||||||
void update (float dt) override;
|
void update (float dt) override;
|
||||||
void setActive (bool on) override;
|
void setActive (bool on) override;
|
||||||
bool playing () const override { return !paused_; }
|
bool playing () const override { return !paused_; }
|
||||||
void play (bool on) override { paused_ = !on; }
|
void play (bool on) override;
|
||||||
bool playable () const override { return true; }
|
bool playable () const override { return true; }
|
||||||
guint64 playtime () const override { return timer_; }
|
guint64 playtime () const override { return timer_; }
|
||||||
void replay () override;
|
void replay () override;
|
||||||
|
|||||||
@@ -215,7 +215,7 @@ bool UserInterface::Init()
|
|||||||
// init dialogs
|
// init dialogs
|
||||||
sessionopendialog = new DialogToolkit::OpenSessionDialog("Open Session");
|
sessionopendialog = new DialogToolkit::OpenSessionDialog("Open Session");
|
||||||
sessionsavedialog = new DialogToolkit::SaveSessionDialog("Save Session");
|
sessionsavedialog = new DialogToolkit::SaveSessionDialog("Save Session");
|
||||||
sessionimportdialog = new DialogToolkit::OpenSessionDialog("Import Session");
|
sessionimportdialog = new DialogToolkit::OpenSessionDialog("Import Sources");
|
||||||
|
|
||||||
// init tooltips
|
// init tooltips
|
||||||
ImGuiToolkit::setToolTipsEnabled(Settings::application.show_tooptips);
|
ImGuiToolkit::setToolTipsEnabled(Settings::application.show_tooptips);
|
||||||
|
|||||||
Reference in New Issue
Block a user