// FIXME
lineFileEdit = dialogBox->findChildren<QLineEdit*>()[1];
#endif
-
/* Make a list of QLabel inside the QFileDialog to access the good ones */
QList<QLabel *> listLabel = dialogBox->findChildren<QLabel*>();
{
ui.setupUi( this );
- char *psz_discpath = config_GetPsz( p_intf, "qt-discdialog-path" );
+ /* Get the default configuration path for the devices */
+ psz_dvddiscpath = config_GetPsz( p_intf, "dvd" );
+ psz_vcddiscpath = config_GetPsz( p_intf, "vcd" );
+ psz_cddadiscpath = config_GetPsz( p_intf, "cd-audio" );
+
+ /* State to avoid overwritting the users changes with the configuration */
+ b_firstdvd = true;
+ b_firstvcd = true;
+ b_firstcdda = true;
#if WIN32 /* Disc drives probing for Windows */
char szDrives[512];
}
SetErrorMode(oldMode);
}
-
- int index = ui.deviceCombo->findText( qfu( psz_discpath ) );
- if( index != -1 ) ui.deviceCombo->setCurrentIndex( index );
-
#endif /* Disc Probing under Windows */
- ui.deviceCombo->setEditText( qfu( psz_discpath ) );
-
- delete psz_discpath;
-
/* CONNECTs */
BUTTONACT( ui.dvdRadioButton, updateButtons() );
BUTTONACT( ui.vcdRadioButton, updateButtons() );
CONNECT( ui.chapterSpin, valueChanged( int ), this, updateMRL());
CONNECT( ui.audioSpin, valueChanged( int ), this, updateMRL());
CONNECT( ui.subtitlesSpin, valueChanged( int ), this, updateMRL());
+
+ updateButtons();
}
DiscOpenPanel::~DiscOpenPanel()
-{}
+{
+ delete psz_dvddiscpath;
+ delete psz_vcddiscpath;
+ delete psz_cddadiscpath;
+}
void DiscOpenPanel::clear()
{
ui.titleSpin->setValue( 0 );
ui.chapterSpin->setValue( 0 );
+ b_firstcdda = true;
+ b_firstdvd = true;
+ b_firstvcd = true;
}
+#ifdef WIN32
+ #define setDrive( psz_name ) {\
+ int index = ui.deviceCombo->findText( qfu( psz_name ) ); \
+ if( index != -1 ) ui.deviceCombo->setCurrentIndex( index );}
+#else
+ #define setDrive( psz_name ) {\
+ ui.deviceCombo->setEditText( qfu( psz_name ) ); }
+#endif
+
void DiscOpenPanel::updateButtons()
{
if ( ui.dvdRadioButton->isChecked() )
{
+ if( b_firstdvd )
+ {
+ setDrive( psz_dvddiscpath );
+ b_firstdvd = false;
+ }
ui.titleLabel->setText( qtr("Title") );
ui.chapterLabel->show();
ui.chapterSpin->show();
}
else if ( ui.vcdRadioButton->isChecked() )
{
+ if( b_firstvcd )
+ {
+ setDrive( psz_vcddiscpath );
+ b_firstvcd = false;
+ }
ui.titleLabel->setText( qtr("Entry") );
ui.chapterLabel->hide();
ui.chapterSpin->hide();
ui.diskOptionBox_2->show();
}
- else
+ else /* CDDA */
{
+ if( b_firstcdda )
+ {
+ setDrive( psz_cddadiscpath );
+ b_firstcdda = false;
+ }
ui.titleLabel->setText( qtr("Track") );
ui.chapterLabel->hide();
ui.chapterSpin->hide();
updateMRL();
}
-
void DiscOpenPanel::updateMRL()
{
QString mrl = "";
}
void DiscOpenPanel::accept()
-{
- /* set dialog box current directory as last known path */
- config_PutPsz( p_intf, "qt-discdialog-path",
- qtu( ui.deviceCombo->currentText() ) );
-}
+{}
/**************************************************************************
* Open Network streams and URL pages *
#define FILEDIALOG_PATH_TEXT N_("Path to use in openfile dialog")
-#define DISCDIALOG_PATH_TEXT N_("Path to device to use in open disc dialog")
-
#define NOTIFICATION_TEXT N_("Show notification popup on track change")
#define NOTIFICATION_LONGTEXT N_( \
"Show a notification popup with the artist and track name when " \
FILEDIALOG_PATH_TEXT, VLC_TRUE);
change_autosave();
change_internal();
- add_string( "qt-discdialog-path", NULL, NULL, DISCDIALOG_PATH_TEXT,
- DISCDIALOG_PATH_TEXT, VLC_TRUE);
- change_autosave();
- change_internal();
add_bool( "qt-notification", VLC_TRUE, NULL, NOTIFICATION_TEXT,
NOTIFICATION_LONGTEXT, VLC_FALSE );