mirror of
https://github.com/RetroShare/RetroShare.git
synced 2025-01-12 07:59:29 -05:00
Fixed umlauts (utf8) in Windows. Changed some parameters to reference pointer. Added virtual folders to the lib.
Recompile needed. git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3509 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
parent
dccfbf20b0
commit
ed737e2c9f
@ -801,7 +801,7 @@ void FileIndexMonitor::updateShareFlags(const SharedDirInfo& dir)
|
||||
cb->notifyListChange(NOTIFY_LIST_DIRLIST_LOCAL, 0);
|
||||
}
|
||||
/* interface */
|
||||
void FileIndexMonitor::setSharedDirectories(std::list<SharedDirInfo> dirs)
|
||||
void FileIndexMonitor::setSharedDirectories(std::list<SharedDirInfo>& dirs)
|
||||
{
|
||||
cb->notifyListPreChange(NOTIFY_LIST_DIRLIST_LOCAL, 0);
|
||||
|
||||
@ -822,8 +822,7 @@ void FileIndexMonitor::setSharedDirectories(std::list<SharedDirInfo> dirs)
|
||||
|
||||
/* check if dir exists before adding in */
|
||||
std::string path = (*it).filename;
|
||||
DIR *dir = opendir(path.c_str());
|
||||
if (!dir)
|
||||
if (!RsDirUtil::checkDirectory(path))
|
||||
{
|
||||
#ifdef FIM_DEBUG
|
||||
std::cerr << "FileIndexMonitor::setSharedDirectories()";
|
||||
@ -834,7 +833,6 @@ void FileIndexMonitor::setSharedDirectories(std::list<SharedDirInfo> dirs)
|
||||
{
|
||||
checkeddirs.push_back(*it);
|
||||
}
|
||||
closedir(dir);
|
||||
}
|
||||
|
||||
{
|
||||
@ -915,7 +913,10 @@ bool FileIndexMonitor::internal_setSharedDirectories()
|
||||
{
|
||||
/* get the head directory */
|
||||
std::string root_dir = (*it).filename;
|
||||
std::string top_dir = RsDirUtil::getTopDir(root_dir);
|
||||
std::string top_dir = it->virtualname;
|
||||
if (top_dir.empty()) {
|
||||
top_dir = RsDirUtil::getTopDir(root_dir);
|
||||
}
|
||||
|
||||
/* if unique -> add, else add modifier */
|
||||
bool unique = false;
|
||||
@ -931,6 +932,8 @@ bool FileIndexMonitor::internal_setSharedDirectories()
|
||||
if (directoryMap.end()== (cit=directoryMap.find(tst_dir)))
|
||||
{
|
||||
unique = true;
|
||||
/* store calculated name */
|
||||
it->virtualname = tst_dir;
|
||||
/* add it! */
|
||||
directoryMap[tst_dir.c_str()] = *it;
|
||||
#ifdef FIM_DEBUG
|
||||
|
@ -109,7 +109,7 @@ class FileIndexMonitor: public CacheSource, public RsThread
|
||||
int RequestDirDetails(std::string uid, std::string path, DirDetails &details) const ;
|
||||
|
||||
// set/update shared directories
|
||||
virtual void setSharedDirectories(std::list<SharedDirInfo> dirs);
|
||||
virtual void setSharedDirectories(std::list<SharedDirInfo>& dirs);
|
||||
void getSharedDirectories(std::list<SharedDirInfo>& dirs);
|
||||
void updateShareFlags(const SharedDirInfo& info) ;
|
||||
|
||||
|
@ -529,7 +529,7 @@ FileIndex::~FileIndex()
|
||||
delete root;
|
||||
}
|
||||
|
||||
int FileIndex::setRootDirectories(std::list<std::string> inlist, time_t updtime)
|
||||
int FileIndex::setRootDirectories(std::list<std::string> &inlist, time_t updtime)
|
||||
{
|
||||
/* set update time to zero */
|
||||
std::map<std::string, DirEntry *>::iterator it;
|
||||
|
@ -204,7 +204,7 @@ class FileIndex
|
||||
~FileIndex();
|
||||
|
||||
/* control root entries */
|
||||
int setRootDirectories(std::list<std::string> inlist, time_t utime);
|
||||
int setRootDirectories(std::list<std::string> &inlist, time_t utime);
|
||||
int getRootDirectories(std::list<std::string> &outlist);
|
||||
|
||||
/* update (index building) */
|
||||
|
@ -198,6 +198,7 @@ std::list<RsItem *> ftFiMonitor::saveList(bool &cleanup)
|
||||
{
|
||||
RsFileConfigItem *fi = new RsFileConfigItem();
|
||||
fi->file.path = (*it).filename ;
|
||||
fi->file.name = (*it).virtualname ;
|
||||
fi->flags = (*it).shareflags ;
|
||||
|
||||
sList.push_back(fi);
|
||||
@ -234,6 +235,7 @@ bool ftFiMonitor::loadList(std::list<RsItem *> load)
|
||||
|
||||
SharedDirInfo info ;
|
||||
info.filename = fi->file.path;
|
||||
info.virtualname = fi->file.name;
|
||||
info.shareflags = fi->flags & (RS_FILE_HINTS_BROWSABLE | RS_FILE_HINTS_NETWORK_WIDE) ;
|
||||
|
||||
dirList.push_back(info) ;
|
||||
@ -252,7 +254,7 @@ void ftFiMonitor::updateShareFlags(const SharedDirInfo& info)
|
||||
IndicateConfigChanged();
|
||||
}
|
||||
|
||||
void ftFiMonitor::setSharedDirectories(std::list<SharedDirInfo> dirList)
|
||||
void ftFiMonitor::setSharedDirectories(std::list<SharedDirInfo>& dirList)
|
||||
{
|
||||
FileIndexMonitor::setSharedDirectories(dirList);
|
||||
|
||||
|
@ -63,7 +63,7 @@ class ftFiMonitor: public FileIndexMonitor, public ftSearch, public p3Config
|
||||
virtual bool search(std::string hash, uint32_t hintflags, FileInfo &info) const;
|
||||
|
||||
/* overloaded set dirs enables config indication */
|
||||
virtual void setSharedDirectories(std::list<SharedDirInfo> dirList);
|
||||
virtual void setSharedDirectories(std::list<SharedDirInfo>& dirList);
|
||||
virtual void updateShareFlags(const SharedDirInfo& info) ;
|
||||
|
||||
/***
|
||||
|
@ -235,7 +235,6 @@ int ftFileCreator::locked_initializeFileAttrs()
|
||||
#ifdef FILE_DEBUG
|
||||
std::cerr << "ftFileCreator::initializeFileAttrs() trying (r+b) " << file_name << " this: " << this << std::endl;
|
||||
#endif
|
||||
std::cerr << std::endl;
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -578,7 +578,7 @@ bool ftServer::setSharedDirectories(std::list<SharedDirInfo> &dirs)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ftServer::addSharedDirectory(SharedDirInfo dir)
|
||||
bool ftServer::addSharedDirectory(SharedDirInfo& dir)
|
||||
{
|
||||
std::list<SharedDirInfo> dirList;
|
||||
mFiMon->getSharedDirectories(dirList);
|
||||
|
@ -191,7 +191,7 @@ virtual std::string getPartialsDirectory();
|
||||
|
||||
virtual bool getSharedDirectories(std::list<SharedDirInfo> &dirs);
|
||||
virtual bool setSharedDirectories(std::list<SharedDirInfo> &dirs);
|
||||
virtual bool addSharedDirectory(SharedDirInfo dir);
|
||||
virtual bool addSharedDirectory(SharedDirInfo& dir);
|
||||
virtual bool updateShareFlags(const SharedDirInfo& dir); // updates the flags. The directory should already exist !
|
||||
virtual bool removeSharedDirectory(std::string dir);
|
||||
|
||||
|
@ -92,6 +92,7 @@ const uint32_t CB_CODE_MEDIA = 0x0004;
|
||||
struct SharedDirInfo
|
||||
{
|
||||
std::string filename ;
|
||||
std::string virtualname ;
|
||||
uint32_t shareflags ; // RS_FILE_HINTS_NETWORK_WIDE | RS_FILE_HINTS_BROWSABLE
|
||||
};
|
||||
|
||||
@ -184,7 +185,7 @@ class RsFiles
|
||||
virtual std::string getPartialsDirectory() = 0;
|
||||
|
||||
virtual bool getSharedDirectories(std::list<SharedDirInfo> &dirs) = 0;
|
||||
virtual bool addSharedDirectory(SharedDirInfo dir) = 0;
|
||||
virtual bool addSharedDirectory(SharedDirInfo& dir) = 0;
|
||||
virtual bool updateShareFlags(const SharedDirInfo& dir) = 0; // updates the flags. The directory should already exist !
|
||||
virtual bool removeSharedDirectory(std::string dir) = 0;
|
||||
|
||||
|
@ -363,8 +363,19 @@ int RsDirUtil::breakupDirList(std::string path,
|
||||
|
||||
bool RsDirUtil::checkDirectory(std::string dir)
|
||||
{
|
||||
int val;
|
||||
mode_t st_mode;
|
||||
#ifdef WINDOWS_SYS
|
||||
std::wstring wdir;
|
||||
librs::util::ConvertUtf8ToUtf16(dir, wdir);
|
||||
struct _stat buf;
|
||||
val = _wstat(wdir.c_str(), &buf);
|
||||
st_mode = buf.st_mode;
|
||||
#else
|
||||
struct stat buf;
|
||||
int val = stat(dir.c_str(), &buf);
|
||||
val = stat(dir.c_str(), &buf);
|
||||
st_mode = buf.st_mode;
|
||||
#endif
|
||||
if (val == -1)
|
||||
{
|
||||
#ifdef RSDIR_DEBUG
|
||||
@ -373,7 +384,7 @@ bool RsDirUtil::checkDirectory(std::string dir)
|
||||
#endif
|
||||
return false;
|
||||
}
|
||||
else if (!S_ISDIR(buf.st_mode))
|
||||
else if (!S_ISDIR(st_mode))
|
||||
{
|
||||
// Some other type - error.
|
||||
#ifdef RSDIR_DEBUG
|
||||
|
@ -803,16 +803,16 @@ void RemoteDirModel::downloadDirectory(const DirDetails & dirDetails, int prefix
|
||||
if (dirDetails.type & DIR_TYPE_FILE)
|
||||
{
|
||||
std::list<std::string> srcIds;
|
||||
QString cleanPath = QDir::cleanPath((rsFiles->getDownloadDirectory() + "/" + dirDetails.path.substr(prefixLen)).c_str());
|
||||
QString cleanPath = QDir::cleanPath(QString::fromUtf8(rsFiles->getDownloadDirectory().c_str()) + "/" + QString::fromUtf8(dirDetails.path.substr(prefixLen).c_str()));
|
||||
|
||||
srcIds.push_back(dirDetails.id);
|
||||
rsFiles->FileRequest(dirDetails.name, dirDetails.hash, dirDetails.count, cleanPath.toStdString(), RS_FILE_HINTS_NETWORK_WIDE, srcIds);
|
||||
rsFiles->FileRequest(dirDetails.name, dirDetails.hash, dirDetails.count, cleanPath.toUtf8().constData(), RS_FILE_HINTS_NETWORK_WIDE, srcIds);
|
||||
}
|
||||
else if (dirDetails.type & DIR_TYPE_DIR)
|
||||
{
|
||||
std::list<DirStub>::const_iterator it;
|
||||
QDir dwlDir(rsFiles->getDownloadDirectory().c_str());
|
||||
QString cleanPath = QDir::cleanPath(QString(dirDetails.path.c_str()).right(dirDetails.path.length() - prefixLen));
|
||||
QString cleanPath = QDir::cleanPath(QString::fromUtf8(dirDetails.path.substr(prefixLen).c_str()));
|
||||
|
||||
if (!dwlDir.mkpath(cleanPath)) return;
|
||||
|
||||
|
@ -23,7 +23,7 @@
|
||||
#include <retroshare/rsfiles.h>
|
||||
|
||||
#include <QContextMenuEvent>
|
||||
|
||||
#include <QFileDialog>
|
||||
#include <QMessageBox>
|
||||
#include <QComboBox>
|
||||
|
||||
@ -31,89 +31,73 @@
|
||||
ShareDialog::ShareDialog(QWidget *parent, Qt::WFlags flags)
|
||||
: QDialog(parent, flags)
|
||||
{
|
||||
/* Invoke Qt Designer generated QObject setup routine */
|
||||
ui.setupUi(this);
|
||||
/* Invoke Qt Designer generated QObject setup routine */
|
||||
ui.setupUi(this);
|
||||
|
||||
connect(ui.browseButton, SIGNAL(clicked( bool ) ), this , SLOT( browseDirectory() ) );
|
||||
connect(ui.okButton, SIGNAL(clicked( bool ) ), this , SLOT( addDirectory() ) );
|
||||
connect(ui.closeButton, SIGNAL(clicked()), this, SLOT(closedialog()));
|
||||
|
||||
load();
|
||||
|
||||
connect(ui.browseButton, SIGNAL(clicked( bool ) ), this , SLOT( browseDirectory() ) );
|
||||
connect(ui.okButton, SIGNAL(clicked( bool ) ), this , SLOT( addDirectory() ) );
|
||||
connect(ui.closeButton, SIGNAL(clicked()), this, SLOT(closedialog()));
|
||||
|
||||
ui.okButton->setEnabled(false);
|
||||
|
||||
load();
|
||||
}
|
||||
|
||||
void ShareDialog::load()
|
||||
{
|
||||
|
||||
ui.localpath_lineEdit->clear();
|
||||
ui.anonymouscheckBox->setChecked(false);
|
||||
ui.friendscheckBox->setChecked(false);
|
||||
ui.localpath_lineEdit->clear();
|
||||
ui.browsableCheckBox->setChecked(false);
|
||||
ui.networkwideCheckBox->setChecked(false);
|
||||
}
|
||||
|
||||
void ShareDialog::browseDirectory()
|
||||
{
|
||||
/* select a dir*/
|
||||
QString qdir = QFileDialog::getExistingDirectory(this, tr("Select A Folder To Share"), "", QFileDialog::DontUseNativeDialog | QFileDialog::ShowDirsOnly | QFileDialog::DontResolveSymlinks);
|
||||
|
||||
/* select a dir*/
|
||||
QString qdir = QFileDialog::getExistingDirectory(this, tr("Select A Folder To Share"), "", QFileDialog::DontUseNativeDialog | QFileDialog::ShowDirsOnly | QFileDialog::DontResolveSymlinks);
|
||||
|
||||
/* add it to the server */
|
||||
currentDir = qdir.toStdString();
|
||||
if (currentDir != "")
|
||||
{
|
||||
ui.localpath_lineEdit->setText(QString::fromStdString(currentDir));
|
||||
}
|
||||
/* add it to the server */
|
||||
if (qdir.isEmpty()) {
|
||||
ui.okButton->setEnabled(false);
|
||||
return;
|
||||
}
|
||||
ui.okButton->setEnabled(true);
|
||||
ui.localpath_lineEdit->setText(qdir);
|
||||
}
|
||||
|
||||
void ShareDialog::addDirectory()
|
||||
{
|
||||
SharedDirInfo sdi ;
|
||||
sdi.filename = ui.localpath_lineEdit->text().toUtf8().constData();
|
||||
sdi.virtualname = ui.virtualpath_lineEdit->text().toUtf8().constData();
|
||||
|
||||
SharedDirInfo sdi ;
|
||||
sdi.filename = currentDir ;
|
||||
|
||||
if( ui.anonymouscheckBox->isChecked() && ui.friendscheckBox->isChecked())
|
||||
{
|
||||
sdi.shareflags = RS_FILE_HINTS_NETWORK_WIDE | RS_FILE_HINTS_BROWSABLE ;
|
||||
}
|
||||
if ( ui.anonymouscheckBox->isChecked() && !ui.friendscheckBox->isChecked() )
|
||||
{
|
||||
sdi.shareflags = RS_FILE_HINTS_NETWORK_WIDE;
|
||||
}
|
||||
if ( ui.friendscheckBox->isChecked() && !ui.anonymouscheckBox->isChecked())
|
||||
{
|
||||
sdi.shareflags = RS_FILE_HINTS_BROWSABLE ;
|
||||
}
|
||||
|
||||
rsFiles->addSharedDirectory(sdi);
|
||||
sdi.shareflags = 0;
|
||||
|
||||
//messageBoxOk(tr("Shared Directory Added!"));
|
||||
load();
|
||||
close();
|
||||
if (ui.browsableCheckBox->isChecked()) {
|
||||
sdi.shareflags |= RS_FILE_HINTS_BROWSABLE ;
|
||||
}
|
||||
if (ui.networkwideCheckBox->isChecked()) {
|
||||
sdi.shareflags |= RS_FILE_HINTS_NETWORK_WIDE;
|
||||
}
|
||||
|
||||
rsFiles->addSharedDirectory(sdi);
|
||||
|
||||
load();
|
||||
close();
|
||||
}
|
||||
|
||||
void ShareDialog::showEvent(QShowEvent *event)
|
||||
{
|
||||
if (!event->spontaneous())
|
||||
{
|
||||
load();
|
||||
}
|
||||
if (!event->spontaneous())
|
||||
{
|
||||
load();
|
||||
}
|
||||
}
|
||||
|
||||
void ShareDialog::closedialog()
|
||||
{
|
||||
ui.localpath_lineEdit->clear();
|
||||
ui.anonymouscheckBox->setChecked(false);
|
||||
ui.friendscheckBox->setChecked(false);
|
||||
|
||||
close();
|
||||
}
|
||||
ui.localpath_lineEdit->clear();
|
||||
ui.browsableCheckBox->setChecked(false);
|
||||
ui.networkwideCheckBox->setChecked(false);
|
||||
|
||||
bool ShareDialog::messageBoxOk(QString msg)
|
||||
{
|
||||
QMessageBox mb("Share Manager InfoBox!",msg,QMessageBox::Information,QMessageBox::Ok,0,0);
|
||||
mb.setButtonText( QMessageBox::Ok, "OK" );
|
||||
mb.setWindowIcon(QIcon(QString::fromUtf8(":/images/rstray3.png")));
|
||||
mb.exec();
|
||||
return true;
|
||||
close();
|
||||
}
|
||||
|
@ -23,7 +23,6 @@
|
||||
#define _SHAREDIALOG_H
|
||||
|
||||
#include <QDialog>
|
||||
#include <QFileDialog>
|
||||
|
||||
#include "ui_ShareDialog.h"
|
||||
|
||||
@ -31,14 +30,12 @@ class ShareDialog : public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
public:
|
||||
|
||||
/** Default constructor */
|
||||
ShareDialog( QWidget *parent = 0, Qt::WFlags flags = 0);
|
||||
/** Default destructor */
|
||||
|
||||
bool messageBoxOk(QString);
|
||||
|
||||
public slots:
|
||||
|
||||
/** Loads the settings for this page */
|
||||
@ -55,7 +52,6 @@ private slots:
|
||||
|
||||
private:
|
||||
|
||||
std::string currentDir;
|
||||
/** Qt Designer generated object */
|
||||
Ui::ShareDialog ui;
|
||||
};
|
||||
|
@ -1,282 +1,282 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>ShareDialog</class>
|
||||
<widget class="QDialog" name="ShareDialog">
|
||||
<property name="windowModality">
|
||||
<enum>Qt::NonModal</enum>
|
||||
</property>
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>536</width>
|
||||
<height>351</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>RetroShare Share Folder</string>
|
||||
</property>
|
||||
<property name="windowIcon">
|
||||
<iconset resource="images.qrc">
|
||||
<normaloff>:/images/rstray3.png</normaloff>:/images/rstray3.png</iconset>
|
||||
</property>
|
||||
<property name="modal">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_3">
|
||||
<property name="margin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QFrame" name="frame">
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>60</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QFrame#frame{background-image: url(:/images/connect/connectFriendBanner.png);}
|
||||
</string>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::NoFrame</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
<property name="lineWidth">
|
||||
<number>1</number>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<property name="margin">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<property name="verticalSpacing">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="piclabel">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>48</width>
|
||||
<height>48</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>48</width>
|
||||
<height>48</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true"/>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="pixmap">
|
||||
<pixmap resource="images.qrc">:/images/fileshare48.png</pixmap>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="styleSheet">
|
||||
<string notr="true"/>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:26pt; font-weight:600; color:#ffffff;">Share Folder</span></p></body></html></string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QFrame" name="frame_2">
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::NoFrame</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_2">
|
||||
<property name="topMargin">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<item row="0" column="0" colspan="6">
|
||||
<widget class="QGroupBox" name="groupBox">
|
||||
<property name="title">
|
||||
<string>Share Folder</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_6">
|
||||
<item row="0" column="0">
|
||||
<layout class="QGridLayout" name="gridLayout_4">
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Local Path</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLineEdit" name="localpath_lineEdit">
|
||||
<property name="readOnly">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QPushButton" name="browseButton">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>27</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>200</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Browse</string>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>24</width>
|
||||
<height>24</height>
|
||||
</size>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Virtual Folder</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<widget class="QLineEdit" name="virtualpath_lineEdit"/>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QGroupBox" name="groupBox_2">
|
||||
<property name="title">
|
||||
<string>Share Flags</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_5">
|
||||
<item row="0" column="0">
|
||||
<widget class="QCheckBox" name="anonymouscheckBox">
|
||||
<property name="toolTip">
|
||||
<string>Anonymous shared Network Wide</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Anonymous</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QCheckBox" name="friendscheckBox">
|
||||
<property name="toolTip">
|
||||
<string>Browseable by Friends</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Friends</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<spacer name="verticalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QPushButton" name="okButton">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>200</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>OK</string>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>16</width>
|
||||
<height>16</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="default">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="3">
|
||||
<spacer>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>191</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="1" column="2">
|
||||
<widget class="QPushButton" name="closeButton">
|
||||
<property name="text">
|
||||
<string>Cancel</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources>
|
||||
<include location="images.qrc"/>
|
||||
</resources>
|
||||
<connections/>
|
||||
</ui>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>ShareDialog</class>
|
||||
<widget class="QDialog" name="ShareDialog">
|
||||
<property name="windowModality">
|
||||
<enum>Qt::NonModal</enum>
|
||||
</property>
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>536</width>
|
||||
<height>313</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>RetroShare Share Folder</string>
|
||||
</property>
|
||||
<property name="windowIcon">
|
||||
<iconset resource="images.qrc">
|
||||
<normaloff>:/images/rstray3.png</normaloff>:/images/rstray3.png</iconset>
|
||||
</property>
|
||||
<property name="modal">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_3">
|
||||
<property name="margin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QFrame" name="frame">
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>60</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QFrame#frame{background-image: url(:/images/connect/connectFriendBanner.png);}
|
||||
</string>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::NoFrame</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
<property name="lineWidth">
|
||||
<number>1</number>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<property name="margin">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<property name="verticalSpacing">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="piclabel">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>48</width>
|
||||
<height>48</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>48</width>
|
||||
<height>48</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true"/>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="pixmap">
|
||||
<pixmap resource="images.qrc">:/images/fileshare48.png</pixmap>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="styleSheet">
|
||||
<string notr="true"/>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:26pt; font-weight:600; color:#ffffff;">Share Folder</span></p></body></html></string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QFrame" name="frame_2">
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::NoFrame</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_2">
|
||||
<property name="topMargin">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<item row="0" column="0" colspan="6">
|
||||
<widget class="QGroupBox" name="groupBox">
|
||||
<property name="title">
|
||||
<string>Share Folder</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_6">
|
||||
<item row="0" column="0">
|
||||
<layout class="QGridLayout" name="gridLayout_4">
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="label">
|
||||
<property name="text">
|
||||
<string>Local Path</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLineEdit" name="localpath_lineEdit">
|
||||
<property name="readOnly">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QPushButton" name="browseButton">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>27</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>200</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Browse</string>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>24</width>
|
||||
<height>24</height>
|
||||
</size>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="label_3">
|
||||
<property name="text">
|
||||
<string>Virtual Folder</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<widget class="QLineEdit" name="virtualpath_lineEdit"/>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QGroupBox" name="groupBox_2">
|
||||
<property name="title">
|
||||
<string>Share Flags</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_5">
|
||||
<item row="1" column="0">
|
||||
<widget class="QCheckBox" name="networkwideCheckBox">
|
||||
<property name="toolTip">
|
||||
<string>Anonymous shared Network Wide</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Network Wide</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<spacer name="verticalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<widget class="QCheckBox" name="browsableCheckBox">
|
||||
<property name="toolTip">
|
||||
<string>Browseable by Friends</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Browsable</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QPushButton" name="okButton">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>200</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>OK</string>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>16</width>
|
||||
<height>16</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="checkable">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<property name="default">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="3">
|
||||
<spacer>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>191</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="1" column="2">
|
||||
<widget class="QPushButton" name="closeButton">
|
||||
<property name="text">
|
||||
<string>Cancel</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources>
|
||||
<include location="images.qrc"/>
|
||||
</resources>
|
||||
<connections/>
|
||||
</ui>
|
||||
|
@ -29,262 +29,228 @@
|
||||
#include <QCursor>
|
||||
#include <QPoint>
|
||||
#include <QHeaderView>
|
||||
|
||||
#include <QMessageBox>
|
||||
#include <QComboBox>
|
||||
|
||||
/* Images for context menu icons */
|
||||
#define IMAGE_CANCEL ":/images/delete.png"
|
||||
|
||||
#define COLUMN_PATH 0
|
||||
#define COLUMN_VIRTUALNAME 1
|
||||
#define COLUMN_NETWORKWIDE 2
|
||||
#define COLUMN_BROWSABLE 3
|
||||
|
||||
ShareManager *ShareManager::_instance = NULL ;
|
||||
|
||||
/** Default constructor */
|
||||
ShareManager::ShareManager(QWidget *parent, Qt::WFlags flags)
|
||||
: QDialog(parent, flags)
|
||||
{
|
||||
/* Invoke Qt Designer generated QObject setup routine */
|
||||
ui.setupUi(this);
|
||||
/* Invoke Qt Designer generated QObject setup routine */
|
||||
ui.setupUi(this);
|
||||
|
||||
isLoading = false;
|
||||
load();
|
||||
isLoading = false;
|
||||
load();
|
||||
|
||||
connect(ui.addButton, SIGNAL(clicked( bool ) ), this , SLOT( showShareDialog() ) );
|
||||
connect(ui.removeButton, SIGNAL(clicked( bool ) ), this , SLOT( removeShareDirectory() ) );
|
||||
connect(ui.closeButton, SIGNAL(clicked()), this, SLOT(close()));
|
||||
connect(ui.addButton, SIGNAL(clicked( bool ) ), this , SLOT( showShareDialog() ) );
|
||||
connect(ui.removeButton, SIGNAL(clicked( bool ) ), this , SLOT( removeShareDirectory() ) );
|
||||
connect(ui.closeButton, SIGNAL(clicked()), this, SLOT(close()));
|
||||
|
||||
connect( ui.shareddirList, SIGNAL( customContextMenuRequested( QPoint ) ), this, SLOT( shareddirListCostumPopupMenu( QPoint ) ) );
|
||||
connect( ui.shareddirList, SIGNAL( customContextMenuRequested( QPoint ) ), this, SLOT( shareddirListCostumPopupMenu( QPoint ) ) );
|
||||
|
||||
ui.addButton->setToolTip(tr("Add a Share Directory"));
|
||||
ui.removeButton->setToolTip(tr("Stop sharing selected Directory"));
|
||||
ui.addButton->setToolTip(tr("Add a Share Directory"));
|
||||
ui.removeButton->setToolTip(tr("Stop sharing selected Directory"));
|
||||
|
||||
ui.shareddirList->horizontalHeader()->setResizeMode( 0,QHeaderView::Stretch);
|
||||
ui.shareddirList->horizontalHeader()->setResizeMode( 2,QHeaderView::Interactive);
|
||||
|
||||
ui.shareddirList->horizontalHeader()->resizeSection( 0, 360 );
|
||||
ui.shareddirList->horizontalHeader()->setStretchLastSection(false);
|
||||
ui.shareddirList->horizontalHeader()->setResizeMode( COLUMN_PATH, QHeaderView::Stretch);
|
||||
ui.shareddirList->horizontalHeader()->setResizeMode( COLUMN_BROWSABLE, QHeaderView::Interactive);
|
||||
|
||||
setAttribute(Qt::WA_DeleteOnClose, true);
|
||||
ui.shareddirList->horizontalHeader()->resizeSection( COLUMN_PATH, 360 );
|
||||
ui.shareddirList->horizontalHeader()->setStretchLastSection(false);
|
||||
|
||||
setAttribute(Qt::WA_DeleteOnClose, true);
|
||||
}
|
||||
|
||||
ShareManager::~ShareManager()
|
||||
{
|
||||
_instance = NULL;
|
||||
_instance = NULL;
|
||||
}
|
||||
|
||||
void ShareManager::shareddirListCostumPopupMenu( QPoint point )
|
||||
{
|
||||
QMenu contextMnu( this );
|
||||
QMenu contextMnu( this );
|
||||
|
||||
removeAct = new QAction(QIcon(IMAGE_CANCEL), tr( "Remove" ), this );
|
||||
connect( removeAct , SIGNAL( triggered() ), this, SLOT( removeShareDirectory() ) );
|
||||
removeAct = new QAction(QIcon(IMAGE_CANCEL), tr( "Remove" ), this );
|
||||
connect( removeAct , SIGNAL( triggered() ), this, SLOT( removeShareDirectory() ) );
|
||||
|
||||
contextMnu.addAction( removeAct );
|
||||
contextMnu.addAction( removeAct );
|
||||
|
||||
contextMnu.exec(QCursor::pos());
|
||||
contextMnu.exec(QCursor::pos());
|
||||
}
|
||||
|
||||
/** Loads the settings for this page */
|
||||
void ShareManager::load()
|
||||
{
|
||||
isLoading = true;
|
||||
std::cerr << "ShareManager:: In load !!!!!" << std::endl ;
|
||||
isLoading = true;
|
||||
std::cerr << "ShareManager:: In load !!!!!" << std::endl ;
|
||||
|
||||
std::list<SharedDirInfo>::const_iterator it;
|
||||
std::list<SharedDirInfo> dirs;
|
||||
rsFiles->getSharedDirectories(dirs);
|
||||
std::list<SharedDirInfo>::const_iterator it;
|
||||
std::list<SharedDirInfo> dirs;
|
||||
rsFiles->getSharedDirectories(dirs);
|
||||
|
||||
/* get a link to the table */
|
||||
QTableWidget *listWidget = ui.shareddirList;
|
||||
/* get a link to the table */
|
||||
QTableWidget *listWidget = ui.shareddirList;
|
||||
|
||||
/* set new row count */
|
||||
listWidget->setRowCount(dirs.size());
|
||||
/* set new row count */
|
||||
listWidget->setRowCount(dirs.size());
|
||||
|
||||
connect(this,SIGNAL(itemClicked(QTableWidgetItem*)),this,SLOT(updateFlags(QTableWidgetItem*))) ;
|
||||
connect(this,SIGNAL(itemClicked(QTableWidgetItem*)),this,SLOT(updateFlags(QTableWidgetItem*))) ;
|
||||
|
||||
#ifndef USE_COMBOBOX
|
||||
QString ToolTips [2] = { QString("If checked, the share is anonymously shared to anybody."),
|
||||
QString("If checked, the share is browsable by your friends.") };
|
||||
int Flags [2] = { RS_FILE_HINTS_NETWORK_WIDE, RS_FILE_HINTS_BROWSABLE };
|
||||
QString ToolTips [2] = { QString("If checked, the share is anonymously shared to anybody."),
|
||||
QString("If checked, the share is browsable by your friends.") };
|
||||
int Flags [2] = { RS_FILE_HINTS_NETWORK_WIDE, RS_FILE_HINTS_BROWSABLE };
|
||||
#endif
|
||||
|
||||
int row=0 ;
|
||||
for(it = dirs.begin(); it != dirs.end(); it++,++row)
|
||||
{
|
||||
listWidget->setItem(row, COLUMN_PATH, new QTableWidgetItem(QString::fromUtf8((*it).filename.c_str())));
|
||||
listWidget->setItem(row, COLUMN_VIRTUALNAME, new QTableWidgetItem(QString::fromUtf8((*it).virtualname.c_str())));
|
||||
|
||||
int row=0 ;
|
||||
for(it = dirs.begin(); it != dirs.end(); it++,++row)
|
||||
{
|
||||
listWidget->setItem(row,0,new QTableWidgetItem(QString::fromUtf8((*it).filename.c_str())));
|
||||
#ifdef USE_COMBOBOX
|
||||
QComboBox *cb = new QComboBox ;
|
||||
cb->addItem(QString("Network Wide")) ;
|
||||
cb->addItem(QString("Browsable")) ;
|
||||
cb->addItem(QString("Universal")) ;
|
||||
QComboBox *cb = new QComboBox ;
|
||||
cb->addItem(QString("Network Wide")) ;
|
||||
cb->addItem(QString("Browsable")) ;
|
||||
cb->addItem(QString("Universal")) ;
|
||||
|
||||
cb->setToolTip(QString("Decide here whether this directory is\n* Network Wide: \tanonymously shared over the network (including your friends)\n* Browsable: \tbrowsable by your friends\n* Universal: \t\tboth")) ;
|
||||
cb->setToolTip(QString("Decide here whether this directory is\n* Network Wide: \tanonymously shared over the network (including your friends)\n* Browsable: \tbrowsable by your friends\n* Universal: \t\tboth")) ;
|
||||
|
||||
// TODO
|
||||
// - set combobox current value depending on what rsFiles reports.
|
||||
// - use a signal mapper to get the correct row that contains the combo box sending the signal:
|
||||
// mapper = new SignalMapper(this) ;
|
||||
//
|
||||
// for(all cb)
|
||||
// {
|
||||
// signalMapper->setMapping(cb,...)
|
||||
// }
|
||||
//
|
||||
int index = 0 ;
|
||||
index += ((*it).shareflags & RS_FILE_HINTS_NETWORK_WIDE) > 0 ;
|
||||
index += (((*it).shareflags & RS_FILE_HINTS_BROWSABLE) > 0) * 2 ;
|
||||
listWidget->setCellWidget(row,1,cb);
|
||||
// TODO
|
||||
// - set combobox current value depending on what rsFiles reports.
|
||||
// - use a signal mapper to get the correct row that contains the combo box sending the signal:
|
||||
// mapper = new SignalMapper(this) ;
|
||||
//
|
||||
// for(all cb)
|
||||
// {
|
||||
// signalMapper->setMapping(cb,...)
|
||||
// }
|
||||
//
|
||||
int index = 0 ;
|
||||
index += ((*it).shareflags & RS_FILE_HINTS_NETWORK_WIDE) > 0 ;
|
||||
index += (((*it).shareflags & RS_FILE_HINTS_BROWSABLE) > 0) * 2 ;
|
||||
listWidget->setCellWidget(row,1,cb);
|
||||
|
||||
if(index < 1 || index > 3)
|
||||
std::cerr << "******* ERROR IN FILE SHARING FLAGS. Flags = " << (*it).shareflags << " ***********" << std::endl ;
|
||||
else
|
||||
index-- ;
|
||||
if(index < 1 || index > 3)
|
||||
std::cerr << "******* ERROR IN FILE SHARING FLAGS. Flags = " << (*it).shareflags << " ***********" << std::endl ;
|
||||
else
|
||||
index-- ;
|
||||
|
||||
cb->setCurrentIndex(index) ;
|
||||
cb->setCurrentIndex(index) ;
|
||||
#else
|
||||
int col;
|
||||
for (col = 1; col <= 2; col++) {
|
||||
QModelIndex index = listWidget->model()->index(row, col, QModelIndex());
|
||||
QCheckBox *cb = (QCheckBox*) listWidget->indexWidget(index);
|
||||
if (cb == NULL) {
|
||||
cb = new QCheckBox;
|
||||
cb->setToolTip(ToolTips [col - 1]);
|
||||
listWidget->setCellWidget(row, col, cb);
|
||||
int col;
|
||||
for (col = 0; col <= 1; col++) {
|
||||
QModelIndex index = listWidget->model()->index(row, col + COLUMN_NETWORKWIDE, QModelIndex());
|
||||
QCheckBox *cb = (QCheckBox*) listWidget->indexWidget(index);
|
||||
if (cb == NULL) {
|
||||
cb = new QCheckBox;
|
||||
cb->setToolTip(ToolTips [col]);
|
||||
listWidget->setCellWidget(row, col + COLUMN_NETWORKWIDE, cb);
|
||||
|
||||
QObject::connect(cb, SIGNAL(toggled(bool)), this, SLOT(updateFlags(bool))) ;
|
||||
}
|
||||
cb->setChecked((*it).shareflags & Flags [col - 1]);
|
||||
}
|
||||
QObject::connect(cb, SIGNAL(toggled(bool)), this, SLOT(updateFlags(bool))) ;
|
||||
}
|
||||
cb->setChecked((*it).shareflags & Flags [col]);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
//ui.incomingDir->setText(QString::fromStdString(rsFiles->getDownloadDirectory()));
|
||||
//ui.incomingDir->setText(QString::fromStdString(rsFiles->getDownloadDirectory()));
|
||||
|
||||
listWidget->update(); /* update display */
|
||||
update();
|
||||
listWidget->update(); /* update display */
|
||||
update();
|
||||
|
||||
isLoading = false ;
|
||||
isLoading = false ;
|
||||
}
|
||||
|
||||
void ShareManager::showYourself()
|
||||
{
|
||||
if(_instance == NULL)
|
||||
_instance = new ShareManager(NULL,0) ;
|
||||
if(_instance == NULL)
|
||||
_instance = new ShareManager(NULL,0) ;
|
||||
|
||||
_instance->show() ;
|
||||
_instance->activateWindow();
|
||||
_instance->show() ;
|
||||
_instance->activateWindow();
|
||||
}
|
||||
|
||||
/*static*/ void ShareManager::postModDirectories(bool update_local)
|
||||
{
|
||||
if (_instance == NULL || _instance->isHidden()) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (update_local) {
|
||||
_instance->load();
|
||||
}
|
||||
}
|
||||
if (_instance == NULL || _instance->isHidden()) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
|
||||
void ShareManager::addShareDirectory()
|
||||
{
|
||||
|
||||
/* select a dir
|
||||
*/
|
||||
|
||||
|
||||
QString qdir = QFileDialog::getExistingDirectory(this, tr("Select A Folder To Share"), "", QFileDialog::DontUseNativeDialog | QFileDialog::ShowDirsOnly | QFileDialog::DontResolveSymlinks);
|
||||
|
||||
/* add it to the server */
|
||||
std::string dir = qdir.toStdString();
|
||||
if (dir != "")
|
||||
{
|
||||
SharedDirInfo sdi ;
|
||||
sdi.filename = dir ;
|
||||
sdi.shareflags = RS_FILE_HINTS_NETWORK_WIDE | RS_FILE_HINTS_BROWSABLE ;
|
||||
|
||||
rsFiles->addSharedDirectory(sdi);
|
||||
|
||||
messageBoxOk(tr("Shared Directory Added!"));
|
||||
load();
|
||||
}
|
||||
if (update_local) {
|
||||
_instance->load();
|
||||
}
|
||||
}
|
||||
|
||||
void ShareManager::updateFlags(bool b)
|
||||
{
|
||||
if(isLoading)
|
||||
return ;
|
||||
if(isLoading)
|
||||
return ;
|
||||
|
||||
std::cerr << "Updating flags (b=" << b << ") !!!" << std::endl ;
|
||||
std::cerr << "Updating flags (b=" << b << ") !!!" << std::endl ;
|
||||
|
||||
std::list<SharedDirInfo>::iterator it;
|
||||
std::list<SharedDirInfo> dirs;
|
||||
rsFiles->getSharedDirectories(dirs);
|
||||
std::list<SharedDirInfo>::iterator it;
|
||||
std::list<SharedDirInfo> dirs;
|
||||
rsFiles->getSharedDirectories(dirs);
|
||||
|
||||
int row=0 ;
|
||||
for(it = dirs.begin(); it != dirs.end(); it++,++row)
|
||||
{
|
||||
std::cerr << "Looking for row=" << row << ", file=" << (*it).filename << ", flags=" << (*it).shareflags << std::endl ;
|
||||
uint32_t current_flags = 0 ;
|
||||
current_flags |= (dynamic_cast<QCheckBox*>(ui.shareddirList->cellWidget(row,1)))->isChecked()? RS_FILE_HINTS_NETWORK_WIDE:0 ;
|
||||
current_flags |= (dynamic_cast<QCheckBox*>(ui.shareddirList->cellWidget(row,2)))->isChecked()? RS_FILE_HINTS_BROWSABLE:0 ;
|
||||
int row=0 ;
|
||||
for(it = dirs.begin(); it != dirs.end(); it++,++row)
|
||||
{
|
||||
std::cerr << "Looking for row=" << row << ", file=" << (*it).filename << ", flags=" << (*it).shareflags << std::endl ;
|
||||
uint32_t current_flags = 0 ;
|
||||
current_flags |= (dynamic_cast<QCheckBox*>(ui.shareddirList->cellWidget(row,COLUMN_NETWORKWIDE)))->isChecked()? RS_FILE_HINTS_NETWORK_WIDE:0 ;
|
||||
current_flags |= (dynamic_cast<QCheckBox*>(ui.shareddirList->cellWidget(row,COLUMN_BROWSABLE)))->isChecked()? RS_FILE_HINTS_BROWSABLE:0 ;
|
||||
|
||||
if( (*it).shareflags ^ current_flags )
|
||||
{
|
||||
(*it).shareflags = current_flags ;
|
||||
rsFiles->updateShareFlags(*it) ; // modifies the flags
|
||||
if( (*it).shareflags ^ current_flags )
|
||||
{
|
||||
(*it).shareflags = current_flags ;
|
||||
rsFiles->updateShareFlags(*it) ; // modifies the flags
|
||||
|
||||
std::cout << "Updating share flags for directory " << (*it).filename << std::endl ;
|
||||
}
|
||||
}
|
||||
std::cout << "Updating share flags for directory " << (*it).filename << std::endl ;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void ShareManager::removeShareDirectory()
|
||||
{
|
||||
/* id current dir */
|
||||
/* ask for removal */
|
||||
QTableWidget *listWidget = ui.shareddirList;
|
||||
int row = listWidget -> currentRow();
|
||||
QTableWidgetItem *qdir = listWidget->item(row,0) ;
|
||||
/* id current dir */
|
||||
/* ask for removal */
|
||||
QTableWidget *listWidget = ui.shareddirList;
|
||||
int row = listWidget -> currentRow();
|
||||
QTableWidgetItem *qdir = listWidget->item(row, COLUMN_PATH);
|
||||
|
||||
QString queryWrn;
|
||||
queryWrn.clear();
|
||||
queryWrn.append(tr("Do you really want to stop sharing this directory ? "));
|
||||
QString queryWrn;
|
||||
queryWrn.clear();
|
||||
queryWrn.append(tr("Do you really want to stop sharing this directory ?"));
|
||||
|
||||
if (qdir)
|
||||
{
|
||||
if ((QMessageBox::question(this, tr("Warning!"),queryWrn,QMessageBox::Ok|QMessageBox::No, QMessageBox::Ok))== QMessageBox::Ok)
|
||||
{
|
||||
rsFiles->removeSharedDirectory( qdir->text().toStdString());
|
||||
load();
|
||||
}
|
||||
else
|
||||
return;
|
||||
}
|
||||
if (qdir)
|
||||
{
|
||||
if ((QMessageBox::question(this, tr("Warning!"),queryWrn,QMessageBox::Yes|QMessageBox::No, QMessageBox::Yes))== QMessageBox::Yes)
|
||||
{
|
||||
rsFiles->removeSharedDirectory( qdir->text().toUtf8().constData());
|
||||
load();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bool ShareManager::messageBoxOk(QString msg)
|
||||
{
|
||||
QMessageBox mb("Share Manager InfoBox!",msg,QMessageBox::Information,QMessageBox::Ok,0,0);
|
||||
mb.setButtonText( QMessageBox::Ok, "OK" );
|
||||
mb.setWindowIcon(QIcon(QString::fromUtf8(":/images/rstray3.png")));
|
||||
mb.exec();
|
||||
return true;
|
||||
}
|
||||
|
||||
void ShareManager::showEvent(QShowEvent *event)
|
||||
{
|
||||
if (!event->spontaneous())
|
||||
{
|
||||
load();
|
||||
}
|
||||
if (!event->spontaneous())
|
||||
{
|
||||
load();
|
||||
}
|
||||
}
|
||||
|
||||
void ShareManager::showShareDialog()
|
||||
{
|
||||
ShareDialog sharedlg (this);
|
||||
sharedlg.exec();
|
||||
ShareDialog sharedlg (this);
|
||||
sharedlg.exec();
|
||||
}
|
||||
|
@ -30,53 +30,43 @@
|
||||
|
||||
class ShareManager : public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
static void showYourself() ;
|
||||
static void postModDirectories(bool update_local);
|
||||
public:
|
||||
static void showYourself() ;
|
||||
static void postModDirectories(bool update_local);
|
||||
|
||||
private:
|
||||
/** Default constructor */
|
||||
ShareManager( QWidget *parent = 0, Qt::WFlags flags = 0);
|
||||
/** Default destructor */
|
||||
~ShareManager();
|
||||
|
||||
/** Loads the settings for this page */
|
||||
void load();
|
||||
bool messageBoxOk(QString);
|
||||
|
||||
public slots:
|
||||
|
||||
void showShareDialog();
|
||||
/** Default constructor */
|
||||
ShareManager( QWidget *parent = 0, Qt::WFlags flags = 0);
|
||||
/** Default destructor */
|
||||
~ShareManager();
|
||||
|
||||
/** Loads the settings for this page */
|
||||
void load();
|
||||
|
||||
protected:
|
||||
virtual void showEvent(QShowEvent * event);
|
||||
virtual void showEvent(QShowEvent * event);
|
||||
|
||||
private slots:
|
||||
/** Create the context popup menu and it's submenus */
|
||||
void shareddirListCostumPopupMenu( QPoint point );
|
||||
|
||||
/** Create the context popup menu and it's submenus */
|
||||
void shareddirListCostumPopupMenu( QPoint point );
|
||||
|
||||
void addShareDirectory();
|
||||
void removeShareDirectory();
|
||||
void updateFlags(bool);
|
||||
|
||||
void showShareDialog();
|
||||
void removeShareDirectory();
|
||||
void updateFlags(bool);
|
||||
|
||||
private:
|
||||
static ShareManager *_instance;
|
||||
bool isLoading;
|
||||
|
||||
|
||||
static ShareManager *_instance;
|
||||
bool isLoading;
|
||||
|
||||
/** Define the popup menus for the Context menu */
|
||||
QMenu* contextMnu;
|
||||
/** Define the popup menus for the Context menu */
|
||||
QMenu* contextMnu;
|
||||
/** Defines the actions for the context menu */
|
||||
QAction* removeAct;
|
||||
QAction* removeAct;
|
||||
|
||||
/** Qt Designer generated object */
|
||||
Ui::ShareManager ui;
|
||||
/** Qt Designer generated object */
|
||||
Ui::ShareManager ui;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -1,273 +1,296 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>ShareManager</class>
|
||||
<widget class="QDialog" name="ShareManager">
|
||||
<property name="windowModality">
|
||||
<enum>Qt::NonModal</enum>
|
||||
</property>
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>538</width>
|
||||
<height>343</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>RetroShare Share Manager</string>
|
||||
</property>
|
||||
<property name="windowIcon">
|
||||
<iconset resource="images.qrc">
|
||||
<normaloff>:/images/rstray3.png</normaloff>:/images/rstray3.png</iconset>
|
||||
</property>
|
||||
<property name="modal">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_3">
|
||||
<property name="margin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QFrame" name="frame">
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QFrame#frame{background-image: url(:/images/connect/connectFriendBanner.png);}
|
||||
</string>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::NoFrame</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
<property name="lineWidth">
|
||||
<number>1</number>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<property name="margin">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<property name="verticalSpacing">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="piclabel">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>48</width>
|
||||
<height>48</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>48</width>
|
||||
<height>48</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true"/>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="pixmap">
|
||||
<pixmap resource="images.qrc">:/images/fileshare48.png</pixmap>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="styleSheet">
|
||||
<string notr="true"/>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:26pt; font-weight:600; color:#ffffff;">Share Manager</span></p></body></html></string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QFrame" name="frame_2">
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::NoFrame</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_2">
|
||||
<property name="topMargin">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<item row="0" column="0" colspan="5">
|
||||
<widget class="QGroupBox" name="groupBox">
|
||||
<property name="title">
|
||||
<string>Shared Folder Manager</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_4">
|
||||
<property name="topMargin">
|
||||
<number>2</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="labelInstructions">
|
||||
<property name="text">
|
||||
<string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">This is a list of shared folders . You can add and remove folders using the button on the left. </span></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you add a new folder, intially all files in that folder are shared.</span></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans'; font-size:8pt;">You can separately setup share flags for each shared directory:</span><span style=" font-size:8pt;"> </span></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans'; font-size:8pt; font-weight:600;">Browsable </span><span style=" font-family:'Sans'; font-size:8pt;">: files are browsable from your direct friends.</span></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans'; font-size:8pt; font-weight:600;">Network Wide</span><span style=" font-family:'Sans'; font-size:8pt;">: files can be downloaded by anybody through anonymous tunnels.</span></p></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QTableWidget" name="shareddirList">
|
||||
<property name="contextMenuPolicy">
|
||||
<enum>Qt::CustomContextMenu</enum>
|
||||
</property>
|
||||
<property name="selectionMode">
|
||||
<enum>QAbstractItemView::SingleSelection</enum>
|
||||
</property>
|
||||
<property name="selectionBehavior">
|
||||
<enum>QAbstractItemView::SelectRows</enum>
|
||||
</property>
|
||||
<property name="showGrid">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sortingEnabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<attribute name="horizontalHeaderCascadingSectionResizes">
|
||||
<bool>true</bool>
|
||||
</attribute>
|
||||
<attribute name="horizontalHeaderMinimumSectionSize">
|
||||
<number>100</number>
|
||||
</attribute>
|
||||
<attribute name="horizontalHeaderStretchLastSection">
|
||||
<bool>true</bool>
|
||||
</attribute>
|
||||
<attribute name="verticalHeaderVisible">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<attribute name="verticalHeaderDefaultSectionSize">
|
||||
<number>22</number>
|
||||
</attribute>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Directory</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Network Wide</string>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string comment="If activated, the share is anonymously accessible to anybody"/>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Browsable</string>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string comment="If checked, the share is browsable by your friends"/>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QPushButton" name="addButton">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>27</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>200</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Add</string>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>24</width>
|
||||
<height>24</height>
|
||||
</size>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QPushButton" name="removeButton">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>200</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Remove</string>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>16</width>
|
||||
<height>16</height>
|
||||
</size>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="2">
|
||||
<spacer>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>191</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="1" column="3">
|
||||
<widget class="QPushButton" name="closeButton">
|
||||
<property name="text">
|
||||
<string>Close</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources>
|
||||
<include location="images.qrc"/>
|
||||
</resources>
|
||||
<connections/>
|
||||
</ui>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>ShareManager</class>
|
||||
<widget class="QDialog" name="ShareManager">
|
||||
<property name="windowModality">
|
||||
<enum>Qt::NonModal</enum>
|
||||
</property>
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>538</width>
|
||||
<height>343</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>RetroShare Share Manager</string>
|
||||
</property>
|
||||
<property name="windowIcon">
|
||||
<iconset resource="images.qrc">
|
||||
<normaloff>:/images/rstray3.png</normaloff>:/images/rstray3.png</iconset>
|
||||
</property>
|
||||
<property name="modal">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_3">
|
||||
<property name="margin">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<property name="spacing">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QFrame" name="frame">
|
||||
<property name="styleSheet">
|
||||
<string notr="true">QFrame#frame{background-image: url(:/images/connect/connectFriendBanner.png);}
|
||||
</string>
|
||||
</property>
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::NoFrame</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
<property name="lineWidth">
|
||||
<number>1</number>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<property name="margin">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<property name="verticalSpacing">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="piclabel">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>48</width>
|
||||
<height>48</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>48</width>
|
||||
<height>48</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true"/>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string/>
|
||||
</property>
|
||||
<property name="pixmap">
|
||||
<pixmap resource="images.qrc">:/images/fileshare48.png</pixmap>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QLabel" name="label_2">
|
||||
<property name="styleSheet">
|
||||
<string notr="true"/>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:26pt; font-weight:600; color:#ffffff;">Share Manager</span></p></body></html></string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QFrame" name="frame_2">
|
||||
<property name="frameShape">
|
||||
<enum>QFrame::NoFrame</enum>
|
||||
</property>
|
||||
<property name="frameShadow">
|
||||
<enum>QFrame::Raised</enum>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_2">
|
||||
<property name="topMargin">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<item row="0" column="0" colspan="5">
|
||||
<widget class="QGroupBox" name="groupBox">
|
||||
<property name="title">
|
||||
<string>Shared Folder Manager</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout_4">
|
||||
<property name="topMargin">
|
||||
<number>2</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QLabel" name="labelInstructions">
|
||||
<property name="text">
|
||||
<string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">This is a list of shared folders. You can add and remove folders using the buttons at the bottom.</span></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you add a new folder, intially all files in that folder are shared.</span></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans'; font-size:8pt;">You can separately setup share flags for each shared directory:</span><span style=" font-size:8pt;"> </span></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans'; font-size:8pt; font-weight:600;">Browsable</span><span style=" font-family:'Sans'; font-size:8pt;">: files are browsable from your direct friends.</span></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans'; font-size:8pt; font-weight:600;">Network Wide</span><span style=" font-family:'Sans'; font-size:8pt;">: files can be downloaded by anybody through anonymous tunnels.</span></p></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QTableWidget" name="shareddirList">
|
||||
<property name="contextMenuPolicy">
|
||||
<enum>Qt::CustomContextMenu</enum>
|
||||
</property>
|
||||
<property name="editTriggers">
|
||||
<set>QAbstractItemView::NoEditTriggers</set>
|
||||
</property>
|
||||
<property name="selectionMode">
|
||||
<enum>QAbstractItemView::SingleSelection</enum>
|
||||
</property>
|
||||
<property name="selectionBehavior">
|
||||
<enum>QAbstractItemView::SelectRows</enum>
|
||||
</property>
|
||||
<property name="showGrid">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="sortingEnabled">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<attribute name="horizontalHeaderCascadingSectionResizes">
|
||||
<bool>true</bool>
|
||||
</attribute>
|
||||
<attribute name="horizontalHeaderMinimumSectionSize">
|
||||
<number>100</number>
|
||||
</attribute>
|
||||
<attribute name="horizontalHeaderStretchLastSection">
|
||||
<bool>true</bool>
|
||||
</attribute>
|
||||
<attribute name="verticalHeaderVisible">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<attribute name="verticalHeaderDefaultSectionSize">
|
||||
<number>22</number>
|
||||
</attribute>
|
||||
<attribute name="verticalHeaderVisible">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<attribute name="verticalHeaderDefaultSectionSize">
|
||||
<number>22</number>
|
||||
</attribute>
|
||||
<attribute name="horizontalHeaderStretchLastSection">
|
||||
<bool>true</bool>
|
||||
</attribute>
|
||||
<attribute name="horizontalHeaderCascadingSectionResizes">
|
||||
<bool>true</bool>
|
||||
</attribute>
|
||||
<attribute name="horizontalHeaderMinimumSectionSize">
|
||||
<number>100</number>
|
||||
</attribute>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Directory</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Virtual Folder</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Network Wide</string>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string comment="If activated, the share is anonymously accessible to anybody"/>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Browsable</string>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string comment="If checked, the share is browsable by your friends"/>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QPushButton" name="addButton">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>27</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>200</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Add</string>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>24</width>
|
||||
<height>24</height>
|
||||
</size>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QPushButton" name="removeButton">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>200</width>
|
||||
<height>200</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Remove</string>
|
||||
</property>
|
||||
<property name="iconSize">
|
||||
<size>
|
||||
<width>16</width>
|
||||
<height>16</height>
|
||||
</size>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="2">
|
||||
<spacer>
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>191</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="1" column="3">
|
||||
<widget class="QPushButton" name="closeButton">
|
||||
<property name="text">
|
||||
<string>Close</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources>
|
||||
<include location="images.qrc"/>
|
||||
</resources>
|
||||
<connections/>
|
||||
</ui>
|
||||
|
@ -152,7 +152,7 @@ void NotifyQt::notifyTurtleSearchResult(uint32_t search_id,const std::list<Turtl
|
||||
|
||||
void NotifyQt::notifyHashingInfo(std::string fileinfo)
|
||||
{
|
||||
emit hashingInfoChanged(QString::fromStdString(fileinfo)) ;
|
||||
emit hashingInfoChanged(QString::fromUtf8(fileinfo.c_str())) ;
|
||||
}
|
||||
|
||||
//void NotifyQt::notifyChat()
|
||||
|
Binary file not shown.
@ -1041,7 +1041,7 @@ p, li { white-space: pre-wrap; }
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui/ChannelFeed.ui" line="-147"/>
|
||||
<location filename="../gui/ChannelFeed.cpp" line="+36"/>
|
||||
<location filename="../gui/ChannelFeed.cpp" line="+39"/>
|
||||
<source>Post to Channel</source>
|
||||
<translation>Kanalbeitrag erstellen</translation>
|
||||
</message>
|
||||
@ -1267,7 +1267,7 @@ Keine Beschreibung</translation>
|
||||
<context>
|
||||
<name>ChatStyle</name>
|
||||
<message>
|
||||
<location filename="../gui/chat/ChatStyle.cpp" line="+374"/>
|
||||
<location filename="../gui/chat/ChatStyle.cpp" line="+367"/>
|
||||
<source>Standard style for group chat</source>
|
||||
<translation>Standard Stil für den Gruppenchat</translation>
|
||||
</message>
|
||||
@ -2634,7 +2634,7 @@ p, li { white-space: pre-wrap; }
|
||||
<message>
|
||||
<location filename="../gui/settings/DirectoriesPage.ui" line="+605"/>
|
||||
<source>Shared Directories</source>
|
||||
<translation>Freigegebene Verzeichnisse</translation>
|
||||
<translation>Freigegebene Ordner</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui/settings/DirectoriesPage.cpp" line="+39"/>
|
||||
@ -2660,12 +2660,12 @@ p, li { white-space: pre-wrap; }
|
||||
<message>
|
||||
<location line="+29"/>
|
||||
<source>Set Incoming Directory</source>
|
||||
<translation>Eingehende Dateien Verzeichnis</translation>
|
||||
<translation>Ordner für eingehende Dateien</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+29"/>
|
||||
<source>Set Partials Directory</source>
|
||||
<translation>Partielle Dateien</translation>
|
||||
<translation>Ordner für temporäre Dateien</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui/settings/DirectoriesPage.ui" line="-90"/>
|
||||
@ -2680,12 +2680,12 @@ p, li { white-space: pre-wrap; }
|
||||
<message>
|
||||
<location line="-67"/>
|
||||
<source>Partials Directory</source>
|
||||
<translation>Partielle Dateien</translation>
|
||||
<translation>Temporäre Dateien</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+57"/>
|
||||
<source>Automatically share incoming directory (Recommended)</source>
|
||||
<translation>Automatisch eingehendes Verzeichnis freigeben</translation>
|
||||
<translation>Eingehende Ordner automatisch freigeben</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
@ -4958,7 +4958,7 @@ p, li { white-space: pre-wrap; }
|
||||
|
||||
Normalerweise hält RetroShare jetzt sicher alle Festplattenzugriffe auf das Verzeichnis an.
|
||||
|
||||
Bitte gib etwas SPeicher frei und drücke OK.</translation>
|
||||
Bitte gib etwas Speicher frei und drücke OK.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+12"/>
|
||||
@ -5948,7 +5948,7 @@ p, li { white-space: pre-wrap; }
|
||||
<message>
|
||||
<location line="+32"/>
|
||||
<source>Share Files for your Friends</source>
|
||||
<translation>Verzeichnis für deine Freunde freigeben</translation>
|
||||
<translation>Ordner für deine Freunde freigeben</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+111"/>
|
||||
@ -8331,7 +8331,7 @@ p, li { white-space: pre-wrap; }
|
||||
<message>
|
||||
<location line="+59"/>
|
||||
<source>Directory</source>
|
||||
<translation>Verzeichnis</translation>
|
||||
<translation>Ordner</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+5"/>
|
||||
@ -8399,17 +8399,17 @@ p, li { white-space: pre-wrap; }
|
||||
<message>
|
||||
<location filename="../gui/QuickStartWizard.cpp" line="+193"/>
|
||||
<source>Select A Folder To Share</source>
|
||||
<translation>Wählen Sie ein Verzeichnis zum Freigeben</translation>
|
||||
<translation>Wählen Sie ein Ordner zum Freigeben</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+13"/>
|
||||
<source>Shared Directory Added!</source>
|
||||
<translation>Verzeichnis wurde hinzugefügt!</translation>
|
||||
<translation>Ordner wurde hinzugefügt!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+15"/>
|
||||
<source>Do you really want to stop sharing this directory ? </source>
|
||||
<translation>Möchtest Du wirklich die Freigabe dieses Verzeichnises entfernen ? </translation>
|
||||
<translation>Möchtes Du die Freigabe dieses Ordners wirklich aufheben ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+4"/>
|
||||
@ -8453,7 +8453,7 @@ p, li { white-space: pre-wrap; }
|
||||
<message>
|
||||
<location line="+4"/>
|
||||
<source>Directories</source>
|
||||
<translation>Verzeichnisse</translation>
|
||||
<translation>Ordner</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+4"/>
|
||||
@ -8539,7 +8539,7 @@ p, li { white-space: pre-wrap; }
|
||||
<message>
|
||||
<location line="+4"/>
|
||||
<source>My Directories</source>
|
||||
<translation>Meine Verzeichnisse</translation>
|
||||
<translation>Meine Ordner</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+4"/>
|
||||
@ -9108,7 +9108,7 @@ Es hilft auch, wenn Sie sich hinter einer Firewall/VPN befinden.</translation>
|
||||
<message>
|
||||
<location line="+86"/>
|
||||
<source>Transfer</source>
|
||||
<translation type="unfinished">Übertragung</translation>
|
||||
<translation>Übertragung</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+18"/>
|
||||
@ -9148,7 +9148,7 @@ Es hilft auch, wenn Sie sich hinter einer Firewall/VPN befinden.</translation>
|
||||
<message>
|
||||
<location line="+18"/>
|
||||
<source>Directories</source>
|
||||
<translation>Verzeichnisse</translation>
|
||||
<translation>Ordner</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+27"/>
|
||||
@ -9176,7 +9176,7 @@ Es hilft auch, wenn Sie sich hinter einer Firewall/VPN befinden.</translation>
|
||||
<message>
|
||||
<location filename="../gui/ShareDialog.ui" line="+17"/>
|
||||
<source>RetroShare Share Folder</source>
|
||||
<translation>RetroShare Verzeichnis freigeben </translation>
|
||||
<translation>RetroShare Ordner freigeben</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+75"/>
|
||||
@ -9189,12 +9189,12 @@ p, li { white-space: pre-wrap; }
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:26pt; font-weight:600; color:#ffffff;">Verzeichnis freigeben</span></p></body></html></translation>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans Serif'; font-size:26pt; font-weight:600; color:#ffffff;">Ordner freigeben</span></p></body></html></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+29"/>
|
||||
<source>Share Folder</source>
|
||||
<translation>Gebe Ordner frei</translation>
|
||||
<translation>Ordner</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+8"/>
|
||||
@ -9223,21 +9223,21 @@ p, li { white-space: pre-wrap; }
|
||||
</message>
|
||||
<message>
|
||||
<location line="+3"/>
|
||||
<source>Anonymous</source>
|
||||
<translation>Anonym</translation>
|
||||
<source>Network Wide</source>
|
||||
<translation>Netzwerkweit</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+7"/>
|
||||
<location line="+20"/>
|
||||
<source>Browseable by Friends</source>
|
||||
<translation>Durchsuchbar von Freunden</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+3"/>
|
||||
<source>Friends</source>
|
||||
<translation>Freunde</translation>
|
||||
<source>Browsable</source>
|
||||
<translation>Durchsuchbar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+38"/>
|
||||
<location line="+25"/>
|
||||
<source>OK</source>
|
||||
<translation>OK</translation>
|
||||
</message>
|
||||
@ -9247,7 +9247,7 @@ p, li { white-space: pre-wrap; }
|
||||
<translation>Abbrechen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui/ShareDialog.cpp" line="+58"/>
|
||||
<location filename="../gui/ShareDialog.cpp" line="+56"/>
|
||||
<source>Select A Folder To Share</source>
|
||||
<translation>Wähle einen Ordner zum Freigeben aus</translation>
|
||||
</message>
|
||||
@ -9311,38 +9311,33 @@ p, li { white-space: pre-wrap; }
|
||||
<context>
|
||||
<name>ShareManager</name>
|
||||
<message>
|
||||
<location filename="../gui/ShareManager.cpp" line="+57"/>
|
||||
<location filename="../gui/ShareManager.cpp" line="+60"/>
|
||||
<source>Add a Share Directory</source>
|
||||
<translation>Verzeichnis hinzufügen</translation>
|
||||
<translation>Ordner hinzufügen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+1"/>
|
||||
<source>Stop sharing selected Directory</source>
|
||||
<translation>Stoppe die Freigabe des Verzeichnisses</translation>
|
||||
<translation>Stoppe die Freigabe des Ordners</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+141"/>
|
||||
<source>Select A Folder To Share</source>
|
||||
<translation>Wähle ein Verzeichnis zum Freigeben</translation>
|
||||
<location line="+171"/>
|
||||
<source>Do you really want to stop sharing this directory ?</source>
|
||||
<translation>Möchtes Du die Freigabe dieses Ordners wirklich aufheben ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+56"/>
|
||||
<source>Do you really want to stop sharing this directory ? </source>
|
||||
<translation>Möchtes Du wirklich die Freigabe dieses Ordners aufheben ? </translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui/ShareManager.ui" line="+234"/>
|
||||
<location filename="../gui/ShareManager.cpp" line="-176"/>
|
||||
<location filename="../gui/ShareManager.ui" line="+257"/>
|
||||
<location filename="../gui/ShareManager.cpp" line="-151"/>
|
||||
<source>Remove</source>
|
||||
<translation>Entfernen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui/ShareManager.cpp" line="+180"/>
|
||||
<location filename="../gui/ShareManager.cpp" line="+155"/>
|
||||
<source>Warning!</source>
|
||||
<translation>Warnung!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui/ShareManager.ui" line="-217"/>
|
||||
<location filename="../gui/ShareManager.ui" line="-240"/>
|
||||
<source>RetroShare Share Manager</source>
|
||||
<translation>RetroShare Freigabe Manager</translation>
|
||||
</message>
|
||||
@ -9365,22 +9360,35 @@ p, li { white-space: pre-wrap; }
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">This is a list of shared folders . You can add and remove folders using the button on the left. </span></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">This is a list of shared folders. You can add and remove folders using the buttons at the bottom.</span></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">When you add a new folder, intially all files in that folder are shared.</span></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans'; font-size:8pt;">You can separately setup share flags for each shared directory:</span><span style=" font-size:8pt;"> </span></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans'; font-size:8pt; font-weight:600;">Browsable </span><span style=" font-family:'Sans'; font-size:8pt;">: files are browsable from your direct friends.</span></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans'; font-size:8pt; font-weight:600;">Browsable</span><span style=" font-family:'Sans'; font-size:8pt;">: files are browsable from your direct friends.</span></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans'; font-size:8pt; font-weight:600;">Network Wide</span><span style=" font-family:'Sans'; font-size:8pt;">: files can be downloaded by anybody through anonymous tunnels.</span></p></body></html></source>
|
||||
<translation type="unfinished"></translation>
|
||||
<translation><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;">
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Das ist die Liste der freigegebenen Ordner. Mit den unteren Knöpfen kannst Du neue Ordner hinzufügen oder vorhandene Ordner entfernen.</span></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8pt;">Wenn Du einen neuen Ordner hinzufügst, werden alle Dateien aus dem Ordner und Unterordnern freigegeben.</span></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans'; font-size:8pt;">Du kannst für jeden freigegebenen Ordner die Art der Freigabe einstellen:</span><span style=" font-size:8pt;"> </span></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans'; font-size:8pt; font-weight:600;">Durchsuchbar</span><span style=" font-family:'Sans'; font-size:8pt;">: Dateien sind von Deinen direkten Freunden durchsuchbar.</span></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Sans'; font-size:8pt; font-weight:600;">Netzwerkweit</span><span style=" font-family:'Sans'; font-size:8pt;">: Dateien können von jedem über anoynme Tunnel heruntergeladen werden.</span></p></body></html></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+46"/>
|
||||
<location line="+64"/>
|
||||
<source>Directory</source>
|
||||
<translation>Verzeichnis</translation>
|
||||
<translation>Ordner</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+5"/>
|
||||
<source>Virtual Folder</source>
|
||||
<translation>Virtueller Ordner</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+5"/>
|
||||
<source>Network Wide</source>
|
||||
<translation>Im gesamten Netzwerk</translation>
|
||||
<translation>Netzwerkweit</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+8"/>
|
||||
@ -9398,12 +9406,7 @@ p, li { white-space: pre-wrap; }
|
||||
<translation>Hinzufügen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui/ShareManager.cpp" line="-48"/>
|
||||
<source>Shared Directory Added!</source>
|
||||
<translation>Verzeichnis wurde hinzugefügt!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui/ShareManager.ui" line="-94"/>
|
||||
<location line="-117"/>
|
||||
<source>Shared Folder Manager</source>
|
||||
<translation>Freigabe Manager</translation>
|
||||
</message>
|
||||
@ -9424,12 +9427,12 @@ p, li { white-space: pre-wrap; }
|
||||
<message>
|
||||
<location line="+29"/>
|
||||
<source>Friends Folders</source>
|
||||
<translation>Verzeichnisse der Freunde</translation>
|
||||
<translation>Ordner der Freunde</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+29"/>
|
||||
<source>My Folders</source>
|
||||
<translation>Meine Verzeichnisse</translation>
|
||||
<translation>Meine Ordner</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="-91"/>
|
||||
@ -9478,7 +9481,7 @@ p, li { white-space: pre-wrap; }
|
||||
<message>
|
||||
<location line="-550"/>
|
||||
<source>Open Folder</source>
|
||||
<translation>Verzeichnis öffnen</translation>
|
||||
<translation>Ordner öffnen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+559"/>
|
||||
@ -10282,7 +10285,7 @@ p, li { white-space: pre-wrap; }
|
||||
<context>
|
||||
<name>TransfersDialog</name>
|
||||
<message>
|
||||
<location filename="../gui/TransfersDialog.cpp" line="+232"/>
|
||||
<location filename="../gui/TransfersDialog.cpp" line="+236"/>
|
||||
<source>Cancel</source>
|
||||
<translation>Abbrechen</translation>
|
||||
</message>
|
||||
@ -10292,13 +10295,13 @@ p, li { white-space: pre-wrap; }
|
||||
<translation>Fertige ausblenden</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="-154"/>
|
||||
<location line="+60"/>
|
||||
<location line="-158"/>
|
||||
<location line="+62"/>
|
||||
<source>Status</source>
|
||||
<translation>Status</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="-64"/>
|
||||
<location line="-66"/>
|
||||
<source>Completed</source>
|
||||
<translation>Fertiggestellt</translation>
|
||||
</message>
|
||||
@ -10352,20 +10355,20 @@ p, li { white-space: pre-wrap; }
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui/TransfersDialog.cpp" line="-2"/>
|
||||
<location line="+61"/>
|
||||
<location line="+63"/>
|
||||
<source>Name</source>
|
||||
<comment>i.e: file name</comment>
|
||||
<translation>Name</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="-60"/>
|
||||
<location line="+61"/>
|
||||
<location line="-62"/>
|
||||
<location line="+63"/>
|
||||
<source>Size</source>
|
||||
<comment>i.e: file size</comment>
|
||||
<translation>Grösse</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="-59"/>
|
||||
<location line="-61"/>
|
||||
<source>Speed</source>
|
||||
<comment>i.e: Download speed</comment>
|
||||
<translation>Geschwindigkeit</translation>
|
||||
@ -10388,7 +10391,7 @@ p, li { white-space: pre-wrap; }
|
||||
<translation>Kern-ID</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+54"/>
|
||||
<location line="+56"/>
|
||||
<source>Progress</source>
|
||||
<comment>i.e: % uploaded</comment>
|
||||
<translation>Fortschritt</translation>
|
||||
@ -10405,7 +10408,7 @@ p, li { white-space: pre-wrap; }
|
||||
<translation>Übertragen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+119"/>
|
||||
<location line="+121"/>
|
||||
<source>Play</source>
|
||||
<translation>Abspielen</translation>
|
||||
</message>
|
||||
@ -10422,7 +10425,7 @@ p, li { white-space: pre-wrap; }
|
||||
<message>
|
||||
<location line="+9"/>
|
||||
<source>Open Folder</source>
|
||||
<translation>Verzeichnis öffnen</translation>
|
||||
<translation>Ordner öffnen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+3"/>
|
||||
@ -10530,7 +10533,7 @@ p, li { white-space: pre-wrap; }
|
||||
<translation>Soll dieser Download wirklich abgebrochen und gelöscht werden?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="-897"/>
|
||||
<location line="-901"/>
|
||||
<source>Speed / Queue position</source>
|
||||
<translation>Geschwindigkeits- / Warteschlangenposition</translation>
|
||||
</message>
|
||||
@ -10546,7 +10549,7 @@ p, li { white-space: pre-wrap; }
|
||||
<translation>Download Zeit</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+54"/>
|
||||
<location line="+56"/>
|
||||
<source>Peer</source>
|
||||
<comment>i.e: user name</comment>
|
||||
<translation>Nachbar</translation>
|
||||
@ -10557,7 +10560,7 @@ p, li { white-space: pre-wrap; }
|
||||
<translation>Prüfsumme</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location line="+110"/>
|
||||
<location line="+112"/>
|
||||
<location line="+525"/>
|
||||
<source>Slower</source>
|
||||
<translation>Langsamer</translation>
|
||||
|
Loading…
Reference in New Issue
Block a user