-
-#include <QApplication>
-#include <QFileInfo>
-
-// -------------------------------------------------------------------------
-cpPluginsIO::ImageWriterQDialog::
-ImageWriterQDialog( QWidget* parent )
- : QFileDialog( parent ),
- m_ProcessObject( NULL )
-{
- this->connect(
- this, SIGNAL( accepted( ) ), this, SLOT( _dlg_Accepted( ) )
- );
- this->setWindowTitle( "Save an image" );
-}
-
-// -------------------------------------------------------------------------
-cpPluginsIO::ImageWriterQDialog::
-~ImageWriterQDialog( )
-{
-}
-
-// -------------------------------------------------------------------------
-void cpPluginsIO::ImageWriterQDialog::
-setProcessObject( cpPlugins::BaseObjects::ProcessObject* obj )
-{
- if( obj == NULL )
- return;
- this->m_ProcessObject = obj;
- auto parameters = this->m_ProcessObject->GetParameters( );
- auto extensions = parameters->GetAcceptedFileExtensions( "FileName" );
- auto filename = parameters->GetSaveFileName( "FileName" );
-
- QStringList filters;
- if( extensions != "" )
- filters << extensions.c_str( );
- filters << "Any file (*)";
- this->setFileMode( QFileDialog::AnyFile );
- this->setNameFilters( filters );
- this->setAcceptMode( QFileDialog::AcceptSave );
- if( filename != "" )
- {
- QFileInfo info( filename.c_str( ) );
- if( info.exists( ) )
- this->setDirectory( info.canonicalPath( ) );
- else
- this->setDirectory( "." );
- }
- else
- this->setDirectory( "." );
-}
-
-// -------------------------------------------------------------------------
-void cpPluginsIO::ImageWriterQDialog::
-_dlg_Accepted( )
-{
- if( this->m_ProcessObject != NULL )
- {
- auto param = this->m_ProcessObject->GetParameters( );
- auto files = this->selectedFiles( );
- if( files.size( ) > 0 )
- param->SetSaveFileName( "FileName", files.begin( )->toStdString( ) );
-
- } // fi
-}
-