* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
-#include "qt4.hpp"
#include "dialogs/errors.hpp"
#include "dialogs/interaction.hpp"
-#include "util/qvlcframe.hpp"
+#include "main_interface.hpp"
#include <QLabel>
#include <QLineEdit>
panel->setLayout( grid );
layout->addWidget( panel );
}
- else if( p_dialog->i_flags & DIALOG_USER_PROGRESS ||
- /* TEMPORARY ! */ p_dialog->i_flags & DIALOG_INTF_PROGRESS )
+ else if( p_dialog->i_flags & DIALOG_USER_PROGRESS )
{
dialog = new QWidget( 0 );layout = new QVBoxLayout( dialog );
layout->setMargin( 2 );
progressBar = new QProgressBar;
progressBar->setMaximum( 1000 );
progressBar->setTextVisible( true );
- progressBar->setOrientation(Qt::Horizontal);
+ progressBar->setOrientation( Qt::Horizontal );
layout->addWidget( progressBar );
}
+ else if( p_dialog->i_flags & DIALOG_INTF_PROGRESS )
+ {
+ progressBar = p_intf->p_sys->p_mi->pgBar;
+ progressBar->show();
+ }
else if( p_dialog->i_flags & DIALOG_PSZ_INPUT_OK_CANCEL )
{
dialog = new QWidget( 0 );layout = new QVBoxLayout( dialog );
void InteractionDialog::update()
{
- if( p_dialog->i_flags & DIALOG_USER_PROGRESS )
+ if( p_dialog->i_flags & DIALOG_USER_PROGRESS ||
+ p_dialog->i_flags & DIALOG_INTF_PROGRESS )
{
assert( progressBar );
- progressBar->setValue( (int)(p_dialog->val.f_float*1000) );
- msg_Err( p_intf, "Setting progress to %i\n", progressBar->value() );
+ progressBar->setValue( (int)( p_dialog->val.f_float * 10 ) );
+ description->setText( qfu( p_dialog->psz_description ) );
}
+
+ if( ( p_dialog->i_flags & DIALOG_INTF_PROGRESS ) &&
+ ( p_dialog->val.f_float >= 100.0 ) )
+ progressBar->hide();
+ if( ( p_dialog->i_flags & DIALOG_USER_PROGRESS ) &&
+ ( p_dialog->val.f_float >= 100.0 ) )
+ altButton->setText( qtr( "close" ) );
}
InteractionDialog::~InteractionDialog()
{
-// if( panel ) delete panel;
- if( dialog ) delete dialog;
+// delete panel;
+ delete dialog;
}
void InteractionDialog::defaultB()
void InteractionDialog::Finish( int i_ret )
{
- vlc_mutex_lock( &p_dialog->p_interaction->object_lock );
+ vlc_object_lock( p_dialog->p_interaction );
if( p_dialog->i_flags & DIALOG_LOGIN_PW_OK_CANCEL )
{
}
p_dialog->i_status = ANSWERED_DIALOG;
p_dialog->i_return = i_ret;
+
+ /* Alert the Dialog_*_Progress that the user had clicked on "cancel" */
+ if( p_dialog->i_flags & DIALOG_USER_PROGRESS ||
+ p_dialog->i_flags & DIALOG_INTF_PROGRESS )
+ p_dialog->b_cancelled = true;
+
hide();
- vlc_mutex_unlock( &p_dialog->p_interaction->object_lock );
+ vlc_object_unlock( p_dialog->p_interaction );
playlist_Signal( THEPL );
}
+