void VolumeURLListProperty::addVolume_(VolumeBase* handle, bool owner /*= false*/, bool selected /*= false*/) { tgtAssert(handle, "null pointer passed"); std::string url = handle->getOrigin().getURL(); if (!containsURL(url)) addURL(url, selected, false); else removeVolume(handle, false); handleMap_[url] = handle; ownerMap_[url] = owner; }
void TransFuncListProperty::removeURL(const std::string& url) { if (!containsURL(url)) { LWARNING("removeURL(): passed URL not contained by this property: " << url); return; } // free corresponding volume, if owned by the property VolumeBase* handle = getVolume(url); if (handle) removeVolume(handle); // remove url from url list std::vector<std::string>::iterator it = std::find(value_.begin(), value_.end(), url); tgtAssert(it != value_.end(), "url not found"); value_.erase(it); // remove url from maps handleMap_.erase(url); selectionMap_.erase(url); ownerMap_.erase(url); invalidate(); }
void MainWindow::setUpApp( const QString& volume ) { this->setLocalizationLanguage() ; m_ui = new Ui::MainWindow ; m_ui->setupUi( this ) ; this->setFixedSize( this->size() ) ; m_ui->tableWidget->setColumnWidth( 0,220 ) ; m_ui->tableWidget->setColumnWidth( 1,320 ) ; m_ui->tableWidget->setColumnWidth( 2,145 ) ; m_ui->tableWidget->setColumnWidth( 4,87 ) ; m_ui->tableWidget->setColumnWidth( 5,87 ) ; m_ui->tableWidget->hideColumn( 3 ) ; #if QT_VERSION < QT_VERSION_CHECK( 5,0,0 ) m_ui->tableWidget->verticalHeader()->setResizeMode( QHeaderView::ResizeToContents ) ; #else m_ui->tableWidget->verticalHeader()->setSectionResizeMode( QHeaderView::ResizeToContents ) ; #endif m_ui->tableWidget->verticalHeader()->setMinimumSectionSize( 30 ) ; this->setAcceptDrops( true ) ; this->setWindowIcon( QIcon( ":/zuluMount.png" ) ) ; m_ui->tableWidget->setMouseTracking( true ) ; connect( m_ui->tableWidget,SIGNAL( itemEntered( QTableWidgetItem * ) ),this,SLOT( itemEntered( QTableWidgetItem * ) ) ) ; connect( m_ui->tableWidget,SIGNAL( currentItemChanged( QTableWidgetItem *,QTableWidgetItem * ) ), this,SLOT( slotCurrentItemChanged( QTableWidgetItem *,QTableWidgetItem * ) ) ) ; connect( m_ui->pbmount,SIGNAL( clicked() ),this,SLOT( pbMount() ) ) ; connect( m_ui->pbupdate,SIGNAL( clicked()),this,SLOT( pbUpdate() ) ) ; connect( m_ui->pbclose,SIGNAL( clicked() ),this,SLOT( pbClose() ) ) ; connect( m_ui->tableWidget,SIGNAL( itemClicked( QTableWidgetItem * ) ),this,SLOT( itemClicked( QTableWidgetItem * ) ) ) ; connect( m_ui->pbunlockencfs,SIGNAL( clicked() ),this,SLOT( unlockencfs() ) ) ; connect( this,SIGNAL( unlistVolume( QString ) ),this,SLOT( removeVolume( QString ) ) ) ; this->setUpShortCuts() ; this->setUpFont() ; m_trayIcon = new QSystemTrayIcon( this ) ; m_trayIcon->setIcon( QIcon( ":/zuluMount.png" ) ) ; auto trayMenu = new QMenu( this ) ; m_autoMountAction = new QAction( this ) ; m_autoMount = this->autoMount() ; m_autoMountAction->setCheckable( true ) ; m_autoMountAction->setChecked( m_autoMount ) ; m_autoMountAction->setText( tr( "Automount Volumes" ) ) ; connect( m_autoMountAction,SIGNAL( toggled( bool ) ),this,SLOT( autoMountToggled( bool ) ) ) ; trayMenu->addAction( m_autoMountAction ) ; auto autoOpenFolderOnMount = new QAction( this ) ; autoOpenFolderOnMount->setCheckable( true ) ; m_autoOpenFolderOnMount = this->autoOpenFolderOnMount() ; autoOpenFolderOnMount->setChecked( m_autoOpenFolderOnMount ) ; autoOpenFolderOnMount->setText( tr( "Auto Open Mount Point" ) ) ; connect( autoOpenFolderOnMount,SIGNAL( toggled( bool ) ),this,SLOT( autoOpenFolderOnMount( bool ) ) ) ; trayMenu->addAction( autoOpenFolderOnMount ) ; auto ac = new QAction( this ) ; ac->setText( tr( "Show The Interface" ) ) ; connect( ac,SIGNAL( triggered() ),this,SLOT( raiseWindow() ) ) ; trayMenu->addAction( ac ) ; ac = new QAction( this ) ; ac->setText( tr( "Unmount All" ) ) ; connect( ac,SIGNAL( triggered() ),this,SLOT( unMountAll() ) ) ; trayMenu->addAction( ac ) ; m_favorite_menu = trayMenu->addMenu( tr( "Favorites" ) ) ; connect( m_favorite_menu,SIGNAL( triggered( QAction * ) ),this,SLOT( favoriteClicked( QAction * ) ) ) ; connect( m_favorite_menu,SIGNAL( aboutToShow() ),this,SLOT( showFavorites() ) ) ; m_not_hidden_volume_menu = trayMenu->addMenu( tr( "Hide Volume From View" ) ) ; connect( m_not_hidden_volume_menu,SIGNAL( triggered( QAction * ) ),this,SLOT( removeVolumeFromVisibleVolumeList( QAction * ) ) ) ; connect( m_not_hidden_volume_menu,SIGNAL( aboutToShow() ),this,SLOT( showVisibleVolumeList() ) ) ; m_hidden_volume_menu = trayMenu->addMenu( tr( "Unhide Volume From View" ) ) ; connect( m_hidden_volume_menu,SIGNAL( triggered( QAction * ) ),this,SLOT( removeVolumeFromHiddenVolumeList( QAction * ) ) ) ; connect( m_hidden_volume_menu,SIGNAL( aboutToShow() ),this,SLOT( showHiddenVolumeList() ) ) ; ac = new QAction( this ) ; ac->setText( tr( "About" ) ) ; connect( ac,SIGNAL( triggered() ),this,SLOT( licenseInfo() ) ) ; trayMenu->addAction( ac ) ; trayMenu->addAction( tr( "Quit" ),this,SLOT( pbClose() ) ) ; m_trayIcon->setContextMenu( trayMenu ) ; connect( m_trayIcon,SIGNAL( activated( QSystemTrayIcon::ActivationReason ) ), this,SLOT( slotTrayClicked( QSystemTrayIcon::ActivationReason ) ) ) ; m_trayIcon->show() ; QString dirPath = utility::homePath() + "/.zuluCrypt/" ; QDir dir( dirPath ) ; if( !dir.exists() ){ dir.mkdir( dirPath ) ; } this->disableAll() ; this->startAutoMonitor() ; this->updateVolumeList( zuluMountTask::updateVolumeList().await() ) ; if( volume.isEmpty() ) { this->enableAll() ; }else{ this->showMoungDialog( volume ) ; } }