Esempio n. 1
0
LRESULT LocationsPage::onClickedAdd(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/)
{
	FavoriteDirDlg dlg;
	if(dlg.DoModal() == IDOK) {
		addDirs(Text::fromT(dlg.vName), dlg.paths);
	}
	return 0;
}
Esempio n. 2
0
MainUI::MainUI() : QMainWindow(), ui(new Ui::MainUI){
  ui->setupUi(this);
  QString title = tr("Archive Manager");
  if( getuid()==0){ title.append(" ("+tr("Admin Mode")+")"); }
  this->setWindowTitle(title);
  BACKEND = new Backend(this);
  connect(BACKEND, SIGNAL(ProcessStarting()), this, SLOT(ProcStarting()) );
  connect(BACKEND, SIGNAL(ProcessFinished(bool, QString)), this, SLOT(ProcFinished(bool, QString)) );
  connect(BACKEND, SIGNAL(ProgressUpdate(int, QString)), this, SLOT(ProcUpdate(int, QString)) );

  //Add a spacer between toolbar items
  QWidget *spacer = new QWidget(this);
    spacer->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
  ui->toolBar->insertWidget(ui->actionAdd_File, spacer);

  //Connect the UI signals/slots
  connect(ui->action_New, SIGNAL(triggered()), this, SLOT(NewArchive()) );
  connect(ui->action_Open, SIGNAL(triggered()), this, SLOT(OpenArchive()) );
  connect(ui->action_Quit, SIGNAL(triggered()), this, SLOT(close()) );
  connect(ui->actionAdd_File, SIGNAL(triggered()), this, SLOT(addFiles()) );
  connect(ui->actionRemove_File, SIGNAL(triggered()), this, SLOT(remFiles()) );
  connect(ui->actionExtract_All, SIGNAL(triggered()), this, SLOT(extractFiles()) );
  connect(ui->actionExtract_Sel, SIGNAL(triggered()), this, SLOT(extractSelection()) );
  connect(ui->actionAdd_Dirs, SIGNAL(triggered()), this, SLOT(addDirs()) );
  connect(ui->tree_contents, SIGNAL(itemDoubleClicked(QTreeWidgetItem*, int)), this, SLOT(ViewFile(QTreeWidgetItem*)) );
  connect(ui->actionUSB_Image, SIGNAL(triggered()), this, SLOT(BurnImgToUSB()) );

  //Set Keyboard Shortcuts
  ui->action_New->setShortcut(tr("CTRL+N"));
  ui->action_Open->setShortcut(tr("CTRL+O"));
  ui->action_Quit->setShortcut(tr("CTRL+Q"));
  ui->actionExtract_All->setShortcut(tr("CTRL+E"));
  
  ui->progressBar->setVisible(false);
  ui->label_progress->setVisible(false);
  ui->label_progress_icon->setVisible(false);
  ui->actionAdd_File->setEnabled(false);
  ui->actionRemove_File->setEnabled(false);
  ui->actionExtract_All->setEnabled(false);
  ui->actionAdd_Dirs->setEnabled(false);
  ui->actionUSB_Image->setEnabled(false);
  loadIcons();
  ui->tree_contents->setHeaderLabels( QStringList() << tr("File") << tr("MimeType") << tr("Size")+" " );
}
LRESULT LocationsPage::onClickedRename(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/)
{
	TCHAR buf[MAX_PATH];

	int i = -1;
	while((i = ctrlDirectories.GetNextItem(i, LVNI_SELECTED)) != -1) {
		ctrlDirectories.GetItemText(i, 0, buf, MAX_PATH); //vname
		
		FavoriteDirDlg dlg;
		dlg.vName = buf;
		auto s = boost::find_if(favoriteDirs, CompareFirst<string, StringList>(Text::fromT(buf)));
		dcassert(s != favoriteDirs.end());
		dlg.paths = s->second;
	
		if(dlg.DoModal() == IDOK) {
			if (removeFavoriteDir(Text::fromT(buf)))
				ctrlDirectories.DeleteItem(i);

			addDirs(Text::fromT(dlg.vName), dlg.paths);
		}
	}
	return 0;
}
Esempio n. 4
0
void copyFileSet::addFile(string srcPath) {
    files = addDirs(srcPath);
    filesInSet = files.size();
    arrFiles = new string[filesInSet];
    int i = 0;
    for(string file:files) {
        arrFiles[i] = file;
        i++;
    }
    it = files.begin();
    if (copyHelper::is_dir(srcPath.c_str())) {
        rootDir = copyHelper::getDirName(srcPath);
    } else {
        char * cAbsSrc = new char[PATH_MAX];
        realpath(srcPath.c_str(), cAbsSrc);
        string strAbsSrc = cAbsSrc;
        string fileName = copyHelper::getFileName(srcPath);
        rootDir = strAbsSrc.erase(strAbsSrc.length() - fileName.length(), fileName.length());
    }
    if (destIsFile && files.size() > 1) {
        cout << "WTF?! Mehrere Dateien in einer zu überschreiben ist jetzt nicht so der Bringer. " << endl;
    }
}