[vlc-devel] [PATCH] Qt: Enable Stop Time in media convert dialog

Rajeesh K V rajeeshknambiar at gmail.com
Wed Aug 17 07:08:40 CEST 2016



On Tue, Aug 16, 2016 at 1:30 PM, Rajeesh K V 
<rajeeshknambiar at gmail.com> wrote:
> Hello,
> 
> Attached patch adds and enables "Stop Time" in file convert/save
> dialog in Qt interface. Please review.

My apologies for the blob attachment (gmail web :-/).
Attached the patch inline:

commit 4591df8358641850c2af7ab52ee9b7ce46bd6072
Author: Rajeesh K V <rajeeshknambiar at gmail.com>
Date:   Tue Aug 16 10:38:46 2016 +0530

    Qt: Enable Stop Time in media convert dialog

    Convert/Save dialog has had option to specify 'start time' but
    no option for setting 'stop time' in the interface. The backend
    'stop-time' option was already present. This patch simply adds
    and enables the edit widget for end time in Qt interface.

diff --git a/modules/gui/qt/dialogs/open.cpp 
b/modules/gui/qt/dialogs/open.cpp
index 224cfa5..a894d8c 100644
--- a/modules/gui/qt/dialogs/open.cpp
+++ b/modules/gui/qt/dialogs/open.cpp
@@ -156,6 +156,7 @@ OpenDialog::OpenDialog( QWidget *parent,
     CONNECT( ui.slaveText, textChanged( const QString& ), this, 
updateMRL() );
     CONNECT( ui.cacheSpinBox, valueChanged( int ), this, updateMRL() );
     CONNECT( ui.startTimeTimeEdit, timeChanged ( const QTime& ), this, 
updateMRL() );
+    CONNECT( ui.stopTimeTimeEdit, timeChanged ( const QTime& ), this, 
updateMRL() );
     BUTTONACT( ui.advancedCheckBox, toggleAdvancedPanel() );
     BUTTONACT( ui.slaveBrowseButton, browseInputSlave() );

@@ -179,6 +180,7 @@ OpenDialog::OpenDialog( QWidget *parent,

     /* enforce section due to .ui bug */
     ui.startTimeTimeEdit->setCurrentSection( 
QDateTimeEdit::SecondSection );
+    ui.stopTimeTimeEdit->setCurrentSection( 
QDateTimeEdit::SecondSection );

     setMinimumSize( sizeHint() );
     setMaximumWidth( 900 );
@@ -443,6 +445,14 @@ void OpenDialog::updateMRL() {
                 ) ) )
                .arg( ui.startTimeTimeEdit->time().msec(), 3, 10, 
QChar('0') );
     }
+    if( ui.stopTimeTimeEdit->time() > ui.startTimeTimeEdit->time() ) {
+        mrl += QString( " :stop-time=%1.%2" )
+                .arg( QString::number(
+                    ui.stopTimeTimeEdit->minimumTime().secsTo(
+                        ui.stopTimeTimeEdit->time()
+                ) ) )
+               .arg( ui.stopTimeTimeEdit->time().msec(), 3, 10, 
QChar('0') );
+    }
     ui.advancedLineInput->setText( mrl );
     ui.mrlLine->setText( itemsMRL.join( " " ) );
     /* Only allow action without valid items */
diff --git a/modules/gui/qt/ui/open.ui b/modules/gui/qt/ui/open.ui
index ea510db..05d8193 100644
--- a/modules/gui/qt/ui/open.ui
+++ b/modules/gui/qt/ui/open.ui
@@ -169,6 +169,19 @@
         </property>
        </widget>
       </item>
+      <item row="1" column="3">
+       <widget class="QLabel" name="label_3">
+        <property name="text">
+         <string>Stop Time</string>
+        </property>
+        <property name="alignment">
+         <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+        </property>
+        <property name="buddy">
+         <cstring>stopTimeTimeEdit</cstring>
+        </property>
+       </widget>
+      </item>
       <item row="8" column="0">
        <widget class="QLabel" name="label">
         <property name="text">
@@ -241,6 +254,25 @@
         </property>
        </widget>
       </item>
+      <item row="1" column="4" colspan="2">
+       <widget class="QTimeEdit" name="stopTimeTimeEdit">
+        <property name="toolTip">
+         <string>Change the stop time for the media</string>
+        </property>
+        <property name="alignment">
+         <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+        </property>
+        <property name="currentSection">
+         <enum>QDateTimeEdit::HourSection</enum>
+        </property>
+        <property name="displayFormat">
+         <string>HH'H':mm'm':ss's'.zzz</string>
+        </property>
+        <property name="timeSpec">
+         <enum>Qt::LocalTime</enum>
+        </property>
+       </widget>
+      </item>
       <item row="4" column="0" colspan="6">
        <widget class="QCheckBox" name="slaveCheckbox">
         <property name="text">
@@ -271,6 +303,7 @@
   <tabstop>advancedCheckBox</tabstop>
   <tabstop>cacheSpinBox</tabstop>
   <tabstop>startTimeTimeEdit</tabstop>
+  <tabstop>stopTimeTimeEdit</tabstop>
   <tabstop>slaveCheckbox</tabstop>
   <tabstop>slaveText</tabstop>
   <tabstop>slaveBrowseButton</tabstop>



> 
> 
> --
> Regards,
> Rajeesh



More information about the vlc-devel mailing list