mirror of
https://github.com/ElvishArtisan/rivendell.git
synced 2025-08-16 08:34:12 +02:00
2021-03-25 Fred Gleason <fredg@paravelsystems.com>
* Modified the 'Time' buttons in 'RDMarkerDialog' to show currently available 'In' and 'Out' possibilities. Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
This commit is contained in:
parent
1790af2a94
commit
1a00c868f2
@ -21344,3 +21344,6 @@
|
|||||||
attributes.
|
attributes.
|
||||||
2021-03-25 Fred Gleason <fredg@paravelsystems.com>
|
2021-03-25 Fred Gleason <fredg@paravelsystems.com>
|
||||||
* Refactored layout of 'RDMarkerDialog'
|
* Refactored layout of 'RDMarkerDialog'
|
||||||
|
2021-03-25 Fred Gleason <fredg@paravelsystems.com>
|
||||||
|
* Modified the 'Time' buttons in 'RDMarkerDialog' to show currently
|
||||||
|
available 'In' and 'Out' possibilities.
|
||||||
|
@ -53,24 +53,33 @@ RDMarkerDialog::RDMarkerDialog(const QString &caption,int card,int port,
|
|||||||
this,SLOT(amplitudeDownData()));
|
this,SLOT(amplitudeDownData()));
|
||||||
|
|
||||||
//
|
//
|
||||||
// Time
|
// Time Scaling Buttons
|
||||||
//
|
//
|
||||||
d_time_box=new QGroupBox(tr("Time"),this);
|
d_time_box=new QGroupBox(tr("Time"),this);
|
||||||
d_time_box->setFont(labelFont());
|
d_time_box->setFont(labelFont());
|
||||||
d_time_fullin_button=new QPushButton(tr("Full\nIn"),d_time_box);
|
d_time_fullin_button=new QPushButton(tr("Full\nIn"),d_time_box);
|
||||||
d_time_fullin_button->setFont(buttonFont());
|
d_time_fullin_button->setFont(buttonFont());
|
||||||
connect(d_time_fullin_button,SIGNAL(clicked()),this,SLOT(timeFullInData()));
|
connect(d_time_fullin_button,SIGNAL(clicked()),
|
||||||
|
d_marker_view,SLOT(maxShrinkTime()));
|
||||||
|
connect(d_marker_view,SIGNAL(canShrinkTimeChanged(bool)),
|
||||||
|
d_time_fullin_button,SLOT(setEnabled(bool)));
|
||||||
|
|
||||||
d_time_in_button=new RDTransportButton(RDTransportButton::Up,d_time_box);
|
d_time_in_button=new RDTransportButton(RDTransportButton::Up,d_time_box);
|
||||||
connect(d_time_in_button,SIGNAL(clicked()),this,SLOT(timeInData()));
|
connect(d_time_in_button,SIGNAL(clicked()),d_marker_view,SLOT(shrinkTime()));
|
||||||
|
connect(d_marker_view,SIGNAL(canShrinkTimeChanged(bool)),
|
||||||
|
d_time_in_button,SLOT(setEnabled(bool)));
|
||||||
|
|
||||||
d_time_out_button=new RDTransportButton(RDTransportButton::Down,d_time_box);
|
d_time_out_button=new RDTransportButton(RDTransportButton::Down,d_time_box);
|
||||||
connect(d_time_out_button,SIGNAL(clicked()),this,SLOT(timeOutData()));
|
connect(d_time_out_button,SIGNAL(clicked()),d_marker_view,SLOT(growTime()));
|
||||||
|
connect(d_marker_view,SIGNAL(canGrowTimeChanged(bool)),
|
||||||
|
d_time_out_button,SLOT(setEnabled(bool)));
|
||||||
|
|
||||||
d_time_fullout_button=new QPushButton(tr("Full\nOut"),d_time_box);
|
d_time_fullout_button=new QPushButton(tr("Full\nOut"),d_time_box);
|
||||||
d_time_fullout_button->setFont(buttonFont());
|
d_time_fullout_button->setFont(buttonFont());
|
||||||
connect(d_time_fullout_button,SIGNAL(clicked()),
|
connect(d_time_fullout_button,SIGNAL(clicked()),
|
||||||
d_marker_view,SLOT(setMaximumShrinkFactor()));
|
d_marker_view,SLOT(maxGrowTime()));
|
||||||
|
connect(d_marker_view,SIGNAL(canGrowTimeChanged(bool)),
|
||||||
|
d_time_fullout_button,SLOT(setEnabled(bool)));
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
* Transport Section
|
* Transport Section
|
||||||
@ -157,6 +166,10 @@ int RDMarkerDialog::exec(unsigned cartnum,int cutnum)
|
|||||||
}
|
}
|
||||||
d_marker_view->
|
d_marker_view->
|
||||||
setSelectedMarkers(RDMarkerHandle::CutStart,RDMarkerHandle::CutEnd);
|
setSelectedMarkers(RDMarkerHandle::CutStart,RDMarkerHandle::CutEnd);
|
||||||
|
d_time_fullin_button->setEnabled(d_marker_view->canShrinkTime());
|
||||||
|
d_time_in_button->setEnabled(d_marker_view->canShrinkTime());
|
||||||
|
d_time_out_button->setEnabled(d_marker_view->canGrowTime());
|
||||||
|
d_time_fullout_button->setEnabled(d_marker_view->canGrowTime());
|
||||||
|
|
||||||
return QDialog::exec();
|
return QDialog::exec();
|
||||||
}
|
}
|
||||||
@ -174,27 +187,6 @@ void RDMarkerDialog::amplitudeDownData()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void RDMarkerDialog::timeFullInData()
|
|
||||||
{
|
|
||||||
d_marker_view->setShrinkFactor(1);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void RDMarkerDialog::timeInData()
|
|
||||||
{
|
|
||||||
int sf=d_marker_view->shrinkFactor();
|
|
||||||
if(sf>1) {
|
|
||||||
d_marker_view->setShrinkFactor(sf/2);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void RDMarkerDialog::timeOutData()
|
|
||||||
{
|
|
||||||
d_marker_view->setShrinkFactor(2*d_marker_view->shrinkFactor());
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void RDMarkerDialog::okData()
|
void RDMarkerDialog::okData()
|
||||||
{
|
{
|
||||||
d_marker_view->save();
|
d_marker_view->save();
|
||||||
|
@ -74,9 +74,6 @@ class RDMarkerDialog : public RDDialog
|
|||||||
private slots:
|
private slots:
|
||||||
void amplitudeUpData();
|
void amplitudeUpData();
|
||||||
void amplitudeDownData();
|
void amplitudeDownData();
|
||||||
void timeFullInData();
|
|
||||||
void timeInData();
|
|
||||||
void timeOutData();
|
|
||||||
void okData();
|
void okData();
|
||||||
void cancelData();
|
void cancelData();
|
||||||
|
|
||||||
|
@ -456,6 +456,18 @@ int RDMarkerView::shrinkFactor() const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool RDMarkerView::canShrinkTime() const
|
||||||
|
{
|
||||||
|
return d_shrink_factor>1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool RDMarkerView::canGrowTime() const
|
||||||
|
{
|
||||||
|
return d_shrink_factor<d_max_shrink_factor;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
int RDMarkerView::pointerValue(RDMarkerHandle::PointerRole role)
|
int RDMarkerView::pointerValue(RDMarkerHandle::PointerRole role)
|
||||||
{
|
{
|
||||||
return d_pointers[role];
|
return d_pointers[role];
|
||||||
@ -663,21 +675,6 @@ void RDMarkerView::setAudioGain(int lvl)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void RDMarkerView::setShrinkFactor(int sf)
|
|
||||||
{
|
|
||||||
if((d_shrink_factor!=sf)&&(sf<=d_max_shrink_factor)) {
|
|
||||||
d_shrink_factor=sf;
|
|
||||||
WriteWave();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void RDMarkerView::setMaximumShrinkFactor()
|
|
||||||
{
|
|
||||||
setShrinkFactor(d_max_shrink_factor);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
bool RDMarkerView::setCut(QString *err_msg,unsigned cartnum,int cutnum)
|
bool RDMarkerView::setCut(QString *err_msg,unsigned cartnum,int cutnum)
|
||||||
{
|
{
|
||||||
clear();
|
clear();
|
||||||
@ -736,6 +733,38 @@ void RDMarkerView::gotoEnd()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void RDMarkerView::maxShrinkTime()
|
||||||
|
{
|
||||||
|
if(canShrinkTime()) {
|
||||||
|
SetShrinkFactor(1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void RDMarkerView::shrinkTime()
|
||||||
|
{
|
||||||
|
if(canShrinkTime()) {
|
||||||
|
SetShrinkFactor(d_shrink_factor/2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void RDMarkerView::growTime()
|
||||||
|
{
|
||||||
|
if(canGrowTime()) {
|
||||||
|
SetShrinkFactor(d_shrink_factor*2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void RDMarkerView::maxGrowTime()
|
||||||
|
{
|
||||||
|
if(canGrowTime()) {
|
||||||
|
SetShrinkFactor(d_max_shrink_factor);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void RDMarkerView::save()
|
void RDMarkerView::save()
|
||||||
{
|
{
|
||||||
QString sql;
|
QString sql;
|
||||||
@ -1107,13 +1136,13 @@ void RDMarkerView::wheelEvent(QWheelEvent *e)
|
|||||||
|
|
||||||
if(d_wheel_angle>=360) {
|
if(d_wheel_angle>=360) {
|
||||||
if(shrinkFactor()>1) {
|
if(shrinkFactor()>1) {
|
||||||
setShrinkFactor(shrinkFactor()/2);
|
SetShrinkFactor(shrinkFactor()/2);
|
||||||
}
|
}
|
||||||
d_wheel_angle=0;
|
d_wheel_angle=0;
|
||||||
}
|
}
|
||||||
if(d_wheel_angle<=-360) {
|
if(d_wheel_angle<=-360) {
|
||||||
if(shrinkFactor()<d_max_shrink_factor) {
|
if(shrinkFactor()<d_max_shrink_factor) {
|
||||||
setShrinkFactor(shrinkFactor()*2);
|
SetShrinkFactor(shrinkFactor()*2);
|
||||||
}
|
}
|
||||||
d_wheel_angle=0;
|
d_wheel_angle=0;
|
||||||
}
|
}
|
||||||
@ -1132,6 +1161,17 @@ int RDMarkerView::Msec(int frame) const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void RDMarkerView::SetShrinkFactor(int sf)
|
||||||
|
{
|
||||||
|
if((d_shrink_factor!=sf)&&(sf<=d_max_shrink_factor)) {
|
||||||
|
d_shrink_factor=sf;
|
||||||
|
WriteWave();
|
||||||
|
emit canShrinkTimeChanged(canShrinkTime());
|
||||||
|
emit canGrowTimeChanged(canGrowTime());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
bool RDMarkerView::LoadCutData()
|
bool RDMarkerView::LoadCutData()
|
||||||
{
|
{
|
||||||
QString sql;
|
QString sql;
|
||||||
|
@ -91,6 +91,8 @@ class RDMarkerView : public RDWidget
|
|||||||
int audioGain() const;
|
int audioGain() const;
|
||||||
unsigned sampleRate() const;
|
unsigned sampleRate() const;
|
||||||
int shrinkFactor() const;
|
int shrinkFactor() const;
|
||||||
|
bool canShrinkTime() const;
|
||||||
|
bool canGrowTime() const;
|
||||||
int pointerValue(RDMarkerHandle::PointerRole role);
|
int pointerValue(RDMarkerHandle::PointerRole role);
|
||||||
RDMarkerHandle::PointerRole selectedMarker(RDMarkerHandle::PointerType type)
|
RDMarkerHandle::PointerRole selectedMarker(RDMarkerHandle::PointerType type)
|
||||||
const;
|
const;
|
||||||
@ -107,6 +109,8 @@ class RDMarkerView : public RDWidget
|
|||||||
void pointerValueChanged(RDMarkerHandle::PointerRole role,int msec);
|
void pointerValueChanged(RDMarkerHandle::PointerRole role,int msec);
|
||||||
void selectedMarkersChanged(RDMarkerHandle::PointerRole start_role,
|
void selectedMarkersChanged(RDMarkerHandle::PointerRole start_role,
|
||||||
RDMarkerHandle::PointerRole end_role);
|
RDMarkerHandle::PointerRole end_role);
|
||||||
|
void canShrinkTimeChanged(bool state);
|
||||||
|
void canGrowTimeChanged(bool state);
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void setSelectedMarkers(RDMarkerHandle::PointerRole start_role,
|
void setSelectedMarkers(RDMarkerHandle::PointerRole start_role,
|
||||||
@ -116,13 +120,15 @@ class RDMarkerView : public RDWidget
|
|||||||
void trimStart(int dbfs);
|
void trimStart(int dbfs);
|
||||||
void trimEnd(int dbfs);
|
void trimEnd(int dbfs);
|
||||||
void setAudioGain(int lvl);
|
void setAudioGain(int lvl);
|
||||||
void setShrinkFactor(int sf);
|
|
||||||
void setMaximumShrinkFactor();
|
|
||||||
bool setCut(QString *err_msg,unsigned cartnum,int cutnum);
|
bool setCut(QString *err_msg,unsigned cartnum,int cutnum);
|
||||||
void setCursorPosition(unsigned msec);
|
void setCursorPosition(unsigned msec);
|
||||||
void gotoCursor();
|
void gotoCursor();
|
||||||
void gotoHome();
|
void gotoHome();
|
||||||
void gotoEnd();
|
void gotoEnd();
|
||||||
|
void maxShrinkTime();
|
||||||
|
void shrinkTime();
|
||||||
|
void growTime();
|
||||||
|
void maxGrowTime();
|
||||||
void save();
|
void save();
|
||||||
void clear();
|
void clear();
|
||||||
|
|
||||||
@ -144,6 +150,7 @@ class RDMarkerView : public RDWidget
|
|||||||
private:
|
private:
|
||||||
int Frame(int msec) const;
|
int Frame(int msec) const;
|
||||||
int Msec(int frame) const;
|
int Msec(int frame) const;
|
||||||
|
void SetShrinkFactor(int sf);
|
||||||
void InterlockMarkerPair(RDMarkerHandle::PointerRole start_marker);
|
void InterlockMarkerPair(RDMarkerHandle::PointerRole start_marker);
|
||||||
void InterlockFadeMarkerPair();
|
void InterlockFadeMarkerPair();
|
||||||
bool LoadCutData();
|
bool LoadCutData();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user