Merge pull request #42 from namecheap/feature/RND-543-screenshot-code-refactoring-for-s3-and-imgur-storages
Feature/rnd 543 screenshot code refactoring for s3 and imgur storages
This commit is contained in:
6
.clang-format
Normal file
6
.clang-format
Normal file
@@ -0,0 +1,6 @@
|
||||
Language: Cpp
|
||||
BasedOnStyle: Mozilla
|
||||
IndentWidth: 4
|
||||
AccessModifierOffset: -4
|
||||
AlwaysBreakAfterDefinitionReturnType: None
|
||||
AlwaysBreakAfterReturnType: None
|
||||
@@ -87,7 +87,7 @@ SOURCES += src/main.cpp \
|
||||
src/config/filepathconfiguration.cpp \
|
||||
src/config/setshortcutwidget.cpp \
|
||||
src/config/shortcutswidget.cpp \
|
||||
src/tools/imgs3/imgs3settings.cpp \
|
||||
src/tools/storage/storagemanager.cpp \
|
||||
src/utils/configshortcuts.cpp \
|
||||
src/widgets/historywidget.cpp \
|
||||
src/utils/configenterprise.cpp \
|
||||
@@ -112,8 +112,6 @@ SOURCES += src/main.cpp \
|
||||
src/tools/circle/circletool.cpp \
|
||||
src/tools/copy/copytool.cpp \
|
||||
src/tools/exit/exittool.cpp \
|
||||
src/tools/imgur/imguruploadertool.cpp \
|
||||
src/tools/imgs3/imgs3uploadertool.cpp \
|
||||
src/tools/line/linetool.cpp \
|
||||
src/tools/marker/markertool.cpp \
|
||||
src/tools/move/movetool.cpp \
|
||||
@@ -130,8 +128,12 @@ SOURCES += src/main.cpp \
|
||||
src/cli/commandoption.cpp \
|
||||
src/cli/commandargument.cpp \
|
||||
src/utils/screenshotsaver.cpp \
|
||||
src/tools/imgur/imguruploader.cpp \
|
||||
src/tools/imgs3/imgs3uploader.cpp \
|
||||
src/tools/storage/imguploader.cpp \
|
||||
src/tools/storage/imgur/imguruploadertool.cpp \
|
||||
src/tools/storage/imgur/imguruploader.cpp \
|
||||
src/tools/storage/s3/imgs3uploadertool.cpp \
|
||||
src/tools/storage/s3/imgs3uploader.cpp \
|
||||
src/tools/storage/s3/imgs3settings.cpp \
|
||||
src/widgets/loadspinner.cpp \
|
||||
src/widgets/imagelabel.cpp \
|
||||
src/widgets/notificationwidget.cpp \
|
||||
@@ -170,7 +172,8 @@ HEADERS += src/widgets/capture/buttonhandler.h \
|
||||
src/config/filepathconfiguration.h \
|
||||
src/config/setshortcutwidget.h \
|
||||
src/config/shortcutswidget.h \
|
||||
src/tools/imgs3/imgs3settings.h \
|
||||
src/tools/storage/imgstorages.h \
|
||||
src/tools/storage/storagemanager.h \
|
||||
src/utils/configshortcuts.h \
|
||||
src/widgets/historywidget.h \
|
||||
src/utils/configenterprise.h \
|
||||
@@ -196,8 +199,6 @@ HEADERS += src/widgets/capture/buttonhandler.h \
|
||||
src/tools/circle/circletool.h \
|
||||
src/tools/copy/copytool.h \
|
||||
src/tools/exit/exittool.h \
|
||||
src/tools/imgur/imguruploadertool.h \
|
||||
src/tools/imgs3/imgs3uploadertool.h \
|
||||
src/tools/line/linetool.h \
|
||||
src/tools/marker/markertool.h \
|
||||
src/tools/move/movetool.h \
|
||||
@@ -213,8 +214,12 @@ HEADERS += src/widgets/capture/buttonhandler.h \
|
||||
src/cli/commandoption.h \
|
||||
src/cli/commandargument.h \
|
||||
src/utils/screenshotsaver.h \
|
||||
src/tools/imgur/imguruploader.h \
|
||||
src/tools/imgs3/imgs3uploader.h \
|
||||
src/tools/storage/imguploader.h \
|
||||
src/tools/storage/imgur/imguruploadertool.h \
|
||||
src/tools/storage/imgur/imguruploader.h \
|
||||
src/tools/storage/s3/imgs3uploader.h \
|
||||
src/tools/storage/s3/imgs3uploadertool.h \
|
||||
src/tools/storage/s3/imgs3settings.h \
|
||||
src/widgets/loadspinner.h \
|
||||
src/widgets/imagelabel.h \
|
||||
src/widgets/notificationwidget.h \
|
||||
|
||||
@@ -16,32 +16,35 @@
|
||||
// along with Flameshot. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#include "configwindow.h"
|
||||
#include "src/utils/colorutils.h"
|
||||
#include "src/utils/confighandler.h"
|
||||
#include "src/utils/pathinfo.h"
|
||||
#include "src/widgets/capture/capturebutton.h"
|
||||
#include "src/config/geneneralconf.h"
|
||||
#include "src/config/filenameeditor.h"
|
||||
#include "src/config/filepathconfiguration.h"
|
||||
#include "src/config/geneneralconf.h"
|
||||
#include "src/config/shortcutswidget.h"
|
||||
#include "src/config/strftimechooserwidget.h"
|
||||
#include "src/config/visualseditor.h"
|
||||
#include "src/utils/colorutils.h"
|
||||
#include "src/utils/confighandler.h"
|
||||
#include "src/utils/globalvalues.h"
|
||||
#include <QIcon>
|
||||
#include <QVBoxLayout>
|
||||
#include <QLabel>
|
||||
#include <QKeyEvent>
|
||||
#include "src/utils/pathinfo.h"
|
||||
#include "src/widgets/capture/capturebutton.h"
|
||||
#include <QFileSystemWatcher>
|
||||
#include <QIcon>
|
||||
#include <QKeyEvent>
|
||||
#include <QLabel>
|
||||
#include <QVBoxLayout>
|
||||
|
||||
// ConfigWindow contains the menus where you can configure the application
|
||||
|
||||
ConfigWindow::ConfigWindow(QWidget *parent) : QTabWidget(parent) {
|
||||
ConfigWindow::ConfigWindow(QWidget* parent)
|
||||
: QTabWidget(parent)
|
||||
{
|
||||
setAttribute(Qt::WA_DeleteOnClose);
|
||||
setMinimumSize(GlobalValues::buttonBaseSize() * 14, GlobalValues::buttonBaseSize() * 12);
|
||||
setMinimumSize(GlobalValues::buttonBaseSize() * 14,
|
||||
GlobalValues::buttonBaseSize() * 12);
|
||||
setWindowIcon(QIcon(":img/app/flameshot.svg"));
|
||||
setWindowTitle(tr("Configuration"));
|
||||
|
||||
auto changedSlot = [this](QString s){
|
||||
auto changedSlot = [this](QString s) {
|
||||
QStringList files = m_configWatcher->files();
|
||||
if (!files.contains(s)) {
|
||||
this->m_configWatcher->addPath(s);
|
||||
@@ -50,50 +53,50 @@ ConfigWindow::ConfigWindow(QWidget *parent) : QTabWidget(parent) {
|
||||
};
|
||||
m_configWatcher = new QFileSystemWatcher(this);
|
||||
m_configWatcher->addPath(ConfigHandler().configFilePath());
|
||||
connect(m_configWatcher, &QFileSystemWatcher::fileChanged,
|
||||
this, changedSlot);
|
||||
connect(
|
||||
m_configWatcher, &QFileSystemWatcher::fileChanged, this, changedSlot);
|
||||
|
||||
QColor background = this->palette().background().color();
|
||||
bool isDark = ColorUtils::colorIsDark(background);
|
||||
QString modifier = isDark ? PathInfo::whiteIconPath() :
|
||||
PathInfo::blackIconPath();
|
||||
QString modifier =
|
||||
isDark ? PathInfo::whiteIconPath() : PathInfo::blackIconPath();
|
||||
|
||||
// visuals
|
||||
m_visuals = new VisualsEditor();
|
||||
addTab(m_visuals, QIcon(modifier + "graphics.svg"),
|
||||
tr("Interface"));
|
||||
addTab(m_visuals, QIcon(modifier + "graphics.svg"), tr("Interface"));
|
||||
|
||||
// filename
|
||||
m_filenameEditor = new FileNameEditor();
|
||||
addTab(m_filenameEditor, QIcon(modifier + "name_edition.svg"),
|
||||
addTab(m_filenameEditor,
|
||||
QIcon(modifier + "name_edition.svg"),
|
||||
tr("Filename Editor"));
|
||||
|
||||
// general
|
||||
m_generalConfig = new GeneneralConf();
|
||||
addTab(m_generalConfig, QIcon(modifier + "config.svg"),
|
||||
tr("General"));
|
||||
addTab(m_generalConfig, QIcon(modifier + "config.svg"), tr("General"));
|
||||
|
||||
// shortcuts
|
||||
m_shortcuts = new ShortcutsWidget();
|
||||
addTab(m_shortcuts, QIcon(modifier + "shortcut.svg"),
|
||||
tr("Shortcuts"));
|
||||
|
||||
// filepath
|
||||
m_filePathConfiguration = new FilePathConfiguration();
|
||||
addTab(m_filePathConfiguration, QIcon(modifier + "filepath.svg"),
|
||||
tr("Path Default"));
|
||||
addTab(m_shortcuts, QIcon(modifier + "shortcut.svg"), tr("Shortcuts"));
|
||||
|
||||
// connect update sigslots
|
||||
connect(this, &ConfigWindow::updateChildren,
|
||||
m_filenameEditor, &FileNameEditor::updateComponents);
|
||||
connect(this, &ConfigWindow::updateChildren,
|
||||
m_visuals, &VisualsEditor::updateComponents);
|
||||
connect(this, &ConfigWindow::updateChildren,
|
||||
m_generalConfig, &GeneneralConf::updateComponents);
|
||||
connect(this,
|
||||
&ConfigWindow::updateChildren,
|
||||
m_filenameEditor,
|
||||
&FileNameEditor::updateComponents);
|
||||
connect(this,
|
||||
&ConfigWindow::updateChildren,
|
||||
m_visuals,
|
||||
&VisualsEditor::updateComponents);
|
||||
connect(this,
|
||||
&ConfigWindow::updateChildren,
|
||||
m_generalConfig,
|
||||
&GeneneralConf::updateComponents);
|
||||
}
|
||||
|
||||
void ConfigWindow::keyPressEvent(QKeyEvent *e) {
|
||||
void ConfigWindow::keyPressEvent(QKeyEvent* e)
|
||||
{
|
||||
if (e->key() == Qt::Key_Escape) {
|
||||
close();
|
||||
close();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,22 +26,22 @@ class GeneneralConf;
|
||||
class QFileSystemWatcher;
|
||||
class VisualsEditor;
|
||||
|
||||
class ConfigWindow : public QTabWidget {
|
||||
class ConfigWindow : public QTabWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit ConfigWindow(QWidget *parent = nullptr);
|
||||
explicit ConfigWindow(QWidget* parent = nullptr);
|
||||
|
||||
signals:
|
||||
void updateChildren();
|
||||
|
||||
protected:
|
||||
void keyPressEvent(QKeyEvent *);
|
||||
void keyPressEvent(QKeyEvent*);
|
||||
|
||||
private:
|
||||
FileNameEditor *m_filenameEditor;
|
||||
FilePathConfiguration *m_filePathConfiguration;
|
||||
ShortcutsWidget *m_shortcuts;
|
||||
GeneneralConf *m_generalConfig;
|
||||
VisualsEditor *m_visuals;
|
||||
QFileSystemWatcher *m_configWatcher;
|
||||
FileNameEditor* m_filenameEditor;
|
||||
ShortcutsWidget* m_shortcuts;
|
||||
GeneneralConf* m_generalConfig;
|
||||
VisualsEditor* m_visuals;
|
||||
QFileSystemWatcher* m_configWatcher;
|
||||
};
|
||||
|
||||
@@ -16,20 +16,24 @@
|
||||
// along with Flameshot. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#include "geneneralconf.h"
|
||||
#include "src/utils/confighandler.h"
|
||||
#include "src/utils/confighandler.h"
|
||||
#include "filepathconfiguration.h"
|
||||
#include "src/core/controller.h"
|
||||
#include <QVBoxLayout>
|
||||
#include <QHBoxLayout>
|
||||
#include "src/tools/storage/imgstorages.h"
|
||||
#include "src/utils/confighandler.h"
|
||||
#include <QCheckBox>
|
||||
#include <QPushButton>
|
||||
#include <QMessageBox>
|
||||
#include <QFileDialog>
|
||||
#include <QFile>
|
||||
#include <QTextCodec>
|
||||
#include <QFileDialog>
|
||||
#include <QGroupBox>
|
||||
#include <QHBoxLayout>
|
||||
#include <QMessageBox>
|
||||
#include <QPushButton>
|
||||
#include <QRadioButton>
|
||||
#include <QTextCodec>
|
||||
#include <QVBoxLayout>
|
||||
|
||||
GeneneralConf::GeneneralConf(QWidget *parent) : QWidget(parent) {
|
||||
GeneneralConf::GeneneralConf(QWidget* parent)
|
||||
: QWidget(parent)
|
||||
{
|
||||
m_layout = new QVBoxLayout(this);
|
||||
m_layout->setAlignment(Qt::AlignTop);
|
||||
initShowHelp();
|
||||
@@ -40,19 +44,23 @@ GeneneralConf::GeneneralConf(QWidget *parent) : QWidget(parent) {
|
||||
initCloseAfterCapture();
|
||||
initCopyAndCloseAfterUpload();
|
||||
initCopyPathAfterSave();
|
||||
initUploadStorage();
|
||||
initFilePathConfiguration();
|
||||
|
||||
// this has to be at the end
|
||||
initConfingButtons();
|
||||
updateComponents();
|
||||
}
|
||||
|
||||
void GeneneralConf::updateComponents() {
|
||||
void GeneneralConf::updateComponents()
|
||||
{
|
||||
ConfigHandler config;
|
||||
m_helpMessage->setChecked(config.showHelpValue());
|
||||
m_sysNotifications->setChecked(config.desktopNotificationValue());
|
||||
m_autostart->setChecked(config.startupLaunchValue());
|
||||
m_closeAfterCapture->setChecked(config.closeAfterScreenshotValue());
|
||||
m_copyAndCloseAfterUpload->setChecked(config.copyAndCloseAfterUploadEnabled());
|
||||
m_copyAndCloseAfterUpload->setChecked(
|
||||
config.copyAndCloseAfterUploadEnabled());
|
||||
m_copyPathAfterSave->setChecked(config.copyPathAfterSaveEnabled());
|
||||
|
||||
#if defined(Q_OS_LINUX) || defined(Q_OS_UNIX)
|
||||
@@ -60,15 +68,18 @@ void GeneneralConf::updateComponents() {
|
||||
#endif
|
||||
}
|
||||
|
||||
void GeneneralConf::showHelpChanged(bool checked) {
|
||||
void GeneneralConf::showHelpChanged(bool checked)
|
||||
{
|
||||
ConfigHandler().setShowHelp(checked);
|
||||
}
|
||||
|
||||
void GeneneralConf::showDesktopNotificationChanged(bool checked) {
|
||||
void GeneneralConf::showDesktopNotificationChanged(bool checked)
|
||||
{
|
||||
ConfigHandler().setDesktopNotification(checked);
|
||||
}
|
||||
|
||||
void GeneneralConf::showTrayIconChanged(bool checked) {
|
||||
void GeneneralConf::showTrayIconChanged(bool checked)
|
||||
{
|
||||
auto controller = Controller::getInstance();
|
||||
if (checked) {
|
||||
controller->enableTrayIcon();
|
||||
@@ -77,25 +88,29 @@ void GeneneralConf::showTrayIconChanged(bool checked) {
|
||||
}
|
||||
}
|
||||
|
||||
void GeneneralConf::autostartChanged(bool checked) {
|
||||
void GeneneralConf::autostartChanged(bool checked)
|
||||
{
|
||||
ConfigHandler().setStartupLaunch(checked);
|
||||
}
|
||||
|
||||
void GeneneralConf::showStartupLaunchMessageChanged(bool checked) {
|
||||
void GeneneralConf::showStartupLaunchMessageChanged(bool checked)
|
||||
{
|
||||
ConfigHandler().setShowStartupLaunchMessage(checked);
|
||||
}
|
||||
|
||||
void GeneneralConf::closeAfterCaptureChanged(bool checked) {
|
||||
void GeneneralConf::closeAfterCaptureChanged(bool checked)
|
||||
{
|
||||
ConfigHandler().setCloseAfterScreenshot(checked);
|
||||
}
|
||||
|
||||
void GeneneralConf::importConfiguration() {
|
||||
void GeneneralConf::importConfiguration()
|
||||
{
|
||||
QString fileName = QFileDialog::getOpenFileName(this, tr("Import"));
|
||||
if (fileName.isEmpty()) {
|
||||
return;
|
||||
}
|
||||
QFile file(fileName);
|
||||
QTextCodec *codec = QTextCodec::codecForLocale();
|
||||
QTextCodec* codec = QTextCodec::codecForLocale();
|
||||
if (!file.open(QFile::ReadOnly)) {
|
||||
QMessageBox::about(this, tr("Error"), tr("Unable to read file."));
|
||||
return;
|
||||
@@ -105,16 +120,17 @@ void GeneneralConf::importConfiguration() {
|
||||
|
||||
QFile config(ConfigHandler().configFilePath());
|
||||
if (!config.open(QFile::WriteOnly)) {
|
||||
QMessageBox::about(this, tr("Error"), tr("Unable to write file."));
|
||||
return;
|
||||
QMessageBox::about(this, tr("Error"), tr("Unable to write file."));
|
||||
return;
|
||||
}
|
||||
config.write(codec->fromUnicode(text));
|
||||
config.close();
|
||||
}
|
||||
|
||||
void GeneneralConf::exportFileConfiguration() {
|
||||
QString fileName = QFileDialog::getSaveFileName(this, tr("Save File"),
|
||||
QStringLiteral("flameshot.conf"));
|
||||
void GeneneralConf::exportFileConfiguration()
|
||||
{
|
||||
QString fileName = QFileDialog::getSaveFileName(
|
||||
this, tr("Save File"), QStringLiteral("flameshot.conf"));
|
||||
|
||||
// Cancel button
|
||||
if (fileName.isNull()) {
|
||||
@@ -131,45 +147,52 @@ void GeneneralConf::exportFileConfiguration() {
|
||||
}
|
||||
}
|
||||
|
||||
void GeneneralConf::resetConfiguration() {
|
||||
void GeneneralConf::resetConfiguration()
|
||||
{
|
||||
QMessageBox::StandardButton reply;
|
||||
reply = QMessageBox::question(
|
||||
this, tr("Confirm Reset"),
|
||||
tr("Are you sure you want to reset the configuration?"),
|
||||
QMessageBox::Yes | QMessageBox::No);
|
||||
this,
|
||||
tr("Confirm Reset"),
|
||||
tr("Are you sure you want to reset the configuration?"),
|
||||
QMessageBox::Yes | QMessageBox::No);
|
||||
if (reply == QMessageBox::Yes) {
|
||||
ConfigHandler().setDefaults();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void GeneneralConf::initShowHelp() {
|
||||
void GeneneralConf::initShowHelp()
|
||||
{
|
||||
m_helpMessage = new QCheckBox(tr("Show help message"), this);
|
||||
ConfigHandler config;
|
||||
bool checked = config.showHelpValue();
|
||||
m_helpMessage->setChecked(checked);
|
||||
m_helpMessage->setToolTip(tr("Show the help message at the beginning "
|
||||
"in the capture mode."));
|
||||
"in the capture mode."));
|
||||
m_layout->addWidget(m_helpMessage);
|
||||
|
||||
connect(m_helpMessage, &QCheckBox::clicked, this,
|
||||
connect(m_helpMessage,
|
||||
&QCheckBox::clicked,
|
||||
this,
|
||||
&GeneneralConf::showHelpChanged);
|
||||
}
|
||||
|
||||
void GeneneralConf::initShowDesktopNotification() {
|
||||
m_sysNotifications =
|
||||
new QCheckBox(tr("Show desktop notifications"), this);
|
||||
void GeneneralConf::initShowDesktopNotification()
|
||||
{
|
||||
m_sysNotifications = new QCheckBox(tr("Show desktop notifications"), this);
|
||||
ConfigHandler config;
|
||||
bool checked = config.desktopNotificationValue();
|
||||
m_sysNotifications->setChecked(checked);
|
||||
m_sysNotifications->setToolTip(tr("Show desktop notifications"));
|
||||
m_layout->addWidget(m_sysNotifications);
|
||||
|
||||
connect(m_sysNotifications, &QCheckBox::clicked, this,
|
||||
connect(m_sysNotifications,
|
||||
&QCheckBox::clicked,
|
||||
this,
|
||||
&GeneneralConf::showDesktopNotificationChanged);
|
||||
}
|
||||
|
||||
void GeneneralConf::initShowTrayIcon() {
|
||||
void GeneneralConf::initShowTrayIcon()
|
||||
{
|
||||
#if defined(Q_OS_LINUX) || defined(Q_OS_UNIX)
|
||||
m_showTray = new QCheckBox(tr("Show tray icon"), this);
|
||||
ConfigHandler config;
|
||||
@@ -178,36 +201,46 @@ void GeneneralConf::initShowTrayIcon() {
|
||||
m_showTray->setToolTip(tr("Show the systemtray icon"));
|
||||
m_layout->addWidget(m_showTray);
|
||||
|
||||
connect(m_showTray, &QCheckBox::stateChanged, this,
|
||||
connect(m_showTray,
|
||||
&QCheckBox::stateChanged,
|
||||
this,
|
||||
&GeneneralConf::showTrayIconChanged);
|
||||
#endif
|
||||
}
|
||||
|
||||
void GeneneralConf::initConfingButtons() {
|
||||
QHBoxLayout *buttonLayout = new QHBoxLayout();
|
||||
void GeneneralConf::initConfingButtons()
|
||||
{
|
||||
QHBoxLayout* buttonLayout = new QHBoxLayout();
|
||||
m_layout->addStretch();
|
||||
QGroupBox *box = new QGroupBox(tr("Configuration File"));
|
||||
QGroupBox* box = new QGroupBox(tr("Configuration File"));
|
||||
box->setFlat(true);
|
||||
box->setLayout(buttonLayout);
|
||||
m_layout->addWidget(box);
|
||||
|
||||
m_exportButton = new QPushButton(tr("Export"));
|
||||
buttonLayout->addWidget(m_exportButton);
|
||||
connect(m_exportButton, &QPushButton::clicked, this,
|
||||
connect(m_exportButton,
|
||||
&QPushButton::clicked,
|
||||
this,
|
||||
&GeneneralConf::exportFileConfiguration);
|
||||
|
||||
m_importButton = new QPushButton(tr("Import"));
|
||||
buttonLayout->addWidget(m_importButton);
|
||||
connect(m_importButton, &QPushButton::clicked, this,
|
||||
connect(m_importButton,
|
||||
&QPushButton::clicked,
|
||||
this,
|
||||
&GeneneralConf::importConfiguration);
|
||||
|
||||
m_resetButton = new QPushButton(tr("Reset"));
|
||||
buttonLayout->addWidget(m_resetButton);
|
||||
connect(m_resetButton, &QPushButton::clicked, this,
|
||||
connect(m_resetButton,
|
||||
&QPushButton::clicked,
|
||||
this,
|
||||
&GeneneralConf::resetConfiguration);
|
||||
}
|
||||
|
||||
void GeneneralConf::initAutostart() {
|
||||
void GeneneralConf::initAutostart()
|
||||
{
|
||||
m_autostart = new QCheckBox(tr("Launch at startup"), this);
|
||||
ConfigHandler config;
|
||||
bool checked = config.startupLaunchValue();
|
||||
@@ -215,12 +248,14 @@ void GeneneralConf::initAutostart() {
|
||||
m_autostart->setToolTip(tr("Launch Flameshot"));
|
||||
m_layout->addWidget(m_autostart);
|
||||
|
||||
connect(m_autostart, &QCheckBox::clicked, this,
|
||||
&GeneneralConf::autostartChanged);
|
||||
connect(
|
||||
m_autostart, &QCheckBox::clicked, this, &GeneneralConf::autostartChanged);
|
||||
}
|
||||
|
||||
void GeneneralConf::initShowStartupLaunchMessage() {
|
||||
m_showStartupLaunchMessage = new QCheckBox(tr("Show welcome message on launch"), this);
|
||||
void GeneneralConf::initShowStartupLaunchMessage()
|
||||
{
|
||||
m_showStartupLaunchMessage =
|
||||
new QCheckBox(tr("Show welcome message on launch"), this);
|
||||
ConfigHandler config;
|
||||
bool checked = config.showStartupLaunchMessage();
|
||||
m_showStartupLaunchMessage->setChecked(checked);
|
||||
@@ -232,23 +267,31 @@ void GeneneralConf::initShowStartupLaunchMessage() {
|
||||
});
|
||||
}
|
||||
|
||||
void GeneneralConf::initCloseAfterCapture() {
|
||||
m_closeAfterCapture = new QCheckBox(tr("Close application after capture"), this);
|
||||
void GeneneralConf::initCloseAfterCapture()
|
||||
{
|
||||
m_closeAfterCapture =
|
||||
new QCheckBox(tr("Close application after capture"), this);
|
||||
ConfigHandler config;
|
||||
bool checked = config.closeAfterScreenshotValue();
|
||||
m_closeAfterCapture->setChecked(checked);
|
||||
m_closeAfterCapture->setToolTip(tr("Close after taking a screenshot"));
|
||||
m_layout->addWidget(m_closeAfterCapture);
|
||||
|
||||
connect(m_closeAfterCapture, &QCheckBox::clicked, this,
|
||||
connect(m_closeAfterCapture,
|
||||
&QCheckBox::clicked,
|
||||
this,
|
||||
&GeneneralConf::closeAfterCaptureChanged);
|
||||
}
|
||||
|
||||
void GeneneralConf::initCopyAndCloseAfterUpload() {
|
||||
m_copyAndCloseAfterUpload = new QCheckBox(tr("Copy URL after upload"), this);
|
||||
void GeneneralConf::initCopyAndCloseAfterUpload()
|
||||
{
|
||||
m_copyAndCloseAfterUpload =
|
||||
new QCheckBox(tr("Copy URL after upload"), this);
|
||||
ConfigHandler config;
|
||||
m_copyAndCloseAfterUpload->setChecked(config.copyAndCloseAfterUploadEnabled());
|
||||
m_copyAndCloseAfterUpload->setToolTip(tr("Copy URL and close window after upload"));
|
||||
m_copyAndCloseAfterUpload->setChecked(
|
||||
config.copyAndCloseAfterUploadEnabled());
|
||||
m_copyAndCloseAfterUpload->setToolTip(
|
||||
tr("Copy URL and close window after upload"));
|
||||
m_layout->addWidget(m_copyAndCloseAfterUpload);
|
||||
|
||||
connect(m_copyAndCloseAfterUpload, &QCheckBox::clicked, [](bool checked) {
|
||||
@@ -256,7 +299,8 @@ void GeneneralConf::initCopyAndCloseAfterUpload() {
|
||||
});
|
||||
}
|
||||
|
||||
void GeneneralConf::initCopyPathAfterSave() {
|
||||
void GeneneralConf::initCopyPathAfterSave()
|
||||
{
|
||||
m_copyPathAfterSave = new QCheckBox(tr("Copy file path after save"), this);
|
||||
ConfigHandler config;
|
||||
m_copyPathAfterSave->setChecked(config.copyPathAfterSaveEnabled());
|
||||
@@ -266,3 +310,44 @@ void GeneneralConf::initCopyPathAfterSave() {
|
||||
ConfigHandler().setCopyPathAfterSaveEnabled(checked);
|
||||
});
|
||||
}
|
||||
|
||||
void GeneneralConf::initUploadStorage()
|
||||
{
|
||||
QGroupBox* groupBox = new QGroupBox(tr("Upload storage"));
|
||||
|
||||
// TODO - remove dependency injection (s3 & imgur)
|
||||
// imgur
|
||||
QRadioButton* storageImgUr = new QRadioButton(tr("Imgur storage"));
|
||||
connect(storageImgUr, &QCheckBox::clicked, [](bool checked) {
|
||||
ConfigHandler().setUploadStorage(SCREENSHOT_STORAGE_TYPE_IMGUR);
|
||||
});
|
||||
|
||||
// s3
|
||||
QRadioButton* storageImgS3 = new QRadioButton(
|
||||
tr("S3 storage (require config.ini file with s3 credentials)"));
|
||||
connect(storageImgS3, &QCheckBox::clicked, [](bool checked) {
|
||||
ConfigHandler().setUploadStorage(SCREENSHOT_STORAGE_TYPE_S3);
|
||||
});
|
||||
|
||||
// set current storage radiobutton active
|
||||
if (ConfigHandler().uploadStorage() == SCREENSHOT_STORAGE_TYPE_IMGUR) {
|
||||
storageImgUr->setChecked(true);
|
||||
|
||||
} else {
|
||||
storageImgS3->setChecked(true);
|
||||
}
|
||||
|
||||
// draw configuration options for uploadStorage
|
||||
QVBoxLayout* vbox = new QVBoxLayout;
|
||||
vbox->addWidget(storageImgUr);
|
||||
vbox->addWidget(storageImgS3);
|
||||
vbox->addStretch(1);
|
||||
groupBox->setLayout(vbox);
|
||||
m_layout->addWidget(groupBox);
|
||||
}
|
||||
|
||||
void GeneneralConf::initFilePathConfiguration()
|
||||
{
|
||||
m_filePathConfiguration = new FilePathConfiguration();
|
||||
m_layout->addWidget(m_filePathConfiguration);
|
||||
}
|
||||
|
||||
@@ -22,39 +22,42 @@
|
||||
class QVBoxLayout;
|
||||
class QCheckBox;
|
||||
class QPushButton;
|
||||
class FilePathConfiguration;
|
||||
|
||||
class GeneneralConf : public QWidget {
|
||||
class GeneneralConf : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit GeneneralConf(QWidget *parent = nullptr);
|
||||
explicit GeneneralConf(QWidget* parent = nullptr);
|
||||
|
||||
public slots:
|
||||
void updateComponents();
|
||||
|
||||
private slots:
|
||||
void showHelpChanged(bool checked);
|
||||
void showDesktopNotificationChanged(bool checked);
|
||||
void showTrayIconChanged(bool checked);
|
||||
void autostartChanged(bool checked);
|
||||
void showStartupLaunchMessageChanged(bool checked);
|
||||
void closeAfterCaptureChanged(bool checked);
|
||||
void importConfiguration();
|
||||
void exportFileConfiguration();
|
||||
void resetConfiguration();
|
||||
void showHelpChanged(bool checked);
|
||||
void showDesktopNotificationChanged(bool checked);
|
||||
void showTrayIconChanged(bool checked);
|
||||
void autostartChanged(bool checked);
|
||||
void showStartupLaunchMessageChanged(bool checked);
|
||||
void closeAfterCaptureChanged(bool checked);
|
||||
void importConfiguration();
|
||||
void exportFileConfiguration();
|
||||
void resetConfiguration();
|
||||
|
||||
private:
|
||||
QVBoxLayout *m_layout;
|
||||
QCheckBox *m_sysNotifications;
|
||||
QCheckBox *m_showTray;
|
||||
QCheckBox *m_helpMessage;
|
||||
QCheckBox *m_autostart;
|
||||
QCheckBox *m_showStartupLaunchMessage;
|
||||
QCheckBox *m_closeAfterCapture;
|
||||
QCheckBox *m_copyAndCloseAfterUpload;
|
||||
QCheckBox *m_copyPathAfterSave;
|
||||
QPushButton *m_importButton;
|
||||
QPushButton *m_exportButton;
|
||||
QPushButton *m_resetButton;
|
||||
QVBoxLayout* m_layout;
|
||||
QCheckBox* m_sysNotifications;
|
||||
QCheckBox* m_showTray;
|
||||
QCheckBox* m_helpMessage;
|
||||
QCheckBox* m_autostart;
|
||||
QCheckBox* m_showStartupLaunchMessage;
|
||||
QCheckBox* m_closeAfterCapture;
|
||||
QCheckBox* m_copyAndCloseAfterUpload;
|
||||
QCheckBox* m_copyPathAfterSave;
|
||||
QPushButton* m_importButton;
|
||||
QPushButton* m_exportButton;
|
||||
QPushButton* m_resetButton;
|
||||
FilePathConfiguration* m_filePathConfiguration;
|
||||
|
||||
void initShowHelp();
|
||||
void initShowDesktopNotification();
|
||||
@@ -65,4 +68,6 @@ private:
|
||||
void initCloseAfterCapture();
|
||||
void initCopyAndCloseAfterUpload();
|
||||
void initCopyPathAfterSave();
|
||||
void initUploadStorage();
|
||||
void initFilePathConfiguration();
|
||||
};
|
||||
|
||||
@@ -1,467 +0,0 @@
|
||||
// Copyright(c) 2017-2019 Alejandro Sirgo Rica & Contributors
|
||||
//
|
||||
// This file is part of Flameshot.
|
||||
//
|
||||
// Flameshot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// Flameshot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Flameshot. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#include "imgs3uploader.h"
|
||||
#include "src/utils/filenamehandler.h"
|
||||
#include "src/utils/systemnotification.h"
|
||||
#include "src/widgets/loadspinner.h"
|
||||
#include "src/widgets/imagelabel.h"
|
||||
#include "src/widgets/notificationwidget.h"
|
||||
#include "src/utils/confighandler.h"
|
||||
#include "src/utils/history.h"
|
||||
#include "src/utils/configenterprise.h"
|
||||
#include <QApplication>
|
||||
#include <QClipboard>
|
||||
#include <QDesktopServices>
|
||||
#include <QShortcut>
|
||||
#include <QVBoxLayout>
|
||||
#include <QHBoxLayout>
|
||||
#include <QLabel>
|
||||
#include <QPushButton>
|
||||
#include <QDrag>
|
||||
#include <QMimeData>
|
||||
#include <QBuffer>
|
||||
#include <QUrlQuery>
|
||||
#include <QNetworkRequest>
|
||||
#include <QNetworkAccessManager>
|
||||
#include <QNetworkReply>
|
||||
#include <QTimer>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
#include <QHttpMultiPart>
|
||||
#include <QNetworkProxy>
|
||||
#include <QDir>
|
||||
#include <QMessageBox>
|
||||
#include <QDebug>
|
||||
|
||||
|
||||
ImgS3Uploader::ImgS3Uploader(const QPixmap &capture, QWidget *parent) :
|
||||
QWidget(parent), m_pixmap(capture)
|
||||
{
|
||||
init(tr("Upload image to S3"), tr("Uploading Image"));
|
||||
}
|
||||
|
||||
ImgS3Uploader::ImgS3Uploader(QWidget *parent) :
|
||||
QWidget(parent)
|
||||
{
|
||||
init(tr("Delete image from S3"), tr("Deleting image..."));
|
||||
}
|
||||
|
||||
void ImgS3Uploader::init(const QString &title, const QString &label) {
|
||||
m_imageLabel = nullptr;
|
||||
m_spinner = nullptr;
|
||||
|
||||
m_proxy = nullptr;
|
||||
m_NetworkAMUpload = nullptr;
|
||||
m_NetworkAMGetCreds = nullptr;
|
||||
m_NetworkAMRemove = nullptr;
|
||||
|
||||
m_success = false;
|
||||
setWindowTitle(title);
|
||||
setWindowIcon(QIcon(":img/app/flameshot.svg"));
|
||||
|
||||
m_spinner = new LoadSpinner(this);
|
||||
m_spinner->setColor(ConfigHandler().uiMainColorValue());
|
||||
m_spinner->start();
|
||||
|
||||
m_infoLabel = new QLabel(label);
|
||||
m_infoLabel->setAlignment(Qt::AlignCenter);
|
||||
|
||||
m_vLayout = new QVBoxLayout();
|
||||
setLayout(m_vLayout);
|
||||
m_vLayout->addWidget(m_spinner, 0, Qt::AlignHCenter);
|
||||
m_vLayout->addWidget(m_infoLabel);
|
||||
|
||||
setAttribute(Qt::WA_DeleteOnClose);
|
||||
}
|
||||
|
||||
QNetworkProxy *ImgS3Uploader::proxy() {
|
||||
if(m_proxy == nullptr) {
|
||||
initProxy();
|
||||
}
|
||||
return m_proxy;
|
||||
}
|
||||
|
||||
QNetworkProxy *ImgS3Uploader::initProxy() {
|
||||
// get enterprise settings
|
||||
ConfigEnterprise *configEnterprise = new ConfigEnterprise();
|
||||
|
||||
// get proxy settings from "config.ini" file
|
||||
QSettings *settings = configEnterprise->settings();
|
||||
QString httpProxyHost = settings->value("HTTP_PROXY_HOST").toString();
|
||||
|
||||
if(httpProxyHost.length() > 0) {
|
||||
m_proxy = new QNetworkProxy();
|
||||
|
||||
if(settings->contains("HTTP_PROXY_TYPE")) {
|
||||
switch (settings->value("HTTP_PROXY_TYPE").toInt()) {
|
||||
case 0:
|
||||
m_proxy->setType(QNetworkProxy::DefaultProxy);
|
||||
break;
|
||||
case 1:
|
||||
m_proxy->setType(QNetworkProxy::Socks5Proxy);
|
||||
break;
|
||||
case 2:
|
||||
m_proxy->setType(QNetworkProxy::NoProxy);
|
||||
break;
|
||||
case 4:
|
||||
m_proxy->setType(QNetworkProxy::HttpCachingProxy);
|
||||
break;
|
||||
case 5:
|
||||
m_proxy->setType(QNetworkProxy::FtpCachingProxy);
|
||||
break;
|
||||
case 3:
|
||||
default:
|
||||
m_proxy->setType(QNetworkProxy::HttpProxy);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
m_proxy->setHostName(httpProxyHost);
|
||||
int nProxyPort = 3128;
|
||||
if(settings->contains("HTTP_PROXY_PORT")) {
|
||||
nProxyPort = settings->value("HTTP_PROXY_PORT").toInt();
|
||||
}
|
||||
m_proxy->setPort(nProxyPort);
|
||||
|
||||
if(settings->contains("HTTP_PROXY_USER")) {
|
||||
qDebug() << "Proxy user" << settings->value("HTTP_PROXY_PASSWORD").toString();
|
||||
m_proxy->setUser(settings->value("HTTP_PROXY_USER").toString());
|
||||
}
|
||||
if(settings->contains("HTTP_PROXY_PASSWORD")) {
|
||||
qDebug() << "Proxy password is not empty";
|
||||
m_proxy->setPassword(settings->value("HTTP_PROXY_PASSWORD").toString());
|
||||
}
|
||||
}
|
||||
else {
|
||||
// Get proxy settings from OS settings
|
||||
QNetworkProxyQuery q(QUrl(m_s3Settings.credsUrl().toUtf8()));
|
||||
q.setQueryType(QNetworkProxyQuery::UrlRequest);
|
||||
q.setProtocolTag("http");
|
||||
|
||||
QList<QNetworkProxy> proxies = QNetworkProxyFactory::systemProxyForQuery(q);
|
||||
if( proxies.size() > 0 && proxies[0].type() != QNetworkProxy::NoProxy ){
|
||||
m_proxy = new QNetworkProxy();
|
||||
m_proxy->setHostName(proxies[0].hostName());
|
||||
m_proxy->setPort(proxies[0].port());
|
||||
m_proxy->setType(proxies[0].type());
|
||||
m_proxy->setUser(proxies[0].user());
|
||||
m_proxy->setPassword(proxies[0].password());
|
||||
}
|
||||
}
|
||||
#ifdef QT_DEBUG
|
||||
if(m_proxy != nullptr) {
|
||||
qDebug() << "Using proxy server";
|
||||
qDebug() << "proxy host:" << m_proxy->hostName();
|
||||
qDebug() << "proxy port:" << m_proxy->port();
|
||||
qDebug() << "proxy type:" << m_proxy->type();
|
||||
qDebug() << "proxy user:" << (m_proxy->user().length() > 0 ? m_proxy->user() : "no user");
|
||||
qDebug() << "proxy password:" << (m_proxy->password().length() > 0 ? "***" : "no password");
|
||||
}
|
||||
else {
|
||||
qDebug() << "No proxy";
|
||||
}
|
||||
#endif
|
||||
return m_proxy;
|
||||
}
|
||||
|
||||
void ImgS3Uploader::clearProxy() {
|
||||
if(m_proxy != nullptr) {
|
||||
delete m_proxy;
|
||||
m_proxy = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void ImgS3Uploader::handleReplyUpload(QNetworkReply *reply) {
|
||||
hideSpinner();
|
||||
m_s3ImageName.clear();
|
||||
if (reply->error() == QNetworkReply::NoError) {
|
||||
// save history
|
||||
QString imageName = m_imageURL.toString();
|
||||
int lastSlash = imageName.lastIndexOf("/");
|
||||
if (lastSlash >= 0) {
|
||||
imageName = imageName.mid(lastSlash + 1);
|
||||
}
|
||||
m_s3ImageName = imageName;
|
||||
History history;
|
||||
imageName = history.packFileName(SCREENSHOT_STORAGE_TYPE_S3, m_deleteToken, imageName);
|
||||
history.save(m_pixmap, imageName);
|
||||
m_success = true;
|
||||
|
||||
// Copy url to clipboard if required
|
||||
if (ConfigHandler().copyAndCloseAfterUploadEnabled()) {
|
||||
QApplication::clipboard()->setText(m_imageURL.toString());
|
||||
SystemNotification().sendMessage(tr("URL copied to clipboard."));
|
||||
close();
|
||||
} else {
|
||||
onUploadOk();
|
||||
}
|
||||
} else {
|
||||
QString reason = reply->attribute( QNetworkRequest::HttpReasonPhraseAttribute ).toString();
|
||||
setInfoLabelText(reply->errorString());
|
||||
}
|
||||
new QShortcut(Qt::Key_Escape, this, SLOT(close()));
|
||||
}
|
||||
|
||||
void ImgS3Uploader::removeImagePreview() {
|
||||
// remove local file
|
||||
History history;
|
||||
QString packedFileName = history.packFileName(SCREENSHOT_STORAGE_TYPE_S3, m_deleteToken, m_s3ImageName);
|
||||
QString fullFileName = history.path() + packedFileName;
|
||||
|
||||
QFile file(fullFileName);
|
||||
if (file.exists()) {
|
||||
file.remove();
|
||||
}
|
||||
m_deleteToken.clear();
|
||||
m_s3ImageName.clear();
|
||||
m_success = true;
|
||||
}
|
||||
|
||||
void ImgS3Uploader::handleReplyDeleteResource(QNetworkReply *reply) {
|
||||
auto replyError = reply->error();
|
||||
if (replyError == QNetworkReply::NoError) {
|
||||
removeImagePreview();
|
||||
} else {
|
||||
hide();
|
||||
|
||||
// generate error message
|
||||
QString message = tr("Unable to remove screenshot from the remote storage.");
|
||||
if(replyError == QNetworkReply::UnknownNetworkError) {
|
||||
message += "\n" + tr("Network error");
|
||||
}
|
||||
else if(replyError == QNetworkReply::UnknownServerError) {
|
||||
message += "\n" + tr("Possibly it doesn't exist anymore");
|
||||
}
|
||||
message += "\n\n" + reply->errorString();
|
||||
message += "\n\n" + tr("Do you want to remove screenshot from local history anyway?");
|
||||
|
||||
if (QMessageBox::Yes == QMessageBox::question(NULL,
|
||||
tr("Remove screenshot from history?"),
|
||||
message,
|
||||
QMessageBox::Yes|QMessageBox::No)) {
|
||||
removeImagePreview();
|
||||
}
|
||||
}
|
||||
close();
|
||||
}
|
||||
|
||||
void ImgS3Uploader::startDrag() {
|
||||
QMimeData *mimeData = new QMimeData;
|
||||
mimeData->setUrls(QList<QUrl> { m_imageURL });
|
||||
mimeData->setImageData(m_pixmap);
|
||||
|
||||
QDrag *dragHandler = new QDrag(this);
|
||||
dragHandler->setMimeData(mimeData);
|
||||
dragHandler->setPixmap(m_pixmap.scaled(256, 256, Qt::KeepAspectRatioByExpanding,
|
||||
Qt::SmoothTransformation));
|
||||
dragHandler->exec();
|
||||
}
|
||||
|
||||
void ImgS3Uploader::handleReplyGetCreds(QNetworkReply *reply){
|
||||
if (reply->error() == QNetworkReply::NoError) {
|
||||
QJsonDocument response = QJsonDocument::fromJson(reply->readAll());
|
||||
uploadToS3(response);
|
||||
} else {
|
||||
if(m_s3Settings.credsUrl().length() == 0){
|
||||
setInfoLabelText(tr("S3 Creds URL is not found in your configuration file"));
|
||||
}
|
||||
else {
|
||||
setInfoLabelText(reply->errorString());
|
||||
}
|
||||
}
|
||||
new QShortcut(Qt::Key_Escape, this, SLOT(close()));
|
||||
}
|
||||
|
||||
void ImgS3Uploader::uploadToS3(QJsonDocument &response) {
|
||||
// set paramets from "fields"
|
||||
QHttpMultiPart *multiPart = new QHttpMultiPart(QHttpMultiPart::FormDataType);
|
||||
|
||||
// read JSON response
|
||||
QJsonObject json = response.object();
|
||||
QString resultURL = json["resultURL"].toString();
|
||||
QJsonObject formData = json["formData"].toObject();
|
||||
QString url = formData["url"].toString();
|
||||
m_deleteToken = json["deleteToken"].toString();
|
||||
|
||||
QJsonObject fields = formData["fields"].toObject();
|
||||
foreach (auto key, fields.keys()) {
|
||||
QString field = fields[key].toString();
|
||||
QHttpPart part;
|
||||
part.setHeader(QNetworkRequest::ContentDispositionHeader, QVariant("form-data; name=\"" + key + "\""));
|
||||
part.setBody(field.toLatin1());
|
||||
multiPart->append(part);
|
||||
}
|
||||
|
||||
QHttpPart imagePart;
|
||||
imagePart.setHeader(QNetworkRequest::ContentTypeHeader, QVariant("image/png"));
|
||||
imagePart.setHeader(QNetworkRequest::ContentDispositionHeader,
|
||||
QVariant("form-data; name=\"file\""));
|
||||
|
||||
QByteArray byteArray;
|
||||
QBuffer buffer(&byteArray);
|
||||
buffer.open(QIODevice::WriteOnly);
|
||||
m_pixmap.save(&buffer, "PNG");
|
||||
|
||||
imagePart.setBody(byteArray);
|
||||
multiPart->append(imagePart);
|
||||
|
||||
m_imageURL.setUrl(resultURL);
|
||||
|
||||
QUrl qUrl(url);
|
||||
QNetworkRequest request(qUrl);
|
||||
|
||||
// upload
|
||||
m_NetworkAMUpload->post(request, multiPart);
|
||||
}
|
||||
|
||||
void ImgS3Uploader::deleteResource(const QString &fileName, const QString &deleteToken) {
|
||||
// read network settings on each call to simplify configuration management without restarting
|
||||
clearProxy();
|
||||
if(m_NetworkAMRemove != nullptr) {
|
||||
delete m_NetworkAMRemove;
|
||||
m_NetworkAMRemove = nullptr;
|
||||
}
|
||||
m_NetworkAMRemove = new QNetworkAccessManager(this);
|
||||
connect(m_NetworkAMRemove, &QNetworkAccessManager::finished, this, &ImgS3Uploader::handleReplyDeleteResource);
|
||||
if(proxy() != nullptr) {
|
||||
m_NetworkAMRemove->setProxy(*proxy());
|
||||
}
|
||||
|
||||
QNetworkRequest request;
|
||||
m_s3ImageName = fileName;
|
||||
m_deleteToken = deleteToken;
|
||||
request.setUrl(m_s3Settings.credsUrl().toUtf8() + fileName);
|
||||
request.setRawHeader("X-API-Key", m_s3Settings.xApiKey().toLatin1());
|
||||
request.setRawHeader("Authorization", "Bearer " + deleteToken.toLatin1());
|
||||
m_NetworkAMRemove->deleteResource(request);
|
||||
}
|
||||
|
||||
void ImgS3Uploader::upload() {
|
||||
m_deleteToken.clear();
|
||||
m_s3ImageName.clear();
|
||||
|
||||
// read network settings on each call to simplify configuration management without restarting
|
||||
// init creds and upload network access managers
|
||||
clearProxy();
|
||||
if(m_NetworkAMGetCreds != nullptr) {
|
||||
delete m_NetworkAMGetCreds;
|
||||
m_NetworkAMGetCreds = nullptr;
|
||||
}
|
||||
m_NetworkAMGetCreds = new QNetworkAccessManager(this);
|
||||
connect(m_NetworkAMGetCreds, &QNetworkAccessManager::finished, this, &ImgS3Uploader::handleReplyGetCreds);
|
||||
|
||||
if(m_NetworkAMUpload != nullptr) {
|
||||
delete m_NetworkAMUpload;
|
||||
m_NetworkAMUpload = nullptr;
|
||||
}
|
||||
m_NetworkAMUpload = new QNetworkAccessManager(this);
|
||||
connect(m_NetworkAMUpload, &QNetworkAccessManager::finished, this, &ImgS3Uploader::handleReplyUpload);
|
||||
if(proxy() != nullptr) {
|
||||
m_NetworkAMGetCreds->setProxy(*proxy());
|
||||
m_NetworkAMUpload->setProxy(*proxy());
|
||||
}
|
||||
|
||||
// get creads
|
||||
QUrl creds(m_s3Settings.credsUrl());
|
||||
QNetworkRequest requestCreds(creds);
|
||||
if(m_s3Settings.xApiKey().length() > 0) {
|
||||
requestCreds.setRawHeader(QByteArray("X-API-Key"), QByteArray(m_s3Settings.xApiKey().toLocal8Bit()));
|
||||
}
|
||||
m_NetworkAMGetCreds->get(requestCreds);
|
||||
}
|
||||
|
||||
void ImgS3Uploader::onUploadOk() {
|
||||
hideSpinner();
|
||||
|
||||
m_notification = new NotificationWidget();
|
||||
m_vLayout->addWidget(m_notification);
|
||||
|
||||
if(nullptr == m_imageLabel) {
|
||||
m_imageLabel = new ImageLabel();
|
||||
m_imageLabel->setScreenshot(m_pixmap);
|
||||
m_imageLabel->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
|
||||
connect(m_imageLabel, &ImageLabel::dragInitiated, this, &ImgS3Uploader::startDrag);
|
||||
m_vLayout->addWidget(m_imageLabel);
|
||||
}
|
||||
|
||||
m_hLayout = new QHBoxLayout();
|
||||
m_vLayout->addLayout(m_hLayout);
|
||||
|
||||
m_copyUrlButton = new QPushButton(tr("Copy URL"));
|
||||
m_openUrlButton = new QPushButton(tr("Open URL"));
|
||||
m_deleteImageOnS3 = new QPushButton(tr("Delete image"));
|
||||
m_toClipboardButton = new QPushButton(tr("Image to Clipboard."));
|
||||
m_hLayout->addWidget(m_copyUrlButton);
|
||||
m_hLayout->addWidget(m_openUrlButton);
|
||||
m_hLayout->addWidget(m_deleteImageOnS3);
|
||||
m_hLayout->addWidget(m_toClipboardButton);
|
||||
|
||||
connect(m_copyUrlButton, &QPushButton::clicked,
|
||||
this, &ImgS3Uploader::copyURL);
|
||||
connect(m_openUrlButton, &QPushButton::clicked,
|
||||
this, &ImgS3Uploader::openURL);
|
||||
connect(m_deleteImageOnS3, &QPushButton::clicked,
|
||||
this, &ImgS3Uploader::deleteImageOnS3);
|
||||
connect(m_toClipboardButton, &QPushButton::clicked,
|
||||
this, &ImgS3Uploader::copyImage);
|
||||
}
|
||||
|
||||
void ImgS3Uploader::openURL() {
|
||||
bool successful = QDesktopServices::openUrl(m_imageURL);
|
||||
if (!successful) {
|
||||
m_notification->showMessage(tr("Unable to open the URL."));
|
||||
}
|
||||
}
|
||||
|
||||
void ImgS3Uploader::copyURL() {
|
||||
QApplication::clipboard()->setText(m_imageURL.toString());
|
||||
m_notification->showMessage(tr("URL copied to clipboard."));
|
||||
}
|
||||
|
||||
void ImgS3Uploader::copyImage() {
|
||||
QApplication::clipboard()->setPixmap(m_pixmap);
|
||||
m_notification->showMessage(tr("Screenshot copied to clipboard."));
|
||||
}
|
||||
|
||||
void ImgS3Uploader::deleteImageOnS3() {
|
||||
if(nullptr != m_imageLabel) {
|
||||
m_imageLabel->hide();
|
||||
}
|
||||
m_spinner->show();
|
||||
setInfoLabelText(tr("Deleting image..."));
|
||||
deleteResource(m_s3ImageName, m_deleteToken);
|
||||
}
|
||||
|
||||
bool ImgS3Uploader::success() {
|
||||
return m_success;
|
||||
}
|
||||
|
||||
void ImgS3Uploader::hideSpinner() {
|
||||
if(nullptr != m_spinner) {
|
||||
m_spinner->hide();
|
||||
}
|
||||
if(nullptr != m_imageLabel) {
|
||||
m_imageLabel->hide();
|
||||
}
|
||||
}
|
||||
|
||||
void ImgS3Uploader::setInfoLabelText(const QString &infoText) {
|
||||
m_infoLabel->setText(infoText);
|
||||
m_infoLabel->show();
|
||||
}
|
||||
@@ -1,103 +0,0 @@
|
||||
// Copyright(c) 2017-2019 Alejandro Sirgo Rica & Contributors
|
||||
//
|
||||
// This file is part of Flameshot.
|
||||
//
|
||||
// Flameshot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// Flameshot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Flameshot. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#pragma once
|
||||
|
||||
#define S3_API_IMG_PATH "v2/image/"
|
||||
|
||||
#include "imgs3settings.h"
|
||||
#include <QWidget>
|
||||
#include <QUrl>
|
||||
|
||||
class QNetworkReply;
|
||||
class QNetworkProxy;
|
||||
class QNetworkAccessManager;
|
||||
class QHBoxLayout;
|
||||
class QVBoxLayout;
|
||||
class QLabel;
|
||||
class LoadSpinner;
|
||||
class QPushButton;
|
||||
class QUrl;
|
||||
class NotificationWidget;
|
||||
class ConfigEnterprise;
|
||||
class ImageLabel;
|
||||
|
||||
class ImgS3Uploader : public QWidget {
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit ImgS3Uploader(const QPixmap &capture, QWidget *parent = nullptr);
|
||||
explicit ImgS3Uploader(QWidget *parent = nullptr);
|
||||
void upload();
|
||||
void deleteResource(const QString &, const QString &);
|
||||
bool success();
|
||||
|
||||
private slots:
|
||||
void handleReplyUpload(QNetworkReply *reply);
|
||||
void handleReplyGetCreds(QNetworkReply *reply);
|
||||
void handleReplyDeleteResource(QNetworkReply *reply);
|
||||
void startDrag();
|
||||
|
||||
void openURL();
|
||||
void copyURL();
|
||||
void copyImage();
|
||||
void deleteImageOnS3();
|
||||
|
||||
private:
|
||||
void init(const QString &title, const QString &label);
|
||||
void uploadToS3(QJsonDocument &response);
|
||||
QNetworkProxy *initProxy();
|
||||
void clearProxy();
|
||||
void removeImagePreview();
|
||||
|
||||
void onUploadOk();
|
||||
|
||||
void hideSpinner();
|
||||
void setInfoLabelText(const QString &);
|
||||
QNetworkProxy *proxy();
|
||||
|
||||
|
||||
// class members
|
||||
private:
|
||||
bool m_success;
|
||||
ImgS3Settings m_s3Settings;
|
||||
|
||||
ImageLabel *m_imageLabel;
|
||||
|
||||
QString m_hostName;
|
||||
QPixmap m_pixmap;
|
||||
QNetworkProxy *m_proxy;
|
||||
QNetworkAccessManager *m_NetworkAMUpload;
|
||||
QNetworkAccessManager *m_NetworkAMGetCreds;
|
||||
QNetworkAccessManager *m_NetworkAMRemove;
|
||||
|
||||
QVBoxLayout *m_vLayout;
|
||||
QHBoxLayout *m_hLayout;
|
||||
// loading
|
||||
QLabel *m_infoLabel;
|
||||
LoadSpinner *m_spinner;
|
||||
// uploaded
|
||||
QPushButton *m_openUrlButton;
|
||||
QPushButton *m_copyUrlButton;
|
||||
QPushButton *m_toClipboardButton;
|
||||
QPushButton *m_deleteImageOnS3;
|
||||
QUrl m_imageURL;
|
||||
NotificationWidget *m_notification;
|
||||
|
||||
// Temporary variables
|
||||
QString m_deleteToken;
|
||||
QString m_s3ImageName;
|
||||
};
|
||||
@@ -1,182 +0,0 @@
|
||||
// Copyright(c) 2017-2019 Alejandro Sirgo Rica & Contributors
|
||||
//
|
||||
// This file is part of Flameshot.
|
||||
//
|
||||
// Flameshot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// Flameshot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Flameshot. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#include "imguruploader.h"
|
||||
#include "src/utils/filenamehandler.h"
|
||||
#include "src/utils/systemnotification.h"
|
||||
#include "src/widgets/loadspinner.h"
|
||||
#include "src/widgets/imagelabel.h"
|
||||
#include "src/widgets/notificationwidget.h"
|
||||
#include "src/utils/confighandler.h"
|
||||
#include <QApplication>
|
||||
#include <QClipboard>
|
||||
#include <QDesktopServices>
|
||||
#include <QShortcut>
|
||||
#include <QVBoxLayout>
|
||||
#include <QHBoxLayout>
|
||||
#include <QLabel>
|
||||
#include <QPushButton>
|
||||
#include <QDrag>
|
||||
#include <QMimeData>
|
||||
#include <QBuffer>
|
||||
#include <QUrlQuery>
|
||||
#include <QNetworkRequest>
|
||||
#include <QNetworkAccessManager>
|
||||
#include <QNetworkReply>
|
||||
#include <QTimer>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
|
||||
ImgurUploader::ImgurUploader(const QPixmap &capture, QWidget *parent) :
|
||||
QWidget(parent), m_pixmap(capture)
|
||||
{
|
||||
setWindowTitle(tr("Upload to Imgur"));
|
||||
setWindowIcon(QIcon(":img/app/flameshot.svg"));
|
||||
|
||||
m_spinner = new LoadSpinner(this);
|
||||
m_spinner->setColor(ConfigHandler().uiMainColorValue());
|
||||
m_spinner->start();
|
||||
|
||||
m_infoLabel = new QLabel(tr("Uploading Image"));
|
||||
|
||||
m_vLayout = new QVBoxLayout();
|
||||
setLayout(m_vLayout);
|
||||
m_vLayout->addWidget(m_spinner, 0, Qt::AlignHCenter);
|
||||
m_vLayout->addWidget(m_infoLabel);
|
||||
|
||||
m_NetworkAM = new QNetworkAccessManager(this);
|
||||
connect(m_NetworkAM, &QNetworkAccessManager::finished, this,
|
||||
&ImgurUploader::handleReply);
|
||||
|
||||
setAttribute(Qt::WA_DeleteOnClose);
|
||||
|
||||
upload();
|
||||
// QTimer::singleShot(2000, this, &ImgurUploader::onUploadOk); // testing
|
||||
}
|
||||
|
||||
void ImgurUploader::handleReply(QNetworkReply *reply) {
|
||||
m_spinner->deleteLater();
|
||||
if (reply->error() == QNetworkReply::NoError) {
|
||||
QJsonDocument response = QJsonDocument::fromJson(reply->readAll());
|
||||
QJsonObject json = response.object();
|
||||
QJsonObject data = json[QStringLiteral("data")].toObject();
|
||||
m_imageURL.setUrl(data[QStringLiteral("link")].toString());
|
||||
m_deleteImageURL.setUrl(QStringLiteral("https://imgur.com/delete/%1").arg(
|
||||
data[QStringLiteral("deletehash")].toString()));
|
||||
if (ConfigHandler().copyAndCloseAfterUploadEnabled()) {
|
||||
QApplication::clipboard()->setText(m_imageURL.toString());
|
||||
SystemNotification().sendMessage(QObject::tr("URL copied to clipboard."));
|
||||
close();
|
||||
} else {
|
||||
onUploadOk();
|
||||
}
|
||||
} else {
|
||||
m_infoLabel->setText(reply->errorString());
|
||||
}
|
||||
new QShortcut(Qt::Key_Escape, this, SLOT(close()));
|
||||
}
|
||||
|
||||
void ImgurUploader::startDrag() {
|
||||
QMimeData *mimeData = new QMimeData;
|
||||
mimeData->setUrls(QList<QUrl> { m_imageURL });
|
||||
mimeData->setImageData(m_pixmap);
|
||||
|
||||
QDrag *dragHandler = new QDrag(this);
|
||||
dragHandler->setMimeData(mimeData);
|
||||
dragHandler->setPixmap(m_pixmap.scaled(256, 256, Qt::KeepAspectRatioByExpanding,
|
||||
Qt::SmoothTransformation));
|
||||
dragHandler->exec();
|
||||
}
|
||||
|
||||
void ImgurUploader::upload() {
|
||||
QByteArray byteArray;
|
||||
QBuffer buffer(&byteArray);
|
||||
m_pixmap.save(&buffer, "PNG");
|
||||
|
||||
QUrlQuery urlQuery;
|
||||
urlQuery.addQueryItem(QStringLiteral("title"), QStringLiteral("flameshot_screenshot"));
|
||||
QString description = FileNameHandler().parsedPattern();
|
||||
urlQuery.addQueryItem(QStringLiteral("description"), description);
|
||||
|
||||
QUrl url(QStringLiteral("https://api.imgur.com/3/image"));
|
||||
url.setQuery(urlQuery);
|
||||
QNetworkRequest request(url);
|
||||
request.setHeader(QNetworkRequest::ContentTypeHeader,
|
||||
"application/application/x-www-form-urlencoded");
|
||||
request.setRawHeader("Authorization", QStringLiteral("Client-ID %1").arg(IMGUR_CLIENT_ID).toUtf8());
|
||||
|
||||
m_NetworkAM->post(request, byteArray);
|
||||
}
|
||||
|
||||
void ImgurUploader::onUploadOk() {
|
||||
m_infoLabel->deleteLater();
|
||||
|
||||
m_notification = new NotificationWidget();
|
||||
m_vLayout->addWidget(m_notification);
|
||||
|
||||
ImageLabel *imageLabel = new ImageLabel();
|
||||
imageLabel->setScreenshot(m_pixmap);
|
||||
imageLabel->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
|
||||
connect(imageLabel, &ImageLabel::dragInitiated, this, &ImgurUploader::startDrag);
|
||||
m_vLayout->addWidget(imageLabel);
|
||||
|
||||
m_hLayout = new QHBoxLayout();
|
||||
m_vLayout->addLayout(m_hLayout);
|
||||
|
||||
m_copyUrlButton = new QPushButton(tr("Copy URL"));
|
||||
m_openUrlButton = new QPushButton(tr("Open URL"));
|
||||
m_openDeleteUrlButton = new QPushButton(tr("Delete image"));
|
||||
m_toClipboardButton = new QPushButton(tr("Image to Clipboard."));
|
||||
m_hLayout->addWidget(m_copyUrlButton);
|
||||
m_hLayout->addWidget(m_openUrlButton);
|
||||
m_hLayout->addWidget(m_openDeleteUrlButton);
|
||||
m_hLayout->addWidget(m_toClipboardButton);
|
||||
|
||||
connect(m_copyUrlButton, &QPushButton::clicked,
|
||||
this, &ImgurUploader::copyURL);
|
||||
connect(m_openUrlButton, &QPushButton::clicked,
|
||||
this, &ImgurUploader::openURL);
|
||||
connect(m_openDeleteUrlButton, &QPushButton::clicked,
|
||||
this, &ImgurUploader::openDeleteURL);
|
||||
connect(m_toClipboardButton, &QPushButton::clicked,
|
||||
this, &ImgurUploader::copyImage);
|
||||
}
|
||||
|
||||
void ImgurUploader::openURL() {
|
||||
bool successful = QDesktopServices::openUrl(m_imageURL);
|
||||
if (!successful) {
|
||||
m_notification->showMessage(tr("Unable to open the URL."));
|
||||
}
|
||||
}
|
||||
|
||||
void ImgurUploader::copyURL() {
|
||||
QApplication::clipboard()->setText(m_imageURL.toString());
|
||||
m_notification->showMessage(tr("URL copied to clipboard."));
|
||||
}
|
||||
|
||||
void ImgurUploader::openDeleteURL()
|
||||
{
|
||||
bool successful = QDesktopServices::openUrl(m_deleteImageURL);
|
||||
if (!successful) {
|
||||
m_notification->showMessage(tr("Unable to open the URL."));
|
||||
}
|
||||
}
|
||||
|
||||
void ImgurUploader::copyImage() {
|
||||
QApplication::clipboard()->setPixmap(m_pixmap);
|
||||
m_notification->showMessage(tr("Screenshot copied to clipboard."));
|
||||
}
|
||||
8
src/tools/storage/imgstorages.h
Normal file
8
src/tools/storage/imgstorages.h
Normal file
@@ -0,0 +1,8 @@
|
||||
#ifndef IMGSTORAGES_H
|
||||
#define IMGSTORAGES_H
|
||||
|
||||
#define SCREENSHOT_STORAGE_TYPE_LOCAL ""
|
||||
#define SCREENSHOT_STORAGE_TYPE_S3 "s3"
|
||||
#define SCREENSHOT_STORAGE_TYPE_IMGUR "imgur"
|
||||
|
||||
#endif // IMGSTORAGES_H
|
||||
209
src/tools/storage/imguploader.cpp
Normal file
209
src/tools/storage/imguploader.cpp
Normal file
@@ -0,0 +1,209 @@
|
||||
// Copyright(c) 2017-2019 Alejandro Sirgo Rica & Contributors
|
||||
//
|
||||
// This file is part of Flameshot.
|
||||
//
|
||||
// Flameshot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// Flameshot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Flameshot. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#include "imguploader.h"
|
||||
#include "src/utils/configenterprise.h"
|
||||
#include "src/utils/confighandler.h"
|
||||
#include "src/utils/filenamehandler.h"
|
||||
#include "src/utils/history.h"
|
||||
#include "src/utils/systemnotification.h"
|
||||
#include "src/widgets/imagelabel.h"
|
||||
#include "src/widgets/loadspinner.h"
|
||||
#include "src/widgets/notificationwidget.h"
|
||||
#include <QApplication>
|
||||
#include <QBuffer>
|
||||
#include <QClipboard>
|
||||
#include <QDebug>
|
||||
#include <QDesktopServices>
|
||||
#include <QDir>
|
||||
#include <QDrag>
|
||||
#include <QHBoxLayout>
|
||||
#include <QHttpMultiPart>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
#include <QLabel>
|
||||
#include <QMessageBox>
|
||||
#include <QMimeData>
|
||||
#include <QNetworkAccessManager>
|
||||
#include <QNetworkProxy>
|
||||
#include <QNetworkReply>
|
||||
#include <QNetworkRequest>
|
||||
#include <QPushButton>
|
||||
#include <QShortcut>
|
||||
#include <QTimer>
|
||||
#include <QUrlQuery>
|
||||
#include <QVBoxLayout>
|
||||
|
||||
ImgUploader::ImgUploader(const QPixmap& capture, QWidget* parent)
|
||||
: QWidget(parent)
|
||||
, m_pixmap(capture)
|
||||
{
|
||||
init(tr("Upload image to S3"), tr("Uploading Image"));
|
||||
}
|
||||
|
||||
ImgUploader::ImgUploader(QWidget* parent)
|
||||
: QWidget(parent)
|
||||
{
|
||||
init(tr("Upload image"), tr("Uploading Image"));
|
||||
}
|
||||
|
||||
void ImgUploader::init(const QString& title, const QString& label)
|
||||
{
|
||||
m_imageLabel = nullptr;
|
||||
m_spinner = nullptr;
|
||||
|
||||
resultStatus = false;
|
||||
setWindowTitle(title);
|
||||
setWindowIcon(QIcon(":img/app/flameshot.svg"));
|
||||
|
||||
m_spinner = new LoadSpinner(this);
|
||||
m_spinner->setColor(ConfigHandler().uiMainColorValue());
|
||||
m_spinner->start();
|
||||
|
||||
m_infoLabel = new QLabel(label);
|
||||
m_infoLabel->setAlignment(Qt::AlignCenter);
|
||||
|
||||
m_vLayout = new QVBoxLayout();
|
||||
setLayout(m_vLayout);
|
||||
m_vLayout->addWidget(m_spinner, 0, Qt::AlignHCenter);
|
||||
m_vLayout->addWidget(m_infoLabel);
|
||||
|
||||
setAttribute(Qt::WA_DeleteOnClose);
|
||||
}
|
||||
|
||||
void ImgUploader::openURL()
|
||||
{
|
||||
bool successful = QDesktopServices::openUrl(imageUrl());
|
||||
if (!successful) {
|
||||
m_notification->showMessage(tr("Unable to open the URL."));
|
||||
}
|
||||
}
|
||||
|
||||
void ImgUploader::copyURL()
|
||||
{
|
||||
QApplication::clipboard()->setText(imageUrl().toString());
|
||||
m_notification->showMessage(tr("URL copied to clipboard."));
|
||||
}
|
||||
|
||||
void ImgUploader::copyImage()
|
||||
{
|
||||
QApplication::clipboard()->setPixmap(m_pixmap);
|
||||
m_notification->showMessage(tr("Screenshot copied to clipboard."));
|
||||
}
|
||||
|
||||
void ImgUploader::deleteImageOnStorage()
|
||||
{
|
||||
if (nullptr != m_imageLabel) {
|
||||
m_imageLabel->hide();
|
||||
}
|
||||
m_spinner->show();
|
||||
setInfoLabelText(tr("Deleting image..."));
|
||||
deleteResource(m_storageImageName, m_deleteToken);
|
||||
}
|
||||
|
||||
void ImgUploader::startDrag()
|
||||
{
|
||||
QMimeData* mimeData = new QMimeData;
|
||||
mimeData->setUrls(QList<QUrl>{ imageUrl() });
|
||||
mimeData->setImageData(m_pixmap);
|
||||
|
||||
QDrag* dragHandler = new QDrag(this);
|
||||
dragHandler->setMimeData(mimeData);
|
||||
dragHandler->setPixmap(m_pixmap.scaled(
|
||||
256, 256, Qt::KeepAspectRatioByExpanding, Qt::SmoothTransformation));
|
||||
dragHandler->exec();
|
||||
}
|
||||
|
||||
void ImgUploader::hideSpinner()
|
||||
{
|
||||
if (nullptr != m_spinner) {
|
||||
m_spinner->hide();
|
||||
}
|
||||
if (nullptr != m_imageLabel) {
|
||||
m_imageLabel->hide();
|
||||
}
|
||||
}
|
||||
|
||||
void ImgUploader::setInfoLabelText(const QString& infoText)
|
||||
{
|
||||
m_infoLabel->setText(infoText);
|
||||
m_infoLabel->show();
|
||||
}
|
||||
|
||||
const QPixmap& ImgUploader::pixmap()
|
||||
{
|
||||
return m_pixmap;
|
||||
}
|
||||
|
||||
void ImgUploader::onUploadOk()
|
||||
{
|
||||
hideSpinner();
|
||||
|
||||
m_notification = new NotificationWidget();
|
||||
m_vLayout->addWidget(m_notification);
|
||||
|
||||
if (nullptr == m_imageLabel) {
|
||||
m_imageLabel = new ImageLabel();
|
||||
m_imageLabel->setScreenshot(pixmap());
|
||||
m_imageLabel->setSizePolicy(QSizePolicy::Expanding,
|
||||
QSizePolicy::Expanding);
|
||||
connect(m_imageLabel,
|
||||
&ImageLabel::dragInitiated,
|
||||
this,
|
||||
&ImgUploader::startDrag);
|
||||
m_vLayout->addWidget(m_imageLabel);
|
||||
}
|
||||
|
||||
m_hLayout = new QHBoxLayout();
|
||||
m_vLayout->addLayout(m_hLayout);
|
||||
|
||||
m_copyUrlButton = new QPushButton(tr("Copy URL"));
|
||||
m_openUrlButton = new QPushButton(tr("Open URL"));
|
||||
m_deleteImageOnStorage = new QPushButton(tr("Delete image"));
|
||||
m_toClipboardButton = new QPushButton(tr("Image to Clipboard."));
|
||||
m_hLayout->addWidget(m_copyUrlButton);
|
||||
m_hLayout->addWidget(m_openUrlButton);
|
||||
m_hLayout->addWidget(m_deleteImageOnStorage);
|
||||
m_hLayout->addWidget(m_toClipboardButton);
|
||||
|
||||
connect(
|
||||
m_copyUrlButton, &QPushButton::clicked, this, &ImgUploader::copyURL);
|
||||
connect(
|
||||
m_openUrlButton, &QPushButton::clicked, this, &ImgUploader::openURL);
|
||||
connect(m_deleteImageOnStorage,
|
||||
&QPushButton::clicked,
|
||||
this,
|
||||
&ImgUploader::deleteImageOnStorage);
|
||||
connect(m_toClipboardButton,
|
||||
&QPushButton::clicked,
|
||||
this,
|
||||
&ImgUploader::copyImage);
|
||||
}
|
||||
|
||||
void ImgUploader::setImageUrl(const QUrl& imageURL)
|
||||
{
|
||||
m_imageURL = imageURL;
|
||||
}
|
||||
const QUrl& ImgUploader::imageUrl()
|
||||
{
|
||||
return m_imageURL;
|
||||
}
|
||||
|
||||
void ImgUploader::showNotificationMessage(const QString& notificationMessage) {
|
||||
m_notification->showMessage(notificationMessage);
|
||||
}
|
||||
|
||||
96
src/tools/storage/imguploader.h
Normal file
96
src/tools/storage/imguploader.h
Normal file
@@ -0,0 +1,96 @@
|
||||
// Copyright(c) 2017-2019 Alejandro Sirgo Rica & Contributors
|
||||
//
|
||||
// This file is part of Flameshot.
|
||||
//
|
||||
// Flameshot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// Flameshot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Flameshot. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "imgstorages.h"
|
||||
#include "s3/imgs3settings.h"
|
||||
#include <QUrl>
|
||||
#include <QWidget>
|
||||
|
||||
class QNetworkReply;
|
||||
class QNetworkProxy;
|
||||
class QNetworkAccessManager;
|
||||
class QHBoxLayout;
|
||||
class QVBoxLayout;
|
||||
class QLabel;
|
||||
class LoadSpinner;
|
||||
class QPushButton;
|
||||
class QUrl;
|
||||
class NotificationWidget;
|
||||
class ConfigEnterprise;
|
||||
class ImageLabel;
|
||||
|
||||
class ImgUploader : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit ImgUploader(const QPixmap& capture, QWidget* parent = nullptr);
|
||||
explicit ImgUploader(QWidget* parent = nullptr);
|
||||
|
||||
virtual void upload(){};
|
||||
virtual void deleteResource(const QString&, const QString&){};
|
||||
|
||||
protected:
|
||||
const QPixmap& pixmap();
|
||||
void setImageUrl(const QUrl&);
|
||||
const QUrl& imageUrl();
|
||||
void onUploadOk();
|
||||
void hideSpinner();
|
||||
void setInfoLabelText(const QString&);
|
||||
void showNotificationMessage(const QString&);
|
||||
|
||||
public slots:
|
||||
virtual void openURL();
|
||||
virtual void copyURL();
|
||||
virtual void copyImage();
|
||||
virtual void deleteImageOnStorage();
|
||||
virtual void startDrag();
|
||||
|
||||
private:
|
||||
void init(const QString& title, const QString& label);
|
||||
|
||||
// class members
|
||||
private:
|
||||
QPixmap m_pixmap;
|
||||
|
||||
QUrl m_imageURL;
|
||||
ImageLabel* m_imageLabel;
|
||||
|
||||
NotificationWidget* m_notification;
|
||||
|
||||
QVBoxLayout* m_vLayout;
|
||||
QHBoxLayout* m_hLayout;
|
||||
// loading
|
||||
LoadSpinner* m_spinner;
|
||||
QLabel* m_infoLabel;
|
||||
// uploaded
|
||||
QPushButton* m_openUrlButton;
|
||||
QPushButton* m_copyUrlButton;
|
||||
QPushButton* m_toClipboardButton;
|
||||
QPushButton* m_deleteImageOnStorage;
|
||||
|
||||
protected:
|
||||
// bool m_success;
|
||||
|
||||
// Temporary variables
|
||||
QString m_deleteToken;
|
||||
QString m_storageImageName;
|
||||
|
||||
public:
|
||||
bool resultStatus;
|
||||
};
|
||||
129
src/tools/storage/imgur/imguruploader.cpp
Normal file
129
src/tools/storage/imgur/imguruploader.cpp
Normal file
@@ -0,0 +1,129 @@
|
||||
// Copyright(c) 2017-2019 Alejandro Sirgo Rica & Contributors
|
||||
//
|
||||
// This file is part of Flameshot.
|
||||
//
|
||||
// Flameshot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// Flameshot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Flameshot. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#include "imguruploader.h"
|
||||
#include "src/utils/confighandler.h"
|
||||
#include "src/utils/filenamehandler.h"
|
||||
#include "src/utils/history.h"
|
||||
#include "src/utils/systemnotification.h"
|
||||
#include "src/widgets/imagelabel.h"
|
||||
#include "src/widgets/loadspinner.h"
|
||||
#include "src/widgets/notificationwidget.h"
|
||||
#include <QApplication>
|
||||
#include <QBuffer>
|
||||
#include <QClipboard>
|
||||
#include <QDesktopServices>
|
||||
#include <QDrag>
|
||||
#include <QHBoxLayout>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
#include <QLabel>
|
||||
#include <QMimeData>
|
||||
#include <QNetworkAccessManager>
|
||||
#include <QNetworkReply>
|
||||
#include <QNetworkRequest>
|
||||
#include <QPushButton>
|
||||
#include <QShortcut>
|
||||
#include <QTimer>
|
||||
#include <QUrlQuery>
|
||||
#include <QVBoxLayout>
|
||||
|
||||
ImgurUploader::ImgurUploader(const QPixmap& capture, QWidget* parent)
|
||||
: ImgUploader(capture, parent)
|
||||
{
|
||||
setWindowTitle(tr("Upload to Imgur"));
|
||||
|
||||
m_NetworkAM = new QNetworkAccessManager(this);
|
||||
connect(m_NetworkAM,
|
||||
&QNetworkAccessManager::finished,
|
||||
this,
|
||||
&ImgurUploader::handleReply);
|
||||
// QTimer::singleShot(2000, this, &ImgurUploader::onUploadOk); // testing
|
||||
}
|
||||
|
||||
void ImgurUploader::handleReply(QNetworkReply* reply)
|
||||
{
|
||||
if (reply->error() == QNetworkReply::NoError) {
|
||||
QJsonDocument response = QJsonDocument::fromJson(reply->readAll());
|
||||
QJsonObject json = response.object();
|
||||
QJsonObject data = json[QStringLiteral("data")].toObject();
|
||||
setImageUrl(data[QStringLiteral("link")].toString());
|
||||
m_deleteToken = data[QStringLiteral("deletehash")].toString();
|
||||
|
||||
m_deleteImageURL.setUrl(
|
||||
QStringLiteral("https://imgur.com/delete/%1").arg(m_deleteToken));
|
||||
|
||||
// save history
|
||||
QString imageName = imageUrl().toString();
|
||||
int lastSlash = imageName.lastIndexOf("/");
|
||||
if (lastSlash >= 0) {
|
||||
imageName = imageName.mid(lastSlash + 1);
|
||||
}
|
||||
m_storageImageName = imageName;
|
||||
|
||||
// save image to history
|
||||
History history;
|
||||
imageName = history.packFileName(
|
||||
SCREENSHOT_STORAGE_TYPE_IMGUR, m_deleteToken, imageName);
|
||||
history.save(pixmap(), imageName);
|
||||
resultStatus = true;
|
||||
|
||||
if (ConfigHandler().copyAndCloseAfterUploadEnabled()) {
|
||||
QApplication::clipboard()->setText(imageUrl().toString());
|
||||
SystemNotification().sendMessage(
|
||||
QObject::tr("URL copied to clipboard."));
|
||||
close();
|
||||
} else {
|
||||
onUploadOk();
|
||||
}
|
||||
} else {
|
||||
setInfoLabelText(reply->errorString());
|
||||
}
|
||||
new QShortcut(Qt::Key_Escape, this, SLOT(close()));
|
||||
}
|
||||
|
||||
void ImgurUploader::upload()
|
||||
{
|
||||
QByteArray byteArray;
|
||||
QBuffer buffer(&byteArray);
|
||||
pixmap().save(&buffer, "PNG");
|
||||
|
||||
QUrlQuery urlQuery;
|
||||
urlQuery.addQueryItem(QStringLiteral("title"),
|
||||
QStringLiteral("flameshot_screenshot"));
|
||||
QString description = FileNameHandler().parsedPattern();
|
||||
urlQuery.addQueryItem(QStringLiteral("description"), description);
|
||||
|
||||
QUrl url(QStringLiteral("https://api.imgur.com/3/image"));
|
||||
url.setQuery(urlQuery);
|
||||
QNetworkRequest request(url);
|
||||
request.setHeader(QNetworkRequest::ContentTypeHeader,
|
||||
"application/application/x-www-form-urlencoded");
|
||||
request.setRawHeader(
|
||||
"Authorization",
|
||||
QStringLiteral("Client-ID %1").arg(IMGUR_CLIENT_ID).toUtf8());
|
||||
|
||||
m_NetworkAM->post(request, byteArray);
|
||||
}
|
||||
|
||||
void ImgurUploader::deleteImageOnStorage()
|
||||
{
|
||||
bool successful = QDesktopServices::openUrl(m_deleteImageURL);
|
||||
if (!successful) {
|
||||
showNotificationMessage(tr("Unable to open the URL."));
|
||||
}
|
||||
}
|
||||
@@ -17,8 +17,9 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <QWidget>
|
||||
#include "../imguploader.h"
|
||||
#include <QUrl>
|
||||
#include <QWidget>
|
||||
|
||||
class QNetworkReply;
|
||||
class QNetworkAccessManager;
|
||||
@@ -30,38 +31,21 @@ class QPushButton;
|
||||
class QUrl;
|
||||
class NotificationWidget;
|
||||
|
||||
class ImgurUploader : public QWidget {
|
||||
class ImgurUploader : public ImgUploader
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit ImgurUploader(const QPixmap &capture, QWidget *parent = nullptr);
|
||||
explicit ImgurUploader(const QPixmap& capture, QWidget* parent = nullptr);
|
||||
void upload();
|
||||
|
||||
private slots:
|
||||
void handleReply(QNetworkReply *reply);
|
||||
void startDrag();
|
||||
void handleReply(QNetworkReply* reply);
|
||||
|
||||
void openURL();
|
||||
void copyURL();
|
||||
void openDeleteURL();
|
||||
void copyImage();
|
||||
protected slots:
|
||||
void deleteImageOnStorage();
|
||||
|
||||
// class members
|
||||
private:
|
||||
QPixmap m_pixmap;
|
||||
QNetworkAccessManager *m_NetworkAM;
|
||||
|
||||
QVBoxLayout *m_vLayout;
|
||||
QHBoxLayout *m_hLayout;
|
||||
// loading
|
||||
QLabel *m_infoLabel;
|
||||
LoadSpinner *m_spinner;
|
||||
// uploaded
|
||||
QPushButton *m_openUrlButton;
|
||||
QPushButton *m_openDeleteUrlButton;
|
||||
QPushButton *m_copyUrlButton;
|
||||
QPushButton *m_toClipboardButton;
|
||||
QUrl m_imageURL;
|
||||
QNetworkAccessManager* m_NetworkAM;
|
||||
QUrl m_deleteImageURL;
|
||||
NotificationWidget *m_notification;
|
||||
|
||||
void upload();
|
||||
void onUploadOk();
|
||||
};
|
||||
@@ -19,39 +19,55 @@
|
||||
#include "imguruploader.h"
|
||||
#include <QPainter>
|
||||
|
||||
ImgurUploaderTool::ImgurUploaderTool(QObject *parent) : AbstractActionTool(parent) {
|
||||
ImgurUploaderTool::ImgurUploaderTool(QObject* parent)
|
||||
: AbstractActionTool(parent)
|
||||
{}
|
||||
|
||||
}
|
||||
|
||||
bool ImgurUploaderTool::closeOnButtonPressed() const {
|
||||
bool ImgurUploaderTool::closeOnButtonPressed() const
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
QIcon ImgurUploaderTool::icon(const QColor &background, bool inEditor) const {
|
||||
QIcon ImgurUploaderTool::icon(const QColor& background, bool inEditor) const
|
||||
{
|
||||
Q_UNUSED(inEditor);
|
||||
return QIcon(iconPath(background) + "cloud-upload.svg");
|
||||
}
|
||||
QString ImgurUploaderTool::name() const {
|
||||
|
||||
QString ImgurUploaderTool::name() const
|
||||
{
|
||||
return tr("Image Uploader");
|
||||
}
|
||||
|
||||
QString ImgurUploaderTool::nameID() {
|
||||
QString ImgurUploaderTool::nameID()
|
||||
{
|
||||
return QLatin1String("");
|
||||
}
|
||||
|
||||
QString ImgurUploaderTool::description() const {
|
||||
QString ImgurUploaderTool::description() const
|
||||
{
|
||||
return tr("Upload the selection to Imgur");
|
||||
}
|
||||
|
||||
QWidget* ImgurUploaderTool::widget() {
|
||||
return new ImgurUploader(capture);
|
||||
QWidget* ImgurUploaderTool::widget()
|
||||
{
|
||||
ImgurUploader* p = new ImgurUploader(capture);
|
||||
p->upload();
|
||||
return p;
|
||||
}
|
||||
|
||||
CaptureTool* ImgurUploaderTool::copy(QObject *parent) {
|
||||
void ImgurUploaderTool::setCapture(const QPixmap& pixmap)
|
||||
{
|
||||
capture = pixmap;
|
||||
}
|
||||
|
||||
CaptureTool* ImgurUploaderTool::copy(QObject* parent)
|
||||
{
|
||||
return new ImgurUploaderTool(parent);
|
||||
}
|
||||
|
||||
void ImgurUploaderTool::pressed(const CaptureContext &context) {
|
||||
void ImgurUploaderTool::pressed(const CaptureContext& context)
|
||||
{
|
||||
capture = context.selectedScreenshotArea();
|
||||
emit requestAction(REQ_CAPTURE_DONE_OK);
|
||||
emit requestAction(REQ_ADD_EXTERNAL_WIDGETS);
|
||||
@@ -19,24 +19,26 @@
|
||||
|
||||
#include "src/tools/abstractactiontool.h"
|
||||
|
||||
class ImgurUploaderTool : public AbstractActionTool {
|
||||
class ImgurUploaderTool : public AbstractActionTool
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit ImgurUploaderTool(QObject *parent = nullptr);
|
||||
explicit ImgurUploaderTool(QObject* parent = nullptr);
|
||||
|
||||
bool closeOnButtonPressed() const;
|
||||
|
||||
QIcon icon(const QColor &background, bool inEditor) const override;
|
||||
QIcon icon(const QColor& background, bool inEditor) const override;
|
||||
QString name() const override;
|
||||
static QString nameID();
|
||||
QString description() const override;
|
||||
|
||||
QWidget* widget() override;
|
||||
|
||||
CaptureTool* copy(QObject *parent = nullptr) override;
|
||||
CaptureTool* copy(QObject* parent = nullptr) override;
|
||||
void setCapture(const QPixmap&);
|
||||
|
||||
public slots:
|
||||
void pressed(const CaptureContext &context) override;
|
||||
void pressed(const CaptureContext& context) override;
|
||||
|
||||
private:
|
||||
QPixmap capture;
|
||||
@@ -7,28 +7,38 @@ ImgS3Settings::ImgS3Settings()
|
||||
m_configEnterprise = new ConfigEnterprise();
|
||||
|
||||
// get s3 credentials
|
||||
QSettings *settings = m_configEnterprise->settings();
|
||||
QSettings* settings = m_configEnterprise->settings();
|
||||
settings->beginGroup("S3");
|
||||
|
||||
m_credsUrl = settings->value("S3_CREDS_URL").toString();
|
||||
m_credsUrl = m_credsUrl + ((m_credsUrl.length() > 0 && m_credsUrl[m_credsUrl.length() - 1] == '/') ? "" : "/") + S3_API_IMG_PATH;
|
||||
m_credsUrl =
|
||||
m_credsUrl +
|
||||
((m_credsUrl.length() > 0 && m_credsUrl[m_credsUrl.length() - 1] == '/')
|
||||
? ""
|
||||
: "/") +
|
||||
S3_API_IMG_PATH;
|
||||
|
||||
m_xApiKey = settings->value("S3_X_API_KEY").toString();
|
||||
|
||||
m_url = settings->value("S3_URL").toString();
|
||||
m_url = m_url + ((m_url.length() > 0 && m_url[m_url.length() - 1] == '/') ? "" : "/");
|
||||
m_url =
|
||||
m_url +
|
||||
((m_url.length() > 0 && m_url[m_url.length() - 1] == '/') ? "" : "/");
|
||||
|
||||
settings->endGroup();
|
||||
}
|
||||
|
||||
const QString &ImgS3Settings::credsUrl() {
|
||||
const QString& ImgS3Settings::credsUrl()
|
||||
{
|
||||
return m_credsUrl;
|
||||
}
|
||||
|
||||
const QString &ImgS3Settings::xApiKey() {
|
||||
const QString& ImgS3Settings::xApiKey()
|
||||
{
|
||||
return m_xApiKey;
|
||||
}
|
||||
|
||||
const QString &ImgS3Settings::url() {
|
||||
const QString& ImgS3Settings::url()
|
||||
{
|
||||
return m_url;
|
||||
}
|
||||
@@ -3,7 +3,6 @@
|
||||
|
||||
#define S3_API_IMG_PATH "v2/image/"
|
||||
|
||||
|
||||
#include <QString>
|
||||
|
||||
class ConfigEnterprise;
|
||||
@@ -13,12 +12,12 @@ class ImgS3Settings
|
||||
public:
|
||||
ImgS3Settings();
|
||||
|
||||
const QString &credsUrl();
|
||||
const QString &xApiKey();
|
||||
const QString &url();
|
||||
const QString& credsUrl();
|
||||
const QString& xApiKey();
|
||||
const QString& url();
|
||||
|
||||
private:
|
||||
ConfigEnterprise *m_configEnterprise;
|
||||
ConfigEnterprise* m_configEnterprise;
|
||||
QString m_credsUrl;
|
||||
QString m_xApiKey;
|
||||
QString m_url;
|
||||
396
src/tools/storage/s3/imgs3uploader.cpp
Normal file
396
src/tools/storage/s3/imgs3uploader.cpp
Normal file
@@ -0,0 +1,396 @@
|
||||
// Copyright(c) 2017-2019 Alejandro Sirgo Rica & Contributors
|
||||
//
|
||||
// This file is part of Flameshot.
|
||||
//
|
||||
// Flameshot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// Flameshot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Flameshot. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#include "imgs3uploader.h"
|
||||
#include "src/utils/configenterprise.h"
|
||||
#include "src/utils/confighandler.h"
|
||||
#include "src/utils/filenamehandler.h"
|
||||
#include "src/utils/history.h"
|
||||
#include "src/utils/systemnotification.h"
|
||||
#include "src/widgets/imagelabel.h"
|
||||
#include "src/widgets/loadspinner.h"
|
||||
#include "src/widgets/notificationwidget.h"
|
||||
#include <QApplication>
|
||||
#include <QBuffer>
|
||||
#include <QClipboard>
|
||||
#include <QDebug>
|
||||
#include <QDesktopServices>
|
||||
#include <QDir>
|
||||
#include <QDrag>
|
||||
#include <QHBoxLayout>
|
||||
#include <QHttpMultiPart>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
#include <QLabel>
|
||||
#include <QMessageBox>
|
||||
#include <QMimeData>
|
||||
#include <QNetworkAccessManager>
|
||||
#include <QNetworkProxy>
|
||||
#include <QNetworkReply>
|
||||
#include <QNetworkRequest>
|
||||
#include <QPushButton>
|
||||
#include <QShortcut>
|
||||
#include <QTimer>
|
||||
#include <QUrlQuery>
|
||||
#include <QVBoxLayout>
|
||||
|
||||
ImgS3Uploader::ImgS3Uploader(const QPixmap& capture, QWidget* parent)
|
||||
: ImgUploader(capture, parent)
|
||||
{
|
||||
init(tr("Upload image to S3"), tr("Uploading Image"));
|
||||
}
|
||||
|
||||
ImgS3Uploader::ImgS3Uploader(QWidget* parent)
|
||||
: ImgUploader(parent)
|
||||
{
|
||||
init(tr("Delete image from S3"), tr("Deleting image..."));
|
||||
}
|
||||
|
||||
void ImgS3Uploader::init(const QString& title, const QString& label)
|
||||
{
|
||||
m_proxy = nullptr;
|
||||
m_NetworkAMUpload = nullptr;
|
||||
m_NetworkAMGetCreds = nullptr;
|
||||
m_NetworkAMRemove = nullptr;
|
||||
|
||||
resultStatus = false;
|
||||
setWindowTitle(title);
|
||||
setWindowIcon(QIcon(":img/app/flameshot.svg"));
|
||||
}
|
||||
|
||||
QNetworkProxy* ImgS3Uploader::proxy()
|
||||
{
|
||||
if (m_proxy == nullptr) {
|
||||
initProxy();
|
||||
}
|
||||
return m_proxy;
|
||||
}
|
||||
|
||||
QNetworkProxy* ImgS3Uploader::initProxy()
|
||||
{
|
||||
// get enterprise settings
|
||||
ConfigEnterprise* configEnterprise = new ConfigEnterprise();
|
||||
|
||||
// get proxy settings from "config.ini" file
|
||||
QSettings* settings = configEnterprise->settings();
|
||||
QString httpProxyHost = settings->value("HTTP_PROXY_HOST").toString();
|
||||
|
||||
if (httpProxyHost.length() > 0) {
|
||||
m_proxy = new QNetworkProxy();
|
||||
|
||||
if (settings->contains("HTTP_PROXY_TYPE")) {
|
||||
switch (settings->value("HTTP_PROXY_TYPE").toInt()) {
|
||||
case 0:
|
||||
m_proxy->setType(QNetworkProxy::DefaultProxy);
|
||||
break;
|
||||
case 1:
|
||||
m_proxy->setType(QNetworkProxy::Socks5Proxy);
|
||||
break;
|
||||
case 2:
|
||||
m_proxy->setType(QNetworkProxy::NoProxy);
|
||||
break;
|
||||
case 4:
|
||||
m_proxy->setType(QNetworkProxy::HttpCachingProxy);
|
||||
break;
|
||||
case 5:
|
||||
m_proxy->setType(QNetworkProxy::FtpCachingProxy);
|
||||
break;
|
||||
case 3:
|
||||
default:
|
||||
m_proxy->setType(QNetworkProxy::HttpProxy);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
m_proxy->setHostName(httpProxyHost);
|
||||
int nProxyPort = 3128;
|
||||
if (settings->contains("HTTP_PROXY_PORT")) {
|
||||
nProxyPort = settings->value("HTTP_PROXY_PORT").toInt();
|
||||
}
|
||||
m_proxy->setPort(nProxyPort);
|
||||
|
||||
if (settings->contains("HTTP_PROXY_USER")) {
|
||||
qDebug() << "Proxy user"
|
||||
<< settings->value("HTTP_PROXY_PASSWORD").toString();
|
||||
m_proxy->setUser(settings->value("HTTP_PROXY_USER").toString());
|
||||
}
|
||||
if (settings->contains("HTTP_PROXY_PASSWORD")) {
|
||||
qDebug() << "Proxy password is not empty";
|
||||
m_proxy->setPassword(
|
||||
settings->value("HTTP_PROXY_PASSWORD").toString());
|
||||
}
|
||||
} else {
|
||||
// Get proxy settings from OS settings
|
||||
QNetworkProxyQuery q(QUrl(m_s3Settings.credsUrl().toUtf8()));
|
||||
q.setQueryType(QNetworkProxyQuery::UrlRequest);
|
||||
q.setProtocolTag("http");
|
||||
|
||||
QList<QNetworkProxy> proxies =
|
||||
QNetworkProxyFactory::systemProxyForQuery(q);
|
||||
if (proxies.size() > 0 && proxies[0].type() != QNetworkProxy::NoProxy) {
|
||||
m_proxy = new QNetworkProxy();
|
||||
m_proxy->setHostName(proxies[0].hostName());
|
||||
m_proxy->setPort(proxies[0].port());
|
||||
m_proxy->setType(proxies[0].type());
|
||||
m_proxy->setUser(proxies[0].user());
|
||||
m_proxy->setPassword(proxies[0].password());
|
||||
}
|
||||
}
|
||||
#ifdef QT_DEBUG
|
||||
if (m_proxy != nullptr) {
|
||||
qDebug() << "Using proxy server";
|
||||
qDebug() << "proxy host:" << m_proxy->hostName();
|
||||
qDebug() << "proxy port:" << m_proxy->port();
|
||||
qDebug() << "proxy type:" << m_proxy->type();
|
||||
qDebug() << "proxy user:"
|
||||
<< (m_proxy->user().length() > 0 ? m_proxy->user()
|
||||
: "no user");
|
||||
qDebug() << "proxy password:"
|
||||
<< (m_proxy->password().length() > 0 ? "***" : "no password");
|
||||
} else {
|
||||
qDebug() << "No proxy";
|
||||
}
|
||||
#endif
|
||||
return m_proxy;
|
||||
}
|
||||
|
||||
void ImgS3Uploader::clearProxy()
|
||||
{
|
||||
if (m_proxy != nullptr) {
|
||||
delete m_proxy;
|
||||
m_proxy = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
void ImgS3Uploader::handleReplyUpload(QNetworkReply* reply)
|
||||
{
|
||||
hideSpinner();
|
||||
m_storageImageName.clear();
|
||||
if (reply->error() == QNetworkReply::NoError) {
|
||||
// save history
|
||||
QString imageName = imageUrl().toString();
|
||||
int lastSlash = imageName.lastIndexOf("/");
|
||||
if (lastSlash >= 0) {
|
||||
imageName = imageName.mid(lastSlash + 1);
|
||||
}
|
||||
m_storageImageName = imageName;
|
||||
|
||||
// save image to history
|
||||
History history;
|
||||
imageName = history.packFileName(
|
||||
SCREENSHOT_STORAGE_TYPE_S3, m_deleteToken, imageName);
|
||||
history.save(pixmap(), imageName);
|
||||
resultStatus = true;
|
||||
|
||||
// Copy url to clipboard if required
|
||||
if (ConfigHandler().copyAndCloseAfterUploadEnabled()) {
|
||||
QApplication::clipboard()->setText(imageUrl().toString());
|
||||
SystemNotification().sendMessage(tr("URL copied to clipboard."));
|
||||
close();
|
||||
} else {
|
||||
onUploadOk();
|
||||
}
|
||||
} else {
|
||||
QString reason =
|
||||
reply->attribute(QNetworkRequest::HttpReasonPhraseAttribute)
|
||||
.toString();
|
||||
setInfoLabelText(reply->errorString());
|
||||
}
|
||||
new QShortcut(Qt::Key_Escape, this, SLOT(close()));
|
||||
}
|
||||
|
||||
void ImgS3Uploader::handleReplyDeleteResource(QNetworkReply* reply)
|
||||
{
|
||||
auto replyError = reply->error();
|
||||
if (replyError == QNetworkReply::NoError) {
|
||||
removeImagePreview();
|
||||
} else {
|
||||
hide();
|
||||
|
||||
// generate error message
|
||||
QString message =
|
||||
tr("Unable to remove screenshot from the remote storage.");
|
||||
if (replyError == QNetworkReply::UnknownNetworkError) {
|
||||
message += "\n" + tr("Network error");
|
||||
} else if (replyError == QNetworkReply::UnknownServerError) {
|
||||
message += "\n" + tr("Possibly it doesn't exist anymore");
|
||||
}
|
||||
message += "\n\n" + reply->errorString();
|
||||
message +=
|
||||
"\n\n" +
|
||||
tr("Do you want to remove screenshot from local history anyway?");
|
||||
|
||||
if (QMessageBox::Yes ==
|
||||
QMessageBox::question(NULL,
|
||||
tr("Remove screenshot from history?"),
|
||||
message,
|
||||
QMessageBox::Yes | QMessageBox::No)) {
|
||||
removeImagePreview();
|
||||
}
|
||||
}
|
||||
close();
|
||||
}
|
||||
|
||||
void ImgS3Uploader::handleReplyGetCreds(QNetworkReply* reply)
|
||||
{
|
||||
if (reply->error() == QNetworkReply::NoError) {
|
||||
QJsonDocument response = QJsonDocument::fromJson(reply->readAll());
|
||||
uploadToS3(response);
|
||||
} else {
|
||||
if (m_s3Settings.credsUrl().length() == 0) {
|
||||
setInfoLabelText(
|
||||
tr("S3 Creds URL is not found in your configuration file"));
|
||||
} else {
|
||||
setInfoLabelText(reply->errorString());
|
||||
}
|
||||
}
|
||||
new QShortcut(Qt::Key_Escape, this, SLOT(close()));
|
||||
}
|
||||
|
||||
void ImgS3Uploader::uploadToS3(QJsonDocument& response)
|
||||
{
|
||||
// set paramets from "fields"
|
||||
QHttpMultiPart* multiPart =
|
||||
new QHttpMultiPart(QHttpMultiPart::FormDataType);
|
||||
|
||||
// read JSON response
|
||||
QJsonObject json = response.object();
|
||||
QString resultUrl = json["resultURL"].toString();
|
||||
QJsonObject formData = json["formData"].toObject();
|
||||
QString url = formData["url"].toString();
|
||||
m_deleteToken = json["deleteToken"].toString();
|
||||
|
||||
QJsonObject fields = formData["fields"].toObject();
|
||||
foreach (auto key, fields.keys()) {
|
||||
QString field = fields[key].toString();
|
||||
QHttpPart part;
|
||||
part.setHeader(QNetworkRequest::ContentDispositionHeader,
|
||||
QVariant("form-data; name=\"" + key + "\""));
|
||||
part.setBody(field.toLatin1());
|
||||
multiPart->append(part);
|
||||
}
|
||||
|
||||
QHttpPart imagePart;
|
||||
imagePart.setHeader(QNetworkRequest::ContentTypeHeader,
|
||||
QVariant("image/png"));
|
||||
imagePart.setHeader(QNetworkRequest::ContentDispositionHeader,
|
||||
QVariant("form-data; name=\"file\""));
|
||||
|
||||
QByteArray byteArray;
|
||||
QBuffer buffer(&byteArray);
|
||||
buffer.open(QIODevice::WriteOnly);
|
||||
pixmap().save(&buffer, "PNG");
|
||||
|
||||
imagePart.setBody(byteArray);
|
||||
multiPart->append(imagePart);
|
||||
|
||||
setImageUrl(QUrl(resultUrl));
|
||||
|
||||
QUrl qUrl(url);
|
||||
QNetworkRequest request(qUrl);
|
||||
|
||||
// upload
|
||||
m_NetworkAMUpload->post(request, multiPart);
|
||||
}
|
||||
|
||||
void ImgS3Uploader::deleteResource(const QString& fileName,
|
||||
const QString& deleteToken)
|
||||
{
|
||||
// read network settings on each call to simplify configuration management
|
||||
// without restarting
|
||||
clearProxy();
|
||||
if (m_NetworkAMRemove != nullptr) {
|
||||
delete m_NetworkAMRemove;
|
||||
m_NetworkAMRemove = nullptr;
|
||||
}
|
||||
m_NetworkAMRemove = new QNetworkAccessManager(this);
|
||||
connect(m_NetworkAMRemove,
|
||||
&QNetworkAccessManager::finished,
|
||||
this,
|
||||
&ImgS3Uploader::handleReplyDeleteResource);
|
||||
if (proxy() != nullptr) {
|
||||
m_NetworkAMRemove->setProxy(*proxy());
|
||||
}
|
||||
|
||||
QNetworkRequest request;
|
||||
m_storageImageName = fileName;
|
||||
m_deleteToken = deleteToken;
|
||||
request.setUrl(m_s3Settings.credsUrl().toUtf8() + fileName);
|
||||
request.setRawHeader("X-API-Key", m_s3Settings.xApiKey().toLatin1());
|
||||
request.setRawHeader("Authorization", "Bearer " + deleteToken.toLatin1());
|
||||
m_NetworkAMRemove->deleteResource(request);
|
||||
}
|
||||
|
||||
void ImgS3Uploader::upload()
|
||||
{
|
||||
m_deleteToken.clear();
|
||||
m_storageImageName.clear();
|
||||
|
||||
// read network settings on each call to simplify configuration management
|
||||
// without restarting init creds and upload network access managers
|
||||
clearProxy();
|
||||
if (m_NetworkAMGetCreds != nullptr) {
|
||||
delete m_NetworkAMGetCreds;
|
||||
m_NetworkAMGetCreds = nullptr;
|
||||
}
|
||||
m_NetworkAMGetCreds = new QNetworkAccessManager(this);
|
||||
connect(m_NetworkAMGetCreds,
|
||||
&QNetworkAccessManager::finished,
|
||||
this,
|
||||
&ImgS3Uploader::handleReplyGetCreds);
|
||||
|
||||
if (m_NetworkAMUpload != nullptr) {
|
||||
delete m_NetworkAMUpload;
|
||||
m_NetworkAMUpload = nullptr;
|
||||
}
|
||||
m_NetworkAMUpload = new QNetworkAccessManager(this);
|
||||
connect(m_NetworkAMUpload,
|
||||
&QNetworkAccessManager::finished,
|
||||
this,
|
||||
&ImgS3Uploader::handleReplyUpload);
|
||||
if (proxy() != nullptr) {
|
||||
m_NetworkAMGetCreds->setProxy(*proxy());
|
||||
m_NetworkAMUpload->setProxy(*proxy());
|
||||
}
|
||||
|
||||
// get creads
|
||||
QUrl creds(m_s3Settings.credsUrl());
|
||||
QNetworkRequest requestCreds(creds);
|
||||
if (m_s3Settings.xApiKey().length() > 0) {
|
||||
requestCreds.setRawHeader(
|
||||
QByteArray("X-API-Key"),
|
||||
QByteArray(m_s3Settings.xApiKey().toLocal8Bit()));
|
||||
}
|
||||
m_NetworkAMGetCreds->get(requestCreds);
|
||||
}
|
||||
|
||||
void ImgS3Uploader::removeImagePreview()
|
||||
{
|
||||
// remove local file
|
||||
History history;
|
||||
QString packedFileName = history.packFileName(
|
||||
SCREENSHOT_STORAGE_TYPE_S3, m_deleteToken, m_storageImageName);
|
||||
QString fullFileName = history.path() + packedFileName;
|
||||
|
||||
QFile file(fullFileName);
|
||||
if (file.exists()) {
|
||||
file.remove();
|
||||
}
|
||||
m_deleteToken.clear();
|
||||
m_storageImageName.clear();
|
||||
resultStatus = true;
|
||||
}
|
||||
70
src/tools/storage/s3/imgs3uploader.h
Normal file
70
src/tools/storage/s3/imgs3uploader.h
Normal file
@@ -0,0 +1,70 @@
|
||||
// Copyright(c) 2017-2019 Alejandro Sirgo Rica & Contributors
|
||||
//
|
||||
// This file is part of Flameshot.
|
||||
//
|
||||
// Flameshot is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// Flameshot is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Flameshot. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#pragma once
|
||||
|
||||
#define S3_API_IMG_PATH "v2/image/"
|
||||
|
||||
#include "../imguploader.h"
|
||||
#include "imgs3settings.h"
|
||||
#include <QUrl>
|
||||
#include <QWidget>
|
||||
|
||||
class QNetworkReply;
|
||||
class QNetworkProxy;
|
||||
class QNetworkAccessManager;
|
||||
class QHBoxLayout;
|
||||
class QVBoxLayout;
|
||||
class QLabel;
|
||||
class QPushButton;
|
||||
class QUrl;
|
||||
class NotificationWidget;
|
||||
class ConfigEnterprise;
|
||||
class ImageLabel;
|
||||
|
||||
class ImgS3Uploader : public ImgUploader
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit ImgS3Uploader(const QPixmap& capture, QWidget* parent = nullptr);
|
||||
explicit ImgS3Uploader(QWidget* parent = nullptr);
|
||||
void upload();
|
||||
void deleteResource(const QString&, const QString&);
|
||||
|
||||
private slots:
|
||||
void handleReplyUpload(QNetworkReply* reply);
|
||||
void handleReplyGetCreds(QNetworkReply* reply);
|
||||
void handleReplyDeleteResource(QNetworkReply* reply);
|
||||
|
||||
private:
|
||||
void init(const QString& title, const QString& label);
|
||||
void uploadToS3(QJsonDocument& response);
|
||||
void removeImagePreview();
|
||||
|
||||
QNetworkProxy* initProxy();
|
||||
void clearProxy();
|
||||
QNetworkProxy* proxy();
|
||||
|
||||
// class members
|
||||
private:
|
||||
ImgS3Settings m_s3Settings;
|
||||
|
||||
QNetworkProxy* m_proxy;
|
||||
QNetworkAccessManager* m_NetworkAMUpload;
|
||||
QNetworkAccessManager* m_NetworkAMGetCreds;
|
||||
QNetworkAccessManager* m_NetworkAMRemove;
|
||||
};
|
||||
@@ -18,49 +18,56 @@
|
||||
#include "imgs3uploadertool.h"
|
||||
#include "imgs3uploader.h"
|
||||
#include <QPainter>
|
||||
#include <QSettings>
|
||||
#include <QFileInfo>
|
||||
|
||||
ImgS3UploaderTool::ImgS3UploaderTool(QObject* parent)
|
||||
: AbstractActionTool(parent)
|
||||
{}
|
||||
|
||||
ImgS3UploaderTool::ImgS3UploaderTool(QObject *parent) : AbstractActionTool(parent) {
|
||||
}
|
||||
|
||||
bool ImgS3UploaderTool::closeOnButtonPressed() const {
|
||||
bool ImgS3UploaderTool::closeOnButtonPressed() const
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
QIcon ImgS3UploaderTool::icon(const QColor &background, bool inEditor) const {
|
||||
QIcon ImgS3UploaderTool::icon(const QColor& background, bool inEditor) const
|
||||
{
|
||||
Q_UNUSED(inEditor);
|
||||
return QIcon(iconPath(background) + "cloud-upload.svg");
|
||||
}
|
||||
|
||||
QString ImgS3UploaderTool::name() const {
|
||||
QString ImgS3UploaderTool::name() const
|
||||
{
|
||||
return tr("Image Uploader");
|
||||
}
|
||||
|
||||
QString ImgS3UploaderTool::nameID() {
|
||||
QString ImgS3UploaderTool::nameID()
|
||||
{
|
||||
return QLatin1String("");
|
||||
}
|
||||
|
||||
QString ImgS3UploaderTool::description() const {
|
||||
QString ImgS3UploaderTool::description() const
|
||||
{
|
||||
return tr("Upload the selection to S3 bucket");
|
||||
}
|
||||
|
||||
QWidget *ImgS3UploaderTool::widget() {
|
||||
ImgS3Uploader *p = new ImgS3Uploader(capture);
|
||||
QWidget* ImgS3UploaderTool::widget()
|
||||
{
|
||||
ImgS3Uploader* p = new ImgS3Uploader(capture);
|
||||
p->upload();
|
||||
return p;
|
||||
}
|
||||
|
||||
void ImgS3UploaderTool::setCapture(const QPixmap &pixmap) {
|
||||
void ImgS3UploaderTool::setCapture(const QPixmap& pixmap)
|
||||
{
|
||||
capture = pixmap;
|
||||
}
|
||||
|
||||
CaptureTool *ImgS3UploaderTool::copy(QObject *parent) {
|
||||
CaptureTool* ImgS3UploaderTool::copy(QObject* parent)
|
||||
{
|
||||
return new ImgS3UploaderTool(parent);
|
||||
}
|
||||
|
||||
void ImgS3UploaderTool::pressed(const CaptureContext &context) {
|
||||
void ImgS3UploaderTool::pressed(const CaptureContext& context)
|
||||
{
|
||||
capture = context.selectedScreenshotArea();
|
||||
emit requestAction(REQ_CAPTURE_DONE_OK);
|
||||
emit requestAction(REQ_ADD_EXTERNAL_WIDGETS);
|
||||
@@ -19,25 +19,26 @@
|
||||
|
||||
#include "src/tools/abstractactiontool.h"
|
||||
|
||||
class ImgS3UploaderTool : public AbstractActionTool {
|
||||
class ImgS3UploaderTool : public AbstractActionTool
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit ImgS3UploaderTool(QObject *parent = nullptr);
|
||||
explicit ImgS3UploaderTool(QObject* parent = nullptr);
|
||||
|
||||
bool closeOnButtonPressed() const;
|
||||
|
||||
QIcon icon(const QColor &background, bool inEditor) const override;
|
||||
QIcon icon(const QColor& background, bool inEditor) const override;
|
||||
QString name() const override;
|
||||
static QString nameID();
|
||||
QString description() const override;
|
||||
|
||||
QWidget* widget() override;
|
||||
|
||||
CaptureTool* copy(QObject *parent = nullptr) override;
|
||||
void setCapture(const QPixmap &pixmap);
|
||||
CaptureTool* copy(QObject* parent = nullptr) override;
|
||||
void setCapture(const QPixmap& pixmap);
|
||||
|
||||
public slots:
|
||||
void pressed(const CaptureContext &context) override;
|
||||
void pressed(const CaptureContext& context) override;
|
||||
|
||||
private:
|
||||
QPixmap capture;
|
||||
33
src/tools/storage/storagemanager.cpp
Normal file
33
src/tools/storage/storagemanager.cpp
Normal file
@@ -0,0 +1,33 @@
|
||||
#include "storagemanager.h"
|
||||
#include "imguploader.h"
|
||||
#include "imgur/imguruploader.h"
|
||||
#include "imgur/imguruploadertool.h"
|
||||
#include "s3/imgs3uploader.h"
|
||||
#include "s3/imgs3uploadertool.h"
|
||||
#include "src/tools/storage/s3/imgs3settings.h"
|
||||
#include "src/tools/capturetool.h"
|
||||
|
||||
#include <QWidget>
|
||||
|
||||
StorageManager::StorageManager() {}
|
||||
|
||||
CaptureTool* StorageManager::imgUploaderTool(const QString& imgUploaderType,
|
||||
QObject* parent)
|
||||
{
|
||||
if (imgUploaderType == SCREENSHOT_STORAGE_TYPE_S3) {
|
||||
return new ImgS3UploaderTool(parent);
|
||||
} else if (imgUploaderType == SCREENSHOT_STORAGE_TYPE_IMGUR) {
|
||||
return new ImgurUploaderTool(parent);
|
||||
}
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
const QString& StorageManager::storageUrl(const QString& imgUploaderType) {
|
||||
if (imgUploaderType == SCREENSHOT_STORAGE_TYPE_S3) {
|
||||
ImgS3Settings s3Settings;
|
||||
m_qstr = s3Settings.url();
|
||||
} else if (imgUploaderType == SCREENSHOT_STORAGE_TYPE_IMGUR) {
|
||||
m_qstr = "https://i.imgur.com/";
|
||||
}
|
||||
return m_qstr;
|
||||
}
|
||||
25
src/tools/storage/storagemanager.h
Normal file
25
src/tools/storage/storagemanager.h
Normal file
@@ -0,0 +1,25 @@
|
||||
#ifndef STORAGEMANAGER_H
|
||||
#define STORAGEMANAGER_H
|
||||
|
||||
#include <QPixmap>
|
||||
#include <QString>
|
||||
|
||||
class QObject;
|
||||
class ImgUploader;
|
||||
class CaptureTool;
|
||||
|
||||
class StorageManager
|
||||
{
|
||||
public:
|
||||
explicit StorageManager();
|
||||
|
||||
CaptureTool* imgUploaderTool(const QString& imgUploaderType,
|
||||
QObject* parent = nullptr);
|
||||
const QString& storageUrl(const QString& imgUploaderType);
|
||||
|
||||
// class members
|
||||
private:
|
||||
QString m_qstr;
|
||||
};
|
||||
|
||||
#endif // STORAGEMANAGER_H
|
||||
@@ -17,97 +17,98 @@
|
||||
|
||||
#include "toolfactory.h"
|
||||
#include "arrow/arrowtool.h"
|
||||
#include "blur/blurtool.h"
|
||||
#include "circle/circletool.h"
|
||||
#include "copy/copytool.h"
|
||||
#include "exit/exittool.h"
|
||||
#include "imgur/imguruploadertool.h"
|
||||
#include "imgs3/imgs3uploadertool.h"
|
||||
#include "launcher/applaunchertool.h"
|
||||
#include "line/linetool.h"
|
||||
#include "marker/markertool.h"
|
||||
#include "move/movetool.h"
|
||||
#include "pencil/penciltool.h"
|
||||
#include "pin/pintool.h"
|
||||
#include "rectangle/rectangletool.h"
|
||||
#include "redo/redotool.h"
|
||||
#include "save/savetool.h"
|
||||
#include "selection/selectiontool.h"
|
||||
#include "sizeindicator/sizeindicatortool.h"
|
||||
#include "undo/undotool.h"
|
||||
#include "launcher/applaunchertool.h"
|
||||
#include "blur/blurtool.h"
|
||||
#include "redo/redotool.h"
|
||||
#include "pin/pintool.h"
|
||||
#include "src/utils/confighandler.h"
|
||||
#include "storage/storagemanager.h"
|
||||
#include "text/texttool.h"
|
||||
#include "undo/undotool.h"
|
||||
|
||||
ToolFactory::ToolFactory(QObject *parent) : QObject(parent) {
|
||||
ToolFactory::ToolFactory(QObject* parent)
|
||||
: QObject(parent)
|
||||
{}
|
||||
|
||||
}
|
||||
|
||||
CaptureTool* ToolFactory::CreateTool(
|
||||
CaptureButton::ButtonType t,
|
||||
QObject *parent)
|
||||
CaptureTool* ToolFactory::CreateTool(CaptureButton::ButtonType t,
|
||||
QObject* parent)
|
||||
{
|
||||
CaptureTool *tool;
|
||||
StorageManager storageManager;
|
||||
|
||||
CaptureTool* tool;
|
||||
switch (t) {
|
||||
case CaptureButton::TYPE_ARROW:
|
||||
tool = new ArrowTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_CIRCLE:
|
||||
tool = new CircleTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_COPY:
|
||||
tool = new CopyTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_EXIT:
|
||||
tool = new ExitTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_IMAGEUPLOADER:
|
||||
// tool = new ImgurUploaderTool(parent);
|
||||
tool = new ImgS3UploaderTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_DRAWER:
|
||||
tool = new LineTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_MARKER:
|
||||
tool = new MarkerTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_MOVESELECTION:
|
||||
tool = new MoveTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_PENCIL:
|
||||
tool = new PencilTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_RECTANGLE:
|
||||
tool = new RectangleTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_SAVE:
|
||||
tool = new SaveTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_SELECTION:
|
||||
tool = new SelectionTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_SELECTIONINDICATOR:
|
||||
tool = new SizeIndicatorTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_UNDO:
|
||||
tool = new UndoTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_REDO:
|
||||
tool = new RedoTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_OPEN_APP:
|
||||
tool = new AppLauncher(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_BLUR:
|
||||
tool = new BlurTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_PIN:
|
||||
tool = new PinTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_TEXT:
|
||||
tool = new TextTool(parent);
|
||||
break;
|
||||
default:
|
||||
tool = nullptr;
|
||||
break;
|
||||
case CaptureButton::TYPE_ARROW:
|
||||
tool = new ArrowTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_CIRCLE:
|
||||
tool = new CircleTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_COPY:
|
||||
tool = new CopyTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_EXIT:
|
||||
tool = new ExitTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_IMAGEUPLOADER:
|
||||
tool = storageManager.imgUploaderTool(
|
||||
ConfigHandler().uploadStorage(), parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_DRAWER:
|
||||
tool = new LineTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_MARKER:
|
||||
tool = new MarkerTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_MOVESELECTION:
|
||||
tool = new MoveTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_PENCIL:
|
||||
tool = new PencilTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_RECTANGLE:
|
||||
tool = new RectangleTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_SAVE:
|
||||
tool = new SaveTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_SELECTION:
|
||||
tool = new SelectionTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_SELECTIONINDICATOR:
|
||||
tool = new SizeIndicatorTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_UNDO:
|
||||
tool = new UndoTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_REDO:
|
||||
tool = new RedoTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_OPEN_APP:
|
||||
tool = new AppLauncher(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_BLUR:
|
||||
tool = new BlurTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_PIN:
|
||||
tool = new PinTool(parent);
|
||||
break;
|
||||
case CaptureButton::TYPE_TEXT:
|
||||
tool = new TextTool(parent);
|
||||
break;
|
||||
default:
|
||||
tool = nullptr;
|
||||
break;
|
||||
}
|
||||
return tool;
|
||||
}
|
||||
|
||||
@@ -17,92 +17,82 @@
|
||||
|
||||
#include "confighandler.h"
|
||||
#include "src/tools/capturetool.h"
|
||||
#include "src/tools/storage/imgstorages.h"
|
||||
#include "src/utils/configshortcuts.h"
|
||||
#include <algorithm>
|
||||
#include <QFile>
|
||||
#include <QDir>
|
||||
#include <QCoreApplication>
|
||||
#include <QDir>
|
||||
#include <QFile>
|
||||
#include <QKeySequence>
|
||||
#include <algorithm>
|
||||
|
||||
ConfigHandler::ConfigHandler(){
|
||||
ConfigHandler::ConfigHandler()
|
||||
{
|
||||
m_settings.setDefaultFormat(QSettings::IniFormat);
|
||||
}
|
||||
|
||||
QVector<CaptureButton::ButtonType> ConfigHandler::getButtons() {
|
||||
QVector<CaptureButton::ButtonType> ConfigHandler::getButtons()
|
||||
{
|
||||
QVector<CaptureButton::ButtonType> buttons;
|
||||
if (m_settings.contains(QStringLiteral("buttons"))) {
|
||||
// TODO: remove toList in v1.0
|
||||
QVector<int> buttonsInt =
|
||||
m_settings.value(QStringLiteral("buttons")).value<QList<int> >().toVector();
|
||||
QVector<int> buttonsInt = m_settings.value(QStringLiteral("buttons"))
|
||||
.value<QList<int>>()
|
||||
.toVector();
|
||||
bool modified = normalizeButtons(buttonsInt);
|
||||
if (modified) {
|
||||
m_settings.setValue(QStringLiteral("buttons"), QVariant::fromValue(buttonsInt.toList()));
|
||||
m_settings.setValue(QStringLiteral("buttons"),
|
||||
QVariant::fromValue(buttonsInt.toList()));
|
||||
}
|
||||
buttons = fromIntToButton(buttonsInt);
|
||||
} else {
|
||||
// Default tools
|
||||
buttons << CaptureButton::TYPE_PENCIL
|
||||
<< CaptureButton::TYPE_DRAWER
|
||||
<< CaptureButton::TYPE_ARROW
|
||||
<< CaptureButton::TYPE_SELECTION
|
||||
<< CaptureButton::TYPE_RECTANGLE
|
||||
<< CaptureButton::TYPE_CIRCLE
|
||||
<< CaptureButton::TYPE_MARKER
|
||||
<< CaptureButton::TYPE_BLUR
|
||||
buttons << CaptureButton::TYPE_PENCIL << CaptureButton::TYPE_DRAWER
|
||||
<< CaptureButton::TYPE_ARROW << CaptureButton::TYPE_SELECTION
|
||||
<< CaptureButton::TYPE_RECTANGLE << CaptureButton::TYPE_CIRCLE
|
||||
<< CaptureButton::TYPE_MARKER << CaptureButton::TYPE_BLUR
|
||||
<< CaptureButton::TYPE_SELECTIONINDICATOR
|
||||
<< CaptureButton::TYPE_MOVESELECTION
|
||||
<< CaptureButton::TYPE_UNDO
|
||||
<< CaptureButton::TYPE_REDO
|
||||
<< CaptureButton::TYPE_COPY
|
||||
<< CaptureButton::TYPE_SAVE
|
||||
<< CaptureButton::TYPE_EXIT
|
||||
<< CaptureButton::TYPE_MOVESELECTION << CaptureButton::TYPE_UNDO
|
||||
<< CaptureButton::TYPE_REDO << CaptureButton::TYPE_COPY
|
||||
<< CaptureButton::TYPE_SAVE << CaptureButton::TYPE_EXIT
|
||||
<< CaptureButton::TYPE_IMAGEUPLOADER
|
||||
#if defined(Q_OS_LINUX) || defined(Q_OS_UNIX)
|
||||
<< CaptureButton::TYPE_OPEN_APP
|
||||
#endif
|
||||
<< CaptureButton::TYPE_PIN
|
||||
<< CaptureButton::TYPE_TEXT;
|
||||
<< CaptureButton::TYPE_PIN << CaptureButton::TYPE_TEXT;
|
||||
}
|
||||
|
||||
using bt = CaptureButton::ButtonType;
|
||||
std::sort(buttons.begin(), buttons.end(), [](bt a, bt b){
|
||||
std::sort(buttons.begin(), buttons.end(), [](bt a, bt b) {
|
||||
return CaptureButton::getPriorityByButton(a) <
|
||||
CaptureButton::getPriorityByButton(b);
|
||||
CaptureButton::getPriorityByButton(b);
|
||||
});
|
||||
return buttons;
|
||||
}
|
||||
|
||||
void ConfigHandler::setButtons(const QVector<CaptureButton::ButtonType> &buttons) {
|
||||
void ConfigHandler::setButtons(
|
||||
const QVector<CaptureButton::ButtonType>& buttons)
|
||||
{
|
||||
QVector<int> l = fromButtonToInt(buttons);
|
||||
normalizeButtons(l);
|
||||
// TODO: remove toList in v1.0
|
||||
m_settings.setValue(QStringLiteral("buttons"), QVariant::fromValue(l.toList()));
|
||||
m_settings.setValue(QStringLiteral("buttons"),
|
||||
QVariant::fromValue(l.toList()));
|
||||
}
|
||||
|
||||
QVector<QColor> ConfigHandler::getUserColors() {
|
||||
QVector<QColor> ConfigHandler::getUserColors()
|
||||
{
|
||||
QVector<QColor> colors;
|
||||
const QVector<QColor> &defaultColors = {
|
||||
Qt::white,
|
||||
Qt::red,
|
||||
Qt::green,
|
||||
Qt::blue,
|
||||
Qt::black,
|
||||
Qt::darkRed,
|
||||
Qt::darkGreen,
|
||||
Qt::darkBlue,
|
||||
Qt::darkGray,
|
||||
Qt::cyan,
|
||||
Qt::magenta,
|
||||
Qt::yellow,
|
||||
Qt::lightGray,
|
||||
Qt::darkCyan,
|
||||
Qt::darkMagenta,
|
||||
Qt::darkYellow,
|
||||
const QVector<QColor>& defaultColors = {
|
||||
Qt::white, Qt::red, Qt::green, Qt::blue,
|
||||
Qt::black, Qt::darkRed, Qt::darkGreen, Qt::darkBlue,
|
||||
Qt::darkGray, Qt::cyan, Qt::magenta, Qt::yellow,
|
||||
Qt::lightGray, Qt::darkCyan, Qt::darkMagenta, Qt::darkYellow,
|
||||
QColor()
|
||||
};
|
||||
|
||||
if (m_settings.contains(QStringLiteral("userColors"))) {
|
||||
for (const QString &hex : m_settings.value(QStringLiteral("userColors")).toStringList()) {
|
||||
for (const QString& hex :
|
||||
m_settings.value(QStringLiteral("userColors")).toStringList()) {
|
||||
if (QColor::isValidColor(hex)) {
|
||||
colors.append(QColor(hex));
|
||||
}
|
||||
@@ -118,40 +108,49 @@ QVector<QColor> ConfigHandler::getUserColors() {
|
||||
return colors;
|
||||
}
|
||||
|
||||
void ConfigHandler::setUserColors(const QVector<QColor> &l) {
|
||||
void ConfigHandler::setUserColors(const QVector<QColor>& l)
|
||||
{
|
||||
QStringList hexColors;
|
||||
|
||||
for (const QColor &color : l) {
|
||||
for (const QColor& color : l) {
|
||||
hexColors.append(color.name());
|
||||
}
|
||||
|
||||
m_settings.setValue(QStringLiteral("userColors"), QVariant::fromValue(hexColors));
|
||||
m_settings.setValue(QStringLiteral("userColors"),
|
||||
QVariant::fromValue(hexColors));
|
||||
}
|
||||
|
||||
QString ConfigHandler::savePathValue() {
|
||||
QString savePath = m_settings.value(QStringLiteral("savePathFixed")).toString();
|
||||
if( savePath.isEmpty() ) {
|
||||
QString ConfigHandler::savePathValue()
|
||||
{
|
||||
QString savePath =
|
||||
m_settings.value(QStringLiteral("savePathFixed")).toString();
|
||||
if (savePath.isEmpty()) {
|
||||
savePath = m_settings.value(QStringLiteral("savePath")).toString();
|
||||
}
|
||||
return savePath;
|
||||
}
|
||||
|
||||
void ConfigHandler::setSavePath(const QString &savePath) {
|
||||
QString savePathFixed = m_settings.value(QStringLiteral("savePathFixed")).toString();
|
||||
if( savePathFixed.isEmpty() ) {
|
||||
void ConfigHandler::setSavePath(const QString& savePath)
|
||||
{
|
||||
QString savePathFixed =
|
||||
m_settings.value(QStringLiteral("savePathFixed")).toString();
|
||||
if (savePathFixed.isEmpty()) {
|
||||
m_settings.setValue(QStringLiteral("savePath"), savePath);
|
||||
}
|
||||
}
|
||||
|
||||
QString ConfigHandler::savePathFixed() {
|
||||
QString ConfigHandler::savePathFixed()
|
||||
{
|
||||
return m_settings.value(QStringLiteral("savePathFixed")).toString();
|
||||
}
|
||||
|
||||
void ConfigHandler::setSavePathFixed(const QString &savePathFixed) {
|
||||
void ConfigHandler::setSavePathFixed(const QString& savePathFixed)
|
||||
{
|
||||
m_settings.setValue(QStringLiteral("savePathFixed"), savePathFixed);
|
||||
}
|
||||
|
||||
QColor ConfigHandler::uiMainColorValue() {
|
||||
QColor ConfigHandler::uiMainColorValue()
|
||||
{
|
||||
QColor res = QColor(116, 0, 150);
|
||||
|
||||
if (m_settings.contains(QStringLiteral("uiColor"))) {
|
||||
@@ -164,15 +163,18 @@ QColor ConfigHandler::uiMainColorValue() {
|
||||
return res;
|
||||
}
|
||||
|
||||
void ConfigHandler::setUIMainColor(const QColor &c) {
|
||||
void ConfigHandler::setUIMainColor(const QColor& c)
|
||||
{
|
||||
m_settings.setValue(QStringLiteral("uiColor"), c.name());
|
||||
}
|
||||
|
||||
QColor ConfigHandler::uiContrastColorValue() {
|
||||
QColor ConfigHandler::uiContrastColorValue()
|
||||
{
|
||||
QColor res = QColor(39, 0, 50);
|
||||
|
||||
if (m_settings.contains(QStringLiteral("contastUiColor"))) {
|
||||
QString hex = m_settings.value(QStringLiteral("contastUiColor")).toString();
|
||||
QString hex =
|
||||
m_settings.value(QStringLiteral("contastUiColor")).toString();
|
||||
|
||||
if (QColor::isValidColor(hex)) {
|
||||
res = QColor(hex);
|
||||
@@ -182,11 +184,13 @@ QColor ConfigHandler::uiContrastColorValue() {
|
||||
return res;
|
||||
}
|
||||
|
||||
void ConfigHandler::setUIContrastColor(const QColor &c) {
|
||||
void ConfigHandler::setUIContrastColor(const QColor& c)
|
||||
{
|
||||
m_settings.setValue(QStringLiteral("contastUiColor"), c.name());
|
||||
}
|
||||
|
||||
QColor ConfigHandler::drawColorValue() {
|
||||
QColor ConfigHandler::drawColorValue()
|
||||
{
|
||||
QColor res(Qt::red);
|
||||
|
||||
if (m_settings.contains(QStringLiteral("drawColor"))) {
|
||||
@@ -200,11 +204,13 @@ QColor ConfigHandler::drawColorValue() {
|
||||
return res;
|
||||
}
|
||||
|
||||
void ConfigHandler::setDrawColor(const QColor &c) {
|
||||
void ConfigHandler::setDrawColor(const QColor& c)
|
||||
{
|
||||
m_settings.setValue(QStringLiteral("drawColor"), c.name());
|
||||
}
|
||||
|
||||
bool ConfigHandler::showHelpValue() {
|
||||
bool ConfigHandler::showHelpValue()
|
||||
{
|
||||
bool res = true;
|
||||
if (m_settings.contains(QStringLiteral("showHelp"))) {
|
||||
res = m_settings.value(QStringLiteral("showHelp")).toBool();
|
||||
@@ -212,31 +218,39 @@ bool ConfigHandler::showHelpValue() {
|
||||
return res;
|
||||
}
|
||||
|
||||
void ConfigHandler::setShowHelp(const bool showHelp) {
|
||||
void ConfigHandler::setShowHelp(const bool showHelp)
|
||||
{
|
||||
m_settings.setValue(QStringLiteral("showHelp"), showHelp);
|
||||
}
|
||||
|
||||
bool ConfigHandler::desktopNotificationValue() {
|
||||
bool ConfigHandler::desktopNotificationValue()
|
||||
{
|
||||
bool res = true;
|
||||
if (m_settings.contains(QStringLiteral("showDesktopNotification"))) {
|
||||
res = m_settings.value(QStringLiteral("showDesktopNotification")).toBool();
|
||||
res =
|
||||
m_settings.value(QStringLiteral("showDesktopNotification")).toBool();
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
void ConfigHandler::setDesktopNotification(const bool showDesktopNotification) {
|
||||
m_settings.setValue(QStringLiteral("showDesktopNotification"), showDesktopNotification);
|
||||
void ConfigHandler::setDesktopNotification(const bool showDesktopNotification)
|
||||
{
|
||||
m_settings.setValue(QStringLiteral("showDesktopNotification"),
|
||||
showDesktopNotification);
|
||||
}
|
||||
|
||||
QString ConfigHandler::filenamePatternValue() {
|
||||
QString ConfigHandler::filenamePatternValue()
|
||||
{
|
||||
return m_settings.value(QStringLiteral("filenamePattern")).toString();
|
||||
}
|
||||
|
||||
void ConfigHandler::setFilenamePattern(const QString &pattern) {
|
||||
void ConfigHandler::setFilenamePattern(const QString& pattern)
|
||||
{
|
||||
return m_settings.setValue(QStringLiteral("filenamePattern"), pattern);
|
||||
}
|
||||
|
||||
bool ConfigHandler::disabledTrayIconValue() {
|
||||
bool ConfigHandler::disabledTrayIconValue()
|
||||
{
|
||||
bool res = false;
|
||||
if (m_settings.contains(QStringLiteral("disabledTrayIcon"))) {
|
||||
res = m_settings.value(QStringLiteral("disabledTrayIcon")).toBool();
|
||||
@@ -244,11 +258,13 @@ bool ConfigHandler::disabledTrayIconValue() {
|
||||
return res;
|
||||
}
|
||||
|
||||
void ConfigHandler::setDisabledTrayIcon(const bool disabledTrayIcon) {
|
||||
void ConfigHandler::setDisabledTrayIcon(const bool disabledTrayIcon)
|
||||
{
|
||||
m_settings.setValue(QStringLiteral("disabledTrayIcon"), disabledTrayIcon);
|
||||
}
|
||||
|
||||
int ConfigHandler::drawThicknessValue() {
|
||||
int ConfigHandler::drawThicknessValue()
|
||||
{
|
||||
int res = 0;
|
||||
if (m_settings.contains(QStringLiteral("drawThickness"))) {
|
||||
res = m_settings.value(QStringLiteral("drawThickness")).toInt();
|
||||
@@ -256,19 +272,23 @@ int ConfigHandler::drawThicknessValue() {
|
||||
return res;
|
||||
}
|
||||
|
||||
void ConfigHandler::setdrawThickness(const int thickness) {
|
||||
void ConfigHandler::setdrawThickness(const int thickness)
|
||||
{
|
||||
m_settings.setValue(QStringLiteral("drawThickness"), thickness);
|
||||
}
|
||||
|
||||
bool ConfigHandler::keepOpenAppLauncherValue() {
|
||||
bool ConfigHandler::keepOpenAppLauncherValue()
|
||||
{
|
||||
return m_settings.value(QStringLiteral("keepOpenAppLauncher")).toBool();
|
||||
}
|
||||
|
||||
void ConfigHandler::setKeepOpenAppLauncher(const bool keepOpen) {
|
||||
void ConfigHandler::setKeepOpenAppLauncher(const bool keepOpen)
|
||||
{
|
||||
m_settings.setValue(QStringLiteral("keepOpenAppLauncher"), keepOpen);
|
||||
}
|
||||
|
||||
bool ConfigHandler::startupLaunchValue() {
|
||||
bool ConfigHandler::startupLaunchValue()
|
||||
{
|
||||
bool res = false;
|
||||
|
||||
if (m_settings.contains(QStringLiteral("startupLaunch"))) {
|
||||
@@ -282,7 +302,8 @@ bool ConfigHandler::startupLaunchValue() {
|
||||
return res;
|
||||
}
|
||||
|
||||
bool ConfigHandler::verifyLaunchFile() {
|
||||
bool ConfigHandler::verifyLaunchFile()
|
||||
{
|
||||
bool res = false;
|
||||
|
||||
#if defined(Q_OS_LINUX) || defined(Q_OS_UNIX)
|
||||
@@ -290,15 +311,16 @@ bool ConfigHandler::verifyLaunchFile() {
|
||||
res = QFile(path).exists();
|
||||
#elif defined(Q_OS_WIN)
|
||||
QSettings bootUpSettings(
|
||||
"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",
|
||||
QSettings::NativeFormat);
|
||||
"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",
|
||||
QSettings::NativeFormat);
|
||||
res = bootUpSettings.value("Flameshot").toString() ==
|
||||
QDir::toNativeSeparators(QCoreApplication::applicationFilePath());
|
||||
QDir::toNativeSeparators(QCoreApplication::applicationFilePath());
|
||||
#endif
|
||||
return res;
|
||||
}
|
||||
|
||||
void ConfigHandler::setStartupLaunch(const bool start) {
|
||||
void ConfigHandler::setStartupLaunch(const bool start)
|
||||
{
|
||||
#if defined(Q_OS_LINUX) || defined(Q_OS_UNIX)
|
||||
QString path = QDir::homePath() + "/.config/autostart/";
|
||||
QDir autostartDir(path);
|
||||
@@ -319,15 +341,16 @@ void ConfigHandler::setStartupLaunch(const bool start) {
|
||||
}
|
||||
#elif defined(Q_OS_WIN)
|
||||
QSettings bootUpSettings(
|
||||
"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",
|
||||
QSettings::NativeFormat);
|
||||
"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",
|
||||
QSettings::NativeFormat);
|
||||
// set workdir for flameshot on startup
|
||||
QSettings bootUpPath(
|
||||
"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\App Paths",
|
||||
QSettings::NativeFormat);
|
||||
"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\App "
|
||||
"Paths",
|
||||
QSettings::NativeFormat);
|
||||
if (start) {
|
||||
QString app_path =
|
||||
QDir::toNativeSeparators(QCoreApplication::applicationFilePath());
|
||||
QDir::toNativeSeparators(QCoreApplication::applicationFilePath());
|
||||
bootUpSettings.setValue("Flameshot", app_path);
|
||||
|
||||
// set application workdir
|
||||
@@ -347,18 +370,24 @@ void ConfigHandler::setStartupLaunch(const bool start) {
|
||||
m_settings.setValue(QStringLiteral("startupLaunch"), start);
|
||||
}
|
||||
|
||||
bool ConfigHandler::showStartupLaunchMessage() {
|
||||
bool ConfigHandler::showStartupLaunchMessage()
|
||||
{
|
||||
if (!m_settings.contains(QStringLiteral("showStartupLaunchMessage"))) {
|
||||
m_settings.setValue(QStringLiteral("showStartupLaunchMessage"), true);
|
||||
}
|
||||
return m_settings.value(QStringLiteral("showStartupLaunchMessage")).toBool();
|
||||
return m_settings.value(QStringLiteral("showStartupLaunchMessage"))
|
||||
.toBool();
|
||||
}
|
||||
|
||||
void ConfigHandler::setShowStartupLaunchMessage(const bool showStartupLaunchMessage){
|
||||
m_settings.setValue(QStringLiteral("showStartupLaunchMessage"), showStartupLaunchMessage);
|
||||
void ConfigHandler::setShowStartupLaunchMessage(
|
||||
const bool showStartupLaunchMessage)
|
||||
{
|
||||
m_settings.setValue(QStringLiteral("showStartupLaunchMessage"),
|
||||
showStartupLaunchMessage);
|
||||
}
|
||||
|
||||
int ConfigHandler::contrastOpacityValue() {
|
||||
int ConfigHandler::contrastOpacityValue()
|
||||
{
|
||||
int opacity = 190;
|
||||
if (m_settings.contains(QStringLiteral("contrastOpacity"))) {
|
||||
opacity = m_settings.value(QStringLiteral("contrastOpacity")).toInt();
|
||||
@@ -367,31 +396,38 @@ int ConfigHandler::contrastOpacityValue() {
|
||||
return opacity;
|
||||
}
|
||||
|
||||
void ConfigHandler::setContrastOpacity(const int transparency) {
|
||||
void ConfigHandler::setContrastOpacity(const int transparency)
|
||||
{
|
||||
m_settings.setValue(QStringLiteral("contrastOpacity"), transparency);
|
||||
}
|
||||
|
||||
bool ConfigHandler::closeAfterScreenshotValue() {
|
||||
bool ConfigHandler::closeAfterScreenshotValue()
|
||||
{
|
||||
return m_settings.value(QStringLiteral("closeAfterScreenshot")).toBool();
|
||||
}
|
||||
|
||||
void ConfigHandler::setCloseAfterScreenshot(const bool close) {
|
||||
void ConfigHandler::setCloseAfterScreenshot(const bool close)
|
||||
{
|
||||
m_settings.setValue(QStringLiteral("closeAfterScreenshot"), close);
|
||||
}
|
||||
|
||||
bool ConfigHandler::copyAndCloseAfterUploadEnabled() {
|
||||
bool ConfigHandler::copyAndCloseAfterUploadEnabled()
|
||||
{
|
||||
bool res = true;
|
||||
if (m_settings.contains(QStringLiteral("copyAndCloseAfterUpload"))) {
|
||||
res = m_settings.value(QStringLiteral("copyAndCloseAfterUpload")).toBool();
|
||||
res =
|
||||
m_settings.value(QStringLiteral("copyAndCloseAfterUpload")).toBool();
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
void ConfigHandler::setCopyAndCloseAfterUploadEnabled(const bool value) {
|
||||
void ConfigHandler::setCopyAndCloseAfterUploadEnabled(const bool value)
|
||||
{
|
||||
m_settings.setValue(QStringLiteral("copyAndCloseAfterUpload"), value);
|
||||
}
|
||||
|
||||
bool ConfigHandler::copyPathAfterSaveEnabled() {
|
||||
bool ConfigHandler::copyPathAfterSaveEnabled()
|
||||
{
|
||||
bool res = false;
|
||||
if (m_settings.contains(QStringLiteral("copyPathAfterSave"))) {
|
||||
res = m_settings.value(QStringLiteral("copyPathAfterSave")).toBool();
|
||||
@@ -399,32 +435,53 @@ bool ConfigHandler::copyPathAfterSaveEnabled() {
|
||||
return res;
|
||||
}
|
||||
|
||||
void ConfigHandler::setCopyPathAfterSaveEnabled(const bool value) {
|
||||
void ConfigHandler::setCopyPathAfterSaveEnabled(const bool value)
|
||||
{
|
||||
m_settings.setValue(QStringLiteral("copyPathAfterSave"), value);
|
||||
}
|
||||
|
||||
void ConfigHandler::setDefaults() {
|
||||
void ConfigHandler::setUploadStorage(const QString& uploadStorage)
|
||||
{
|
||||
m_settings.setValue(QStringLiteral("uploadStorage"), uploadStorage);
|
||||
}
|
||||
|
||||
const QString& ConfigHandler::uploadStorage()
|
||||
{
|
||||
m_strRes = m_settings.value(QStringLiteral("uploadStorage")).toString();
|
||||
if (m_strRes.isEmpty()) {
|
||||
m_strRes = SCREENSHOT_STORAGE_TYPE_IMGUR;
|
||||
setUploadStorage(m_strRes);
|
||||
}
|
||||
return m_strRes;
|
||||
}
|
||||
|
||||
void ConfigHandler::setDefaults()
|
||||
{
|
||||
m_settings.clear();
|
||||
}
|
||||
|
||||
void ConfigHandler::setAllTheButtons() {
|
||||
void ConfigHandler::setAllTheButtons()
|
||||
{
|
||||
QVector<int> buttons;
|
||||
auto listTypes = CaptureButton::getIterableButtonTypes();
|
||||
for (const CaptureButton::ButtonType t: listTypes) {
|
||||
for (const CaptureButton::ButtonType t : listTypes) {
|
||||
buttons << static_cast<int>(t);
|
||||
}
|
||||
// TODO: remove toList in v1.0
|
||||
m_settings.setValue(QStringLiteral("buttons"), QVariant::fromValue(buttons.toList()));
|
||||
m_settings.setValue(QStringLiteral("buttons"),
|
||||
QVariant::fromValue(buttons.toList()));
|
||||
}
|
||||
|
||||
QString ConfigHandler::configFilePath() const {
|
||||
QString ConfigHandler::configFilePath() const
|
||||
{
|
||||
return m_settings.fileName();
|
||||
}
|
||||
|
||||
bool ConfigHandler::normalizeButtons(QVector<int> &buttons) {
|
||||
bool ConfigHandler::normalizeButtons(QVector<int>& buttons)
|
||||
{
|
||||
auto listTypes = CaptureButton::getIterableButtonTypes();
|
||||
QVector<int> listTypesInt;
|
||||
for(auto i: listTypes)
|
||||
for (auto i : listTypes)
|
||||
listTypesInt << static_cast<int>(i);
|
||||
|
||||
bool hasChanged = false;
|
||||
@@ -438,32 +495,34 @@ bool ConfigHandler::normalizeButtons(QVector<int> &buttons) {
|
||||
}
|
||||
|
||||
QVector<CaptureButton::ButtonType> ConfigHandler::fromIntToButton(
|
||||
const QVector<int> &l)
|
||||
const QVector<int>& l)
|
||||
{
|
||||
QVector<CaptureButton::ButtonType> buttons;
|
||||
for (auto const i: l)
|
||||
for (auto const i : l)
|
||||
buttons << static_cast<CaptureButton::ButtonType>(i);
|
||||
return buttons;
|
||||
}
|
||||
|
||||
QVector<int> ConfigHandler::fromButtonToInt(
|
||||
const QVector<CaptureButton::ButtonType> &l)
|
||||
const QVector<CaptureButton::ButtonType>& l)
|
||||
{
|
||||
QVector<int> buttons;
|
||||
for (auto const i: l)
|
||||
for (auto const i : l)
|
||||
buttons << static_cast<int>(i);
|
||||
return buttons;
|
||||
}
|
||||
|
||||
QVector<QStringList> ConfigHandler::shortcuts() {
|
||||
QVector<QStringList> ConfigHandler::shortcuts()
|
||||
{
|
||||
ConfigShortcuts configShortcuts;
|
||||
m_shortcuts = configShortcuts.captureShortcutsDefault(getButtons());
|
||||
return m_shortcuts;
|
||||
}
|
||||
|
||||
void ConfigHandler::setShortcutsDefault() {
|
||||
void ConfigHandler::setShortcutsDefault()
|
||||
{
|
||||
ConfigShortcuts configShortcuts;
|
||||
for (auto shortcutItem: shortcuts()) {
|
||||
for (auto shortcutItem : shortcuts()) {
|
||||
QString shortcutName = shortcutItem.at(0);
|
||||
QString shortcutDescription = shortcutItem.at(1);
|
||||
QString shortcutValueDefault = shortcutItem.at(2);
|
||||
@@ -471,49 +530,48 @@ void ConfigHandler::setShortcutsDefault() {
|
||||
QString shortcutValue = shortcut(shortcutName);
|
||||
|
||||
QKeySequence ks = QKeySequence();
|
||||
if(shortcutValue.isNull()) {
|
||||
if (shortcutValue.isNull()) {
|
||||
ks = QKeySequence(shortcutValueDefault);
|
||||
if (!setShortcut(shortcutName, ks.toString())) {
|
||||
shortcutValue = shortcutValueDefault;
|
||||
}
|
||||
}
|
||||
|
||||
m_shortcuts << (QStringList()
|
||||
<< shortcutName
|
||||
<< shortcutDescription
|
||||
<< shortcutValue);
|
||||
m_shortcuts << (QStringList() << shortcutName << shortcutDescription
|
||||
<< shortcutValue);
|
||||
}
|
||||
}
|
||||
|
||||
bool ConfigHandler::setShortcut(const QString& shortcutName, const QString& shortutValue) {
|
||||
bool ConfigHandler::setShortcut(const QString& shortcutName,
|
||||
const QString& shortutValue)
|
||||
{
|
||||
bool error = false;
|
||||
m_settings.beginGroup("Shortcuts");
|
||||
|
||||
QVector<QKeySequence> reservedShortcuts;
|
||||
reservedShortcuts << QKeySequence(Qt::Key_Backspace) << QKeySequence(Qt::Key_Escape);
|
||||
if(shortutValue.isEmpty()){
|
||||
reservedShortcuts << QKeySequence(Qt::Key_Backspace)
|
||||
<< QKeySequence(Qt::Key_Escape);
|
||||
if (shortutValue.isEmpty()) {
|
||||
m_settings.setValue(shortcutName, "");
|
||||
}
|
||||
else if (reservedShortcuts.contains(QKeySequence(shortutValue))) {
|
||||
} else if (reservedShortcuts.contains(QKeySequence(shortutValue))) {
|
||||
// do not allow to set reserved shortcuts
|
||||
error = true;
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
// Make no difference for Return and Enter keys
|
||||
QString shortcutItem = shortutValue;
|
||||
if(shortcutItem == "Enter") {
|
||||
if (shortcutItem == "Enter") {
|
||||
shortcutItem = QKeySequence(Qt::Key_Return).toString();
|
||||
}
|
||||
|
||||
// do not allow to set overlapped shortcuts
|
||||
foreach (auto currentShortcutName, m_settings.allKeys()) {
|
||||
if(m_settings.value(currentShortcutName) == shortcutItem) {
|
||||
if (m_settings.value(currentShortcutName) == shortcutItem) {
|
||||
m_settings.setValue(shortcutName, "");
|
||||
error = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(!error) {
|
||||
if (!error) {
|
||||
m_settings.setValue(shortcutName, shortcutItem);
|
||||
}
|
||||
}
|
||||
@@ -521,7 +579,8 @@ bool ConfigHandler::setShortcut(const QString& shortcutName, const QString& shor
|
||||
return !error;
|
||||
}
|
||||
|
||||
const QString& ConfigHandler::shortcut(const QString& shortcutName) {
|
||||
const QString& ConfigHandler::shortcut(const QString& shortcutName)
|
||||
{
|
||||
m_settings.beginGroup("Shortcuts");
|
||||
m_strRes = m_settings.value(shortcutName).toString();
|
||||
m_settings.endGroup();
|
||||
|
||||
@@ -18,34 +18,35 @@
|
||||
#pragma once
|
||||
|
||||
#include "src/widgets/capture/capturebutton.h"
|
||||
#include <QVector>
|
||||
#include <QStringList>
|
||||
#include <QSettings>
|
||||
#include <QStringList>
|
||||
#include <QVector>
|
||||
|
||||
class ConfigHandler : public QObject {
|
||||
class ConfigHandler : public QObject
|
||||
{
|
||||
|
||||
public:
|
||||
explicit ConfigHandler();
|
||||
|
||||
QVector<CaptureButton::ButtonType> getButtons();
|
||||
void setButtons(const QVector<CaptureButton::ButtonType> &);
|
||||
void setButtons(const QVector<CaptureButton::ButtonType>&);
|
||||
|
||||
QVector<QColor> getUserColors();
|
||||
void setUserColors(const QVector<QColor> &);
|
||||
void setUserColors(const QVector<QColor>&);
|
||||
|
||||
QString savePathValue();
|
||||
void setSavePath(const QString &);
|
||||
void setSavePath(const QString&);
|
||||
QString savePathFixed();
|
||||
void setSavePathFixed(const QString &);
|
||||
void setSavePathFixed(const QString&);
|
||||
|
||||
QColor uiMainColorValue();
|
||||
void setUIMainColor(const QColor &);
|
||||
void setUIMainColor(const QColor&);
|
||||
|
||||
QColor uiContrastColorValue();
|
||||
void setUIContrastColor(const QColor &);
|
||||
void setUIContrastColor(const QColor&);
|
||||
|
||||
QColor drawColorValue();
|
||||
void setDrawColor(const QColor &);
|
||||
void setDrawColor(const QColor&);
|
||||
|
||||
bool showHelpValue();
|
||||
void setShowHelp(const bool);
|
||||
@@ -54,7 +55,7 @@ public:
|
||||
void setDesktopNotification(const bool);
|
||||
|
||||
QString filenamePatternValue();
|
||||
void setFilenamePattern(const QString &);
|
||||
void setFilenamePattern(const QString&);
|
||||
|
||||
bool disabledTrayIconValue();
|
||||
void setDisabledTrayIcon(const bool);
|
||||
@@ -84,6 +85,9 @@ public:
|
||||
bool copyPathAfterSaveEnabled();
|
||||
void setCopyPathAfterSaveEnabled(const bool);
|
||||
|
||||
void setUploadStorage(const QString&);
|
||||
const QString& uploadStorage();
|
||||
|
||||
void setDefaults();
|
||||
void setAllTheButtons();
|
||||
|
||||
@@ -99,8 +103,8 @@ private:
|
||||
QSettings m_settings;
|
||||
QVector<QStringList> m_shortcuts;
|
||||
|
||||
bool normalizeButtons(QVector<int> &);
|
||||
bool normalizeButtons(QVector<int>&);
|
||||
|
||||
QVector<CaptureButton::ButtonType> fromIntToButton(const QVector<int> &l);
|
||||
QVector<int> fromButtonToInt(const QVector<CaptureButton::ButtonType> &l);
|
||||
QVector<CaptureButton::ButtonType> fromIntToButton(const QVector<int>& l);
|
||||
QVector<int> fromButtonToInt(const QVector<CaptureButton::ButtonType>& l);
|
||||
};
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
#include <QFile>
|
||||
#include <QStringList>
|
||||
|
||||
|
||||
History::History()
|
||||
{
|
||||
// Get cache history path
|
||||
@@ -21,27 +20,32 @@ History::History()
|
||||
dir.mkpath(".");
|
||||
}
|
||||
|
||||
const QString &History::path() {
|
||||
const QString& History::path()
|
||||
{
|
||||
return m_historyPath;
|
||||
}
|
||||
|
||||
void History::save(const QPixmap &pixmap, const QString &fileName) {
|
||||
void History::save(const QPixmap& pixmap, const QString& fileName)
|
||||
{
|
||||
QFile file(path() + fileName);
|
||||
file.open(QIODevice::WriteOnly);
|
||||
pixmap.save(&file, "PNG");
|
||||
history();
|
||||
}
|
||||
|
||||
const QList<QString> &History::history() {
|
||||
const QList<QString>& History::history()
|
||||
{
|
||||
QDir directory(path());
|
||||
QStringList images = directory.entryList(QStringList() << "*.png" << "*.PNG", QDir::Files, QDir::Time);
|
||||
QStringList images = directory.entryList(QStringList() << "*.png"
|
||||
<< "*.PNG",
|
||||
QDir::Files,
|
||||
QDir::Time);
|
||||
int cnt = 0;
|
||||
m_thumbs.clear();
|
||||
foreach(QString fileName, images) {
|
||||
if(++cnt <= HISTORY_MAX_SIZE) {
|
||||
foreach (QString fileName, images) {
|
||||
if (++cnt <= HISTORY_MAX_SIZE) {
|
||||
m_thumbs.append(fileName);
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
QFile file(path() + fileName);
|
||||
file.remove();
|
||||
}
|
||||
@@ -49,42 +53,46 @@ const QList<QString> &History::history() {
|
||||
return m_thumbs;
|
||||
}
|
||||
|
||||
const HISTORY_FILE_NAME &History::unpackFileName(const QString &fileNamePacked) {
|
||||
const HISTORY_FILE_NAME& History::unpackFileName(const QString& fileNamePacked)
|
||||
{
|
||||
int nPathIndex = fileNamePacked.lastIndexOf("/");
|
||||
QStringList unpackedFileName;
|
||||
if(nPathIndex == -1) {
|
||||
if (nPathIndex == -1) {
|
||||
unpackedFileName = fileNamePacked.split("-");
|
||||
} else {
|
||||
unpackedFileName = fileNamePacked.mid(nPathIndex + 1).split("-");
|
||||
}
|
||||
|
||||
switch (unpackedFileName.length()) {
|
||||
case 3:
|
||||
m_unpackedFileName.file = unpackedFileName[2];
|
||||
m_unpackedFileName.token = unpackedFileName[1];
|
||||
m_unpackedFileName.type = unpackedFileName[0];
|
||||
break;
|
||||
case 2:
|
||||
m_unpackedFileName.file = unpackedFileName[1];
|
||||
m_unpackedFileName.token = "";
|
||||
m_unpackedFileName.type = unpackedFileName[0];
|
||||
break;
|
||||
default:
|
||||
m_unpackedFileName.file = unpackedFileName[0];
|
||||
m_unpackedFileName.token = "";
|
||||
m_unpackedFileName.type = SCREENSHOT_STORAGE_TYPE_LOCAL;
|
||||
break;
|
||||
case 3:
|
||||
m_unpackedFileName.file = unpackedFileName[2];
|
||||
m_unpackedFileName.token = unpackedFileName[1];
|
||||
m_unpackedFileName.type = unpackedFileName[0];
|
||||
break;
|
||||
case 2:
|
||||
m_unpackedFileName.file = unpackedFileName[1];
|
||||
m_unpackedFileName.token = "";
|
||||
m_unpackedFileName.type = unpackedFileName[0];
|
||||
break;
|
||||
default:
|
||||
m_unpackedFileName.file = unpackedFileName[0];
|
||||
m_unpackedFileName.token = "";
|
||||
m_unpackedFileName.type = "";
|
||||
break;
|
||||
}
|
||||
return m_unpackedFileName;
|
||||
}
|
||||
|
||||
const QString &History::packFileName(const QString &storageType, const QString &deleteToken, const QString &fileName) {
|
||||
const QString& History::packFileName(const QString& storageType,
|
||||
const QString& deleteToken,
|
||||
const QString& fileName)
|
||||
{
|
||||
m_packedFileName = fileName;
|
||||
if(storageType.length() > 0) {
|
||||
if(deleteToken.length() > 0) {
|
||||
m_packedFileName = storageType + "-" + deleteToken + "-" + m_packedFileName;
|
||||
}
|
||||
else {
|
||||
if (storageType.length() > 0) {
|
||||
if (deleteToken.length() > 0) {
|
||||
m_packedFileName =
|
||||
storageType + "-" + deleteToken + "-" + m_packedFileName;
|
||||
} else {
|
||||
m_packedFileName = storageType + "-" + m_packedFileName;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,15 +4,11 @@
|
||||
#define HISTORY_MAX_SIZE 25
|
||||
|
||||
#include <QList>
|
||||
#include <QString>
|
||||
#include <QPixmap>
|
||||
#include <QString>
|
||||
|
||||
|
||||
#define SCREENSHOT_STORAGE_TYPE_LOCAL ""
|
||||
#define SCREENSHOT_STORAGE_TYPE_S3 "s3"
|
||||
#define SCREENSHOT_STORAGE_TYPE_IMGUR "imgur"
|
||||
|
||||
struct HISTORY_FILE_NAME {
|
||||
struct HISTORY_FILE_NAME
|
||||
{
|
||||
QString file;
|
||||
QString token;
|
||||
QString type;
|
||||
@@ -23,12 +19,12 @@ class History
|
||||
public:
|
||||
History();
|
||||
|
||||
void save(const QPixmap &, const QString &);
|
||||
const QList<QString> &history();
|
||||
const QString &path();
|
||||
void save(const QPixmap&, const QString&);
|
||||
const QList<QString>& history();
|
||||
const QString& path();
|
||||
|
||||
const HISTORY_FILE_NAME &unpackFileName(const QString &);
|
||||
const QString &packFileName(const QString &, const QString &, const QString &);
|
||||
const HISTORY_FILE_NAME& unpackFileName(const QString&);
|
||||
const QString& packFileName(const QString&, const QString&, const QString&);
|
||||
|
||||
private:
|
||||
QString m_historyPath;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,26 +1,30 @@
|
||||
#include "historywidget.h"
|
||||
#include "src/tools/storage/storagemanager.h"
|
||||
#include "src/tools/storage/imguploader.h"
|
||||
#include "src/tools/storage/s3/imgs3uploader.h"
|
||||
#include "src/utils/history.h"
|
||||
#include "src/widgets/notificationwidget.h"
|
||||
#include "src/tools/imgs3/imgs3uploader.h"
|
||||
#include <QVBoxLayout>
|
||||
#include <QHBoxLayout>
|
||||
#include <QPixmap>
|
||||
#include <QLabel>
|
||||
#include <QScrollArea>
|
||||
#include <QFileInfo>
|
||||
#include <QDateTime>
|
||||
#include <QPushButton>
|
||||
#include <QIcon>
|
||||
#include <QSettings>
|
||||
#include <QApplication>
|
||||
#include <QDesktopWidget>
|
||||
#include <QDesktopServices>
|
||||
#include <QClipboard>
|
||||
#include <QUrl>
|
||||
#include <QDateTime>
|
||||
#include <QDesktopServices>
|
||||
#include <QDesktopWidget>
|
||||
#include <QFileInfo>
|
||||
#include <QHBoxLayout>
|
||||
#include <QIcon>
|
||||
#include <QLabel>
|
||||
#include <QLayoutItem>
|
||||
#include <QPixmap>
|
||||
#include <QPushButton>
|
||||
#include <QScrollArea>
|
||||
#include <QSettings>
|
||||
#include <QUrl>
|
||||
#include <QVBoxLayout>
|
||||
|
||||
#include <QDebug>
|
||||
|
||||
HistoryWidget::HistoryWidget(QWidget *parent) : QDialog(parent)
|
||||
HistoryWidget::HistoryWidget(QWidget* parent)
|
||||
: QDialog(parent)
|
||||
{
|
||||
setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint);
|
||||
setWindowTitle(tr("Latest Uploads"));
|
||||
@@ -30,114 +34,128 @@ HistoryWidget::HistoryWidget(QWidget *parent) : QDialog(parent)
|
||||
m_pVBox = new QVBoxLayout(this);
|
||||
m_pVBox->setAlignment(Qt::AlignTop);
|
||||
|
||||
QScrollArea *scrollArea = new QScrollArea( this );
|
||||
scrollArea->setVerticalScrollBarPolicy( Qt::ScrollBarAlwaysOn );
|
||||
scrollArea->setWidgetResizable( true );
|
||||
scrollArea->setGeometry( this->frameGeometry() );
|
||||
QScrollArea* scrollArea = new QScrollArea(this);
|
||||
scrollArea->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOn);
|
||||
scrollArea->setWidgetResizable(true);
|
||||
scrollArea->setGeometry(this->frameGeometry());
|
||||
|
||||
QWidget *widget = new QWidget();
|
||||
scrollArea->setWidget( widget );
|
||||
widget->setLayout( m_pVBox );
|
||||
QWidget* widget = new QWidget();
|
||||
scrollArea->setWidget(widget);
|
||||
widget->setLayout(m_pVBox);
|
||||
|
||||
loadHistory();
|
||||
}
|
||||
|
||||
void HistoryWidget::loadHistory() {
|
||||
void HistoryWidget::loadHistory()
|
||||
{
|
||||
// read history files
|
||||
History history = History();
|
||||
QList<QString> historyFiles = history.history();
|
||||
|
||||
if(historyFiles.isEmpty()) {
|
||||
if (historyFiles.isEmpty()) {
|
||||
setEmptyMessage();
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
// generate history list
|
||||
foreach(QString fileName, historyFiles) {
|
||||
foreach (QString fileName, historyFiles) {
|
||||
addLine(history.path(), fileName);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void HistoryWidget::setEmptyMessage() {
|
||||
QPushButton *buttonEmpty = new QPushButton;
|
||||
void HistoryWidget::setEmptyMessage()
|
||||
{
|
||||
QPushButton* buttonEmpty = new QPushButton;
|
||||
buttonEmpty->setText(tr("Screenshots history is empty"));
|
||||
buttonEmpty->setMinimumSize(1, HISTORYPIXMAP_MAX_PREVIEW_HEIGHT);
|
||||
connect(buttonEmpty, &QPushButton::clicked, this, [=](){
|
||||
this->close();
|
||||
});
|
||||
connect(buttonEmpty, &QPushButton::clicked, this, [=]() { this->close(); });
|
||||
m_pVBox->addWidget(buttonEmpty);
|
||||
}
|
||||
|
||||
void HistoryWidget::addLine(const QString &path, const QString& fileName) {
|
||||
QHBoxLayout *phbl = new QHBoxLayout();
|
||||
void HistoryWidget::addLine(const QString& path, const QString& fileName)
|
||||
{
|
||||
QHBoxLayout* phbl = new QHBoxLayout();
|
||||
QString fullFileName = path + fileName;
|
||||
|
||||
History history;
|
||||
HISTORY_FILE_NAME unpackFileName = history.unpackFileName(fileName);
|
||||
|
||||
QString url = m_s3Settings.url() + unpackFileName.file;
|
||||
QString url;
|
||||
|
||||
StorageManager storageManager;
|
||||
url = storageManager.storageUrl(unpackFileName.type) + unpackFileName.file;
|
||||
|
||||
// load pixmap
|
||||
QPixmap pixmap;
|
||||
pixmap.load( fullFileName, "png" );
|
||||
pixmap.load(fullFileName, "png");
|
||||
|
||||
if (pixmap.height() / HISTORYPIXMAP_MAX_PREVIEW_HEIGHT >= pixmap.width() / HISTORYPIXMAP_MAX_PREVIEW_WIDTH) {
|
||||
if (pixmap.height() / HISTORYPIXMAP_MAX_PREVIEW_HEIGHT >=
|
||||
pixmap.width() / HISTORYPIXMAP_MAX_PREVIEW_WIDTH) {
|
||||
pixmap = pixmap.scaledToHeight(HISTORYPIXMAP_MAX_PREVIEW_HEIGHT);
|
||||
} else {
|
||||
pixmap = pixmap.scaledToWidth(HISTORYPIXMAP_MAX_PREVIEW_WIDTH);
|
||||
}
|
||||
|
||||
// get file info
|
||||
QFileInfo *pFileInfo = new QFileInfo(fullFileName);
|
||||
QString lastModified = pFileInfo->lastModified().toString(" yyyy-MM-dd\nhh:mm:ss");
|
||||
QFileInfo* pFileInfo = new QFileInfo(fullFileName);
|
||||
QString lastModified =
|
||||
pFileInfo->lastModified().toString(" yyyy-MM-dd\nhh:mm:ss");
|
||||
|
||||
// screenshot preview
|
||||
QLabel *pScreenshot = new QLabel();
|
||||
QLabel* pScreenshot = new QLabel();
|
||||
pScreenshot->setStyleSheet("padding: 5px;");
|
||||
pScreenshot->setMinimumHeight(HISTORYPIXMAP_MAX_PREVIEW_HEIGHT);
|
||||
pScreenshot->setPixmap(pixmap);
|
||||
|
||||
// screenshot datetime
|
||||
QLabel *pScreenshotText = new QLabel();
|
||||
QLabel* pScreenshotText = new QLabel();
|
||||
pScreenshotText->setStyleSheet("padding: 5px;");
|
||||
pScreenshotText->setMinimumHeight(HISTORYPIXMAP_MAX_PREVIEW_HEIGHT);
|
||||
pScreenshotText->setAlignment(Qt::AlignCenter);
|
||||
pScreenshotText->setText(lastModified);
|
||||
|
||||
// copy url
|
||||
QPushButton *buttonCopyUrl = new QPushButton;
|
||||
QPushButton* buttonCopyUrl = new QPushButton;
|
||||
buttonCopyUrl->setText(tr("Copy URL"));
|
||||
buttonCopyUrl->setMinimumHeight(HISTORYPIXMAP_MAX_PREVIEW_HEIGHT);
|
||||
connect(buttonCopyUrl, &QPushButton::clicked, this, [=](){
|
||||
connect(buttonCopyUrl, &QPushButton::clicked, this, [=]() {
|
||||
QApplication::clipboard()->setText(url);
|
||||
m_notification->showMessage(tr("URL copied to clipboard."));
|
||||
this->close();
|
||||
});
|
||||
|
||||
// open in browser
|
||||
QPushButton *buttonOpen = new QPushButton;
|
||||
QPushButton* buttonOpen = new QPushButton;
|
||||
buttonOpen->setText(tr("Open in browser"));
|
||||
buttonOpen->setMinimumHeight(HISTORYPIXMAP_MAX_PREVIEW_HEIGHT);
|
||||
connect(buttonOpen, &QPushButton::clicked, this, [=](){
|
||||
connect(buttonOpen, &QPushButton::clicked, this, [=]() {
|
||||
QDesktopServices::openUrl(QUrl(url));
|
||||
this->close();
|
||||
});
|
||||
|
||||
// delete
|
||||
QPushButton *buttonDelete = new QPushButton;
|
||||
QPushButton* buttonDelete = new QPushButton;
|
||||
buttonDelete->setIcon(QIcon(":/img/material/black/delete.svg"));
|
||||
buttonDelete->setMinimumHeight(HISTORYPIXMAP_MAX_PREVIEW_HEIGHT);
|
||||
connect(buttonDelete, &QPushButton::clicked, this, [=](){
|
||||
if (unpackFileName.token.length() > 0) {
|
||||
removeItem(phbl, unpackFileName.file, unpackFileName.token);
|
||||
}
|
||||
else {
|
||||
// for compatibility with previous versions and to be able to remove previous screenshots
|
||||
QFile file(fullFileName);
|
||||
if (file.exists()) {
|
||||
file.remove();
|
||||
connect(buttonDelete, &QPushButton::clicked, this, [=]() {
|
||||
// TODO - remove dependency injection (s3 & imgur)
|
||||
if (unpackFileName.type.compare(SCREENSHOT_STORAGE_TYPE_S3) == 0) {
|
||||
if (unpackFileName.token.length() > 0) {
|
||||
ImgS3Uploader* uploader = new ImgS3Uploader();
|
||||
removeItem(
|
||||
uploader, phbl, unpackFileName.file, unpackFileName.token);
|
||||
} else {
|
||||
// for compatibility with previous versions and to be able to
|
||||
// remove previous screenshots
|
||||
removeCacheFile(fullFileName);
|
||||
removeLayoutItem(phbl);
|
||||
}
|
||||
removeLocalItem(phbl);
|
||||
} else if (unpackFileName.type.compare(SCREENSHOT_STORAGE_TYPE_IMGUR) ==
|
||||
0) {
|
||||
QDesktopServices::openUrl(
|
||||
QUrl(QStringLiteral("https://imgur.com/delete/%1")
|
||||
.arg(unpackFileName.token)));
|
||||
removeCacheFile(fullFileName);
|
||||
removeLayoutItem(phbl);
|
||||
}
|
||||
});
|
||||
|
||||
@@ -158,23 +176,27 @@ void HistoryWidget::addLine(const QString &path, const QString& fileName) {
|
||||
m_pVBox->addLayout(phbl);
|
||||
}
|
||||
|
||||
void HistoryWidget::removeItem(QLayout *pl, const QString& s3FileName, const QString& deleteToken) {
|
||||
ImgS3Uploader *uploader = new ImgS3Uploader();
|
||||
void HistoryWidget::removeItem(ImgUploader* imgUploader,
|
||||
QLayout* pl,
|
||||
const QString& fileName,
|
||||
const QString& deleteToken)
|
||||
{
|
||||
hide();
|
||||
uploader->show();
|
||||
uploader->deleteResource(s3FileName, deleteToken);
|
||||
connect(uploader, &QWidget::destroyed, this, [=](){
|
||||
if(uploader->success()) {
|
||||
removeLocalItem(pl);
|
||||
imgUploader->show();
|
||||
imgUploader->deleteResource(fileName, deleteToken);
|
||||
connect(imgUploader, &QWidget::destroyed, this, [=]() {
|
||||
if (imgUploader->resultStatus) {
|
||||
removeLayoutItem(pl);
|
||||
}
|
||||
show();
|
||||
});
|
||||
}
|
||||
|
||||
void HistoryWidget::removeLocalItem(QLayout *pl) {
|
||||
void HistoryWidget::removeLayoutItem(QLayout* pl)
|
||||
{
|
||||
// remove current row or refresh list
|
||||
while(pl->count() > 0) {
|
||||
QLayoutItem *item = pl->takeAt(0);
|
||||
while (pl->count() > 0) {
|
||||
QLayoutItem* item = pl->takeAt(0);
|
||||
delete item->widget();
|
||||
delete item;
|
||||
}
|
||||
@@ -182,7 +204,16 @@ void HistoryWidget::removeLocalItem(QLayout *pl) {
|
||||
delete pl;
|
||||
|
||||
// set "empty" message if no items left
|
||||
if(m_pVBox->count() == 0) {
|
||||
if (m_pVBox->count() == 0) {
|
||||
setEmptyMessage();
|
||||
}
|
||||
}
|
||||
|
||||
void HistoryWidget::removeCacheFile(const QString& fullFileName)
|
||||
{
|
||||
// premove history preview
|
||||
QFile file(fullFileName);
|
||||
if (file.exists()) {
|
||||
file.remove();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,35 +4,38 @@
|
||||
#define HISTORYPIXMAP_MAX_PREVIEW_WIDTH 160
|
||||
#define HISTORYPIXMAP_MAX_PREVIEW_HEIGHT 90
|
||||
|
||||
#include <QObject>
|
||||
#include <QWidget>
|
||||
#include <QDialog>
|
||||
#include <QObject>
|
||||
#include <QString>
|
||||
#include "src/tools/imgs3/imgs3settings.h"
|
||||
#include <QWidget>
|
||||
|
||||
class QLayout;
|
||||
class QVBoxLayout;
|
||||
class NotificationWidget;
|
||||
class ImgUploader;
|
||||
|
||||
class HistoryWidget : public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit HistoryWidget(QWidget *parent = nullptr);
|
||||
explicit HistoryWidget(QWidget* parent = nullptr);
|
||||
|
||||
signals:
|
||||
|
||||
private:
|
||||
void loadHistory();
|
||||
void addLine(const QString &, const QString &);
|
||||
void removeItem(QLayout *pl, const QString& s3FileName, const QString& deleteToken);
|
||||
void removeLocalItem(QLayout *pl);
|
||||
void addLine(const QString&, const QString&);
|
||||
void setEmptyMessage();
|
||||
void removeItem(ImgUploader* imgUploader,
|
||||
QLayout* pl,
|
||||
const QString& s3FileName,
|
||||
const QString& deleteToken);
|
||||
void removeLayoutItem(QLayout* pl);
|
||||
void removeCacheFile(const QString& fullFileName);
|
||||
|
||||
private:
|
||||
ImgS3Settings m_s3Settings;
|
||||
QVBoxLayout *m_pVBox;
|
||||
NotificationWidget *m_notification;
|
||||
QVBoxLayout* m_pVBox;
|
||||
NotificationWidget* m_notification;
|
||||
};
|
||||
|
||||
#endif // HISTORYWIDGET_H
|
||||
|
||||
@@ -125,13 +125,13 @@
|
||||
<context>
|
||||
<name>CaptureWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="83"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="99"/>
|
||||
<source>Unable to capture screen</source>
|
||||
<translatorcomment>Impossible capturar la pantalla</translatorcomment>
|
||||
<translation>Imposible capturar la pantalla</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="258"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="284"/>
|
||||
<source>Select an area with the mouse, or press Esc to exit.
|
||||
Press Enter to capture the screen.
|
||||
Press Right Click to show the color picker.
|
||||
@@ -156,32 +156,27 @@ Press Space to open the side panel.</source>
|
||||
<context>
|
||||
<name>ConfigWindow</name>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="42"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="45"/>
|
||||
<source>Configuration</source>
|
||||
<translation>Configuració</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="64"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="66"/>
|
||||
<source>Interface</source>
|
||||
<translation>Interfície</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="69"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="72"/>
|
||||
<source>Filename Editor</source>
|
||||
<translation>Editor de noms</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="79"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="80"/>
|
||||
<source>Shortcuts</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="84"/>
|
||||
<source>Path Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="74"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="76"/>
|
||||
<source>General</source>
|
||||
<translation>General</translation>
|
||||
</message>
|
||||
@@ -332,152 +327,167 @@ Press Space to open the side panel.</source>
|
||||
<context>
|
||||
<name>GeneneralConf</name>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="147"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<source>Show help message</source>
|
||||
<translation>Mostra el missatge d'ajuda</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="151"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="169"/>
|
||||
<source>Show the help message at the beginning in the capture mode.</source>
|
||||
<translation>Mostra el missatge d'ajuda en iniciar el mode de captura.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="161"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="181"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="185"/>
|
||||
<source>Show desktop notifications</source>
|
||||
<translation>Mostra les notificacions d'escriptori</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="174"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="197"/>
|
||||
<source>Show tray icon</source>
|
||||
<translation>Mostra la icona en la barra de tasques</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="178"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="201"/>
|
||||
<source>Show the systemtray icon</source>
|
||||
<translation>Mostra la icona en la barra de tasques</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="93"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="199"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<source>Import</source>
|
||||
<translation>Importar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Error</source>
|
||||
<translation>Error</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<source>Unable to read file.</source>
|
||||
<translation>Impossible llegir el fitxer.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Unable to write file.</source>
|
||||
<translation>Impossible escriure al fitxer.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="116"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="133"/>
|
||||
<source>Save File</source>
|
||||
<translation>Guardar Arxiu</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="137"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="155"/>
|
||||
<source>Confirm Reset</source>
|
||||
<translation>Confirmar Reset</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="138"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="156"/>
|
||||
<source>Are you sure you want to reset the configuration?</source>
|
||||
<translation>Esteu segur que voleu reiniciar la configuració?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="189"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<source>Configuration File</source>
|
||||
<translation>Fitxer de Configuració</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="194"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="220"/>
|
||||
<source>Export</source>
|
||||
<translation>Exportar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="204"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="234"/>
|
||||
<source>Reset</source>
|
||||
<translation>Reset</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="211"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="244"/>
|
||||
<source>Launch at startup</source>
|
||||
<translation>Llançament a l'inici</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="262"/>
|
||||
<source>Launch Flameshot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="223"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="258"/>
|
||||
<source>Show welcome message on launch</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="236"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="273"/>
|
||||
<source>Close application after capture</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="240"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="277"/>
|
||||
<source>Close after taking a screenshot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="289"/>
|
||||
<source>Copy URL after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="251"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="294"/>
|
||||
<source>Copy URL and close window after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="260"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="263"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="304"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="307"/>
|
||||
<source>Copy file path after save</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="316"/>
|
||||
<source>Upload storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="320"/>
|
||||
<source>Imgur storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="327"/>
|
||||
<source>S3 storage (require config.ini file with s3 credentials)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>HistoryWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="26"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="30"/>
|
||||
<source>Latest Uploads</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="63"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="68"/>
|
||||
<source>Screenshots history is empty</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="109"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="118"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Copia l'URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="113"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="122"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">L'URL s'ha copiat al porta-retalls.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="119"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="128"/>
|
||||
<source>Open in browser</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
@@ -485,164 +495,199 @@ Press Space to open the side panel.</source>
|
||||
<context>
|
||||
<name>ImgS3Uploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">S'està pujant la imatge</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Delete image from S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="244"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="226"/>
|
||||
<source>Unable to remove screenshot from the remote storage.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="246"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="228"/>
|
||||
<source>Network error</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="249"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="230"/>
|
||||
<source>Possibly it doesn't exist anymore</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="252"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="235"/>
|
||||
<source>Do you want to remove screenshot from local history anyway?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="282"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="256"/>
|
||||
<source>S3 Creds URL is not found in your configuration file</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="406"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Copia l'URL</translation>
|
||||
<translation type="obsolete">Copia l'URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="407"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">Obri l'URL</translation>
|
||||
<translation type="obsolete">Obri l'URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="408"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="409"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Imatge al porta-retalls.</translation>
|
||||
<translation type="obsolete">Imatge al porta-retalls.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="428"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">No es pot obrir l'URL.</translation>
|
||||
<translation type="obsolete">No es pot obrir l'URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="209"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="434"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="202"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">L'URL s'ha copiat al porta-retalls.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="447"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="255"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="239"/>
|
||||
<source>Remove screenshot from history?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="439"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">La captura s'ha copiat al porta-retalls.</translation>
|
||||
<translation type="obsolete">La captura s'ha copiat al porta-retalls.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgS3UploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="38"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation type="unfinished">Puja la imatge</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="46"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to S3 bucket</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">S'està pujant la imatge</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Upload image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="92"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">No es pot obrir l'URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="99"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">L'URL s'ha copiat al porta-retalls.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="105"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">La captura s'ha copiat al porta-retalls.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="114"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="174"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Copia l'URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="175"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">Obri l'URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="176"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="177"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Imatge al porta-retalls.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="47"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="48"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>Puja a Imgur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation>S'està pujant la imatge</translation>
|
||||
<translation type="vanished">S'està pujant la imatge</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="140"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>Copia l'URL</translation>
|
||||
<translation type="vanished">Copia l'URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="141"/>
|
||||
<source>Open URL</source>
|
||||
<translation>Obri l'URL</translation>
|
||||
<translation type="vanished">Obri l'URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="143"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>Imatge al porta-retalls.</translation>
|
||||
<translation type="vanished">Imatge al porta-retalls.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="162"/>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="175"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="127"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>No es pot obrir l'URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="168"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>L'URL s'ha copiat al porta-retalls.</translation>
|
||||
<translation type="vanished">L'URL s'ha copiat al porta-retalls.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="181"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation>La captura s'ha copiat al porta-retalls.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="142"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
<translation type="vanished">La captura s'ha copiat al porta-retalls.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="35"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation>Puja la imatge</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="43"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to Imgur</source>
|
||||
<translation>Puja la selecció a Imgur</translation>
|
||||
</message>
|
||||
@@ -840,7 +885,7 @@ Press Space to open the side panel.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="82"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="88"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">L'URL s'ha copiat al porta-retalls.</translation>
|
||||
</message>
|
||||
|
||||
@@ -125,12 +125,12 @@
|
||||
<context>
|
||||
<name>CaptureWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="83"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="99"/>
|
||||
<source>Unable to capture screen</source>
|
||||
<translation>Bereich kann nicht erfasst werden</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="258"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="284"/>
|
||||
<source>Select an area with the mouse, or press Esc to exit.
|
||||
Press Enter to capture the screen.
|
||||
Press Right Click to show the color picker.
|
||||
@@ -159,32 +159,27 @@ Drücke die Leertaste um das Seitenmenü zu öffnen.</translation>
|
||||
<context>
|
||||
<name>ConfigWindow</name>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="42"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="45"/>
|
||||
<source>Configuration</source>
|
||||
<translation>Einstellungen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="64"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="66"/>
|
||||
<source>Interface</source>
|
||||
<translation>Benutzeroberfläche</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="69"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="72"/>
|
||||
<source>Filename Editor</source>
|
||||
<translation>Dateinamen Editor</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="79"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="80"/>
|
||||
<source>Shortcuts</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="84"/>
|
||||
<source>Path Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="74"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="76"/>
|
||||
<source>General</source>
|
||||
<translation>Allgemein</translation>
|
||||
</message>
|
||||
@@ -335,152 +330,167 @@ Drücke die Leertaste um das Seitenmenü zu öffnen.</translation>
|
||||
<context>
|
||||
<name>GeneneralConf</name>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="93"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="199"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<source>Import</source>
|
||||
<translation>Importieren</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Error</source>
|
||||
<translation>Fehler</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<source>Unable to read file.</source>
|
||||
<translation>Datei kann nicht gelesen werden.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Unable to write file.</source>
|
||||
<translation>Datei kann nicht geschrieben werden.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="116"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="133"/>
|
||||
<source>Save File</source>
|
||||
<translation>Datei speichern</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="137"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="155"/>
|
||||
<source>Confirm Reset</source>
|
||||
<translation>Zurücksetzen bestätigen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="138"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="156"/>
|
||||
<source>Are you sure you want to reset the configuration?</source>
|
||||
<translation>Sind Sie sicher, dass sie die Konfiguration zurücksetzen wollen?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="147"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<source>Show help message</source>
|
||||
<translation>Hilfetext anzeigen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="151"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="169"/>
|
||||
<source>Show the help message at the beginning in the capture mode.</source>
|
||||
<translation>Hilfetext am Start der Auswahl anzeigen.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="161"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="181"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="185"/>
|
||||
<source>Show desktop notifications</source>
|
||||
<translation>Zeige Desktopbenachrichtigungen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="174"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="197"/>
|
||||
<source>Show tray icon</source>
|
||||
<translation>Zeige Taskleistensymbol</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="178"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="201"/>
|
||||
<source>Show the systemtray icon</source>
|
||||
<translation>Zeigt das Taskleistensymbol</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="189"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<source>Configuration File</source>
|
||||
<translation>Konfigurationsdatei</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="194"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="220"/>
|
||||
<source>Export</source>
|
||||
<translation>Exportieren</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="204"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="234"/>
|
||||
<source>Reset</source>
|
||||
<translation>Zurücksetzen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="211"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="244"/>
|
||||
<source>Launch at startup</source>
|
||||
<translation>Automatisch starten</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="262"/>
|
||||
<source>Launch Flameshot</source>
|
||||
<translation>Starte Flameshot</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="223"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="258"/>
|
||||
<source>Show welcome message on launch</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="236"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="273"/>
|
||||
<source>Close application after capture</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="240"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="277"/>
|
||||
<source>Close after taking a screenshot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="289"/>
|
||||
<source>Copy URL after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="251"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="294"/>
|
||||
<source>Copy URL and close window after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="260"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="263"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="304"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="307"/>
|
||||
<source>Copy file path after save</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="316"/>
|
||||
<source>Upload storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="320"/>
|
||||
<source>Imgur storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="327"/>
|
||||
<source>S3 storage (require config.ini file with s3 credentials)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>HistoryWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="26"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="30"/>
|
||||
<source>Latest Uploads</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="63"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="68"/>
|
||||
<source>Screenshots history is empty</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="109"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="118"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">URL kopieren</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="113"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="122"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL kopiert.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="119"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="128"/>
|
||||
<source>Open in browser</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
@@ -488,164 +498,207 @@ Drücke die Leertaste um das Seitenmenü zu öffnen.</translation>
|
||||
<context>
|
||||
<name>ImgS3Uploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">Bild hochladen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Delete image from S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="244"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="226"/>
|
||||
<source>Unable to remove screenshot from the remote storage.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="246"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="228"/>
|
||||
<source>Network error</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="249"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="230"/>
|
||||
<source>Possibly it doesn't exist anymore</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="252"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="235"/>
|
||||
<source>Do you want to remove screenshot from local history anyway?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="282"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="256"/>
|
||||
<source>S3 Creds URL is not found in your configuration file</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="406"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">URL kopieren</translation>
|
||||
<translation type="obsolete">URL kopieren</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="407"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">URL öffnen</translation>
|
||||
<translation type="obsolete">URL öffnen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="408"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">Bild löschen</translation>
|
||||
<translation type="obsolete">Bild löschen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="409"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Bild in Zwischenablage.</translation>
|
||||
<translation type="obsolete">Bild in Zwischenablage.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="428"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">Kann URL nicht öffnen.</translation>
|
||||
<translation type="obsolete">Kann URL nicht öffnen.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="209"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="434"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="202"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL kopiert.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="447"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="255"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="239"/>
|
||||
<source>Remove screenshot from history?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="439"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Bildschirmaufnahme in Zwischenablage kopiert.</translation>
|
||||
<translation type="obsolete">Bildschirmaufnahme in Zwischenablage kopiert.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgS3UploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="38"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation type="unfinished">Bild hochladen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="46"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to S3 bucket</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">Bild hochladen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Upload image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="92"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">Kann URL nicht öffnen.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="99"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL kopiert.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="105"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Bildschirmaufnahme in Zwischenablage kopiert.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="114"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="174"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">URL kopieren</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="175"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">URL öffnen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="176"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">Bild löschen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="177"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Bild in Zwischenablage.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="47"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="48"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>Zu Imgur hochladen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation>Bild hochladen</translation>
|
||||
<translation type="vanished">Bild hochladen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="140"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>URL kopieren</translation>
|
||||
<translation type="vanished">URL kopieren</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="141"/>
|
||||
<source>Open URL</source>
|
||||
<translation>URL öffnen</translation>
|
||||
<translation type="vanished">URL öffnen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="142"/>
|
||||
<source>Delete image</source>
|
||||
<translation>Bild löschen</translation>
|
||||
<translation type="vanished">Bild löschen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="143"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>Bild in Zwischenablage.</translation>
|
||||
<translation type="vanished">Bild in Zwischenablage.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="162"/>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="175"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="127"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>Kann URL nicht öffnen.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="168"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>URL kopiert.</translation>
|
||||
<translation type="vanished">URL kopiert.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="181"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation>Bildschirmaufnahme in Zwischenablage kopiert.</translation>
|
||||
<translation type="vanished">Bildschirmaufnahme in Zwischenablage kopiert.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="35"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation>Bild hochladen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="43"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to Imgur</source>
|
||||
<translation>Auswahl zu Imgur hochladen</translation>
|
||||
</message>
|
||||
@@ -851,7 +904,7 @@ Drücke die Leertaste um das Seitenmenü zu öffnen.</translation>
|
||||
<translation>Kein Schreibzugriff auf</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="82"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="88"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL kopiert.</translation>
|
||||
</message>
|
||||
|
||||
@@ -125,12 +125,12 @@
|
||||
<context>
|
||||
<name>CaptureWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="83"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="99"/>
|
||||
<source>Unable to capture screen</source>
|
||||
<translation>Imposible capturar la pantalla</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="258"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="284"/>
|
||||
<source>Select an area with the mouse, or press Esc to exit.
|
||||
Press Enter to capture the screen.
|
||||
Press Right Click to show the color picker.
|
||||
@@ -159,32 +159,27 @@ Presiona Espacio para abrir el panel lateral.</translation>
|
||||
<context>
|
||||
<name>ConfigWindow</name>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="42"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="45"/>
|
||||
<source>Configuration</source>
|
||||
<translation>Configuración</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="64"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="66"/>
|
||||
<source>Interface</source>
|
||||
<translation>Interfaz</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="69"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="72"/>
|
||||
<source>Filename Editor</source>
|
||||
<translation>Editor de Nombre</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="79"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="80"/>
|
||||
<source>Shortcuts</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="84"/>
|
||||
<source>Path Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="74"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="76"/>
|
||||
<source>General</source>
|
||||
<translation>General</translation>
|
||||
</message>
|
||||
@@ -335,152 +330,167 @@ Presiona Espacio para abrir el panel lateral.</translation>
|
||||
<context>
|
||||
<name>GeneneralConf</name>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="93"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="199"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<source>Import</source>
|
||||
<translation>Importar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Error</source>
|
||||
<translation>Error</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<source>Unable to read file.</source>
|
||||
<translation>Imposible leer el archivo.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Unable to write file.</source>
|
||||
<translation>Imposible escribir el archivo.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="116"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="133"/>
|
||||
<source>Save File</source>
|
||||
<translation>Guardar Archivo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="137"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="155"/>
|
||||
<source>Confirm Reset</source>
|
||||
<translation>Confirmar Reset</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="138"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="156"/>
|
||||
<source>Are you sure you want to reset the configuration?</source>
|
||||
<translation>¿Estás seguro de que quieres reiniciar la configuración?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="147"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<source>Show help message</source>
|
||||
<translation>Mostrar mensaje de ayuda</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="151"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="169"/>
|
||||
<source>Show the help message at the beginning in the capture mode.</source>
|
||||
<translation>Muestra el mensaje de ayuda al iniciar el modo de captura.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="161"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="181"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="185"/>
|
||||
<source>Show desktop notifications</source>
|
||||
<translation>Mostrar notificaciones del escritorio</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="174"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="197"/>
|
||||
<source>Show tray icon</source>
|
||||
<translation>Mostrar icono en la barra de tareas</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="178"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="201"/>
|
||||
<source>Show the systemtray icon</source>
|
||||
<translation>Mostrar el icono en la barra de tareas</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="189"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<source>Configuration File</source>
|
||||
<translation>Archivo de Configuración</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="194"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="220"/>
|
||||
<source>Export</source>
|
||||
<translation>Exportar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="204"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="234"/>
|
||||
<source>Reset</source>
|
||||
<translation>Reset</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="211"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="244"/>
|
||||
<source>Launch at startup</source>
|
||||
<translation>Lanzar en el arranque</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="262"/>
|
||||
<source>Launch Flameshot</source>
|
||||
<translation>Lanzar Flameshot</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="223"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="258"/>
|
||||
<source>Show welcome message on launch</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="236"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="273"/>
|
||||
<source>Close application after capture</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="240"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="277"/>
|
||||
<source>Close after taking a screenshot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="289"/>
|
||||
<source>Copy URL after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="251"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="294"/>
|
||||
<source>Copy URL and close window after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="260"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="263"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="304"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="307"/>
|
||||
<source>Copy file path after save</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="316"/>
|
||||
<source>Upload storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="320"/>
|
||||
<source>Imgur storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="327"/>
|
||||
<source>S3 storage (require config.ini file with s3 credentials)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>HistoryWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="26"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="30"/>
|
||||
<source>Latest Uploads</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="63"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="68"/>
|
||||
<source>Screenshots history is empty</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="109"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="118"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Copiar URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="113"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="122"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL copiada al portapapeles.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="119"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="128"/>
|
||||
<source>Open in browser</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
@@ -488,164 +498,207 @@ Presiona Espacio para abrir el panel lateral.</translation>
|
||||
<context>
|
||||
<name>ImgS3Uploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">Subiendo Imagen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Delete image from S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="244"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="226"/>
|
||||
<source>Unable to remove screenshot from the remote storage.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="246"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="228"/>
|
||||
<source>Network error</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="249"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="230"/>
|
||||
<source>Possibly it doesn't exist anymore</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="252"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="235"/>
|
||||
<source>Do you want to remove screenshot from local history anyway?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="282"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="256"/>
|
||||
<source>S3 Creds URL is not found in your configuration file</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="406"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Copiar URL</translation>
|
||||
<translation type="obsolete">Copiar URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="407"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">Abrir URL</translation>
|
||||
<translation type="obsolete">Abrir URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="408"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">Borrar imagen</translation>
|
||||
<translation type="obsolete">Borrar imagen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="409"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Imagen al Portapapeles.</translation>
|
||||
<translation type="obsolete">Imagen al Portapapeles.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="428"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">No puede abrir la URL.</translation>
|
||||
<translation type="obsolete">No puede abrir la URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="209"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="434"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="202"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL copiada al portapapeles.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="447"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="255"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="239"/>
|
||||
<source>Remove screenshot from history?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="439"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Captura copiada al portapapeles.</translation>
|
||||
<translation type="obsolete">Captura copiada al portapapeles.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgS3UploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="38"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation type="unfinished">Subir Imagen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="46"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to S3 bucket</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">Subiendo Imagen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Upload image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="92"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">No puede abrir la URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="99"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL copiada al portapapeles.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="105"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Captura copiada al portapapeles.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="114"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="174"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Copiar URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="175"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">Abrir URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="176"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">Borrar imagen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="177"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Imagen al Portapapeles.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="47"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="48"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>Subir a Imgur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation>Subiendo Imagen</translation>
|
||||
<translation type="vanished">Subiendo Imagen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="140"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>Copiar URL</translation>
|
||||
<translation type="vanished">Copiar URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="141"/>
|
||||
<source>Open URL</source>
|
||||
<translation>Abrir URL</translation>
|
||||
<translation type="vanished">Abrir URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="142"/>
|
||||
<source>Delete image</source>
|
||||
<translation>Borrar imagen</translation>
|
||||
<translation type="vanished">Borrar imagen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="143"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>Imagen al Portapapeles.</translation>
|
||||
<translation type="vanished">Imagen al Portapapeles.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="162"/>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="175"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="127"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>No puede abrir la URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="168"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>URL copiada al portapapeles.</translation>
|
||||
<translation type="vanished">URL copiada al portapapeles.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="181"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation>Captura copiada al portapapeles.</translation>
|
||||
<translation type="vanished">Captura copiada al portapapeles.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="35"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation>Subir Imagen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="43"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to Imgur</source>
|
||||
<translation>Sube la selección a Imgur</translation>
|
||||
</message>
|
||||
@@ -847,7 +900,7 @@ Presiona Espacio para abrir el panel lateral.</translation>
|
||||
<translation>Imposible escribir en</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="82"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="88"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL copiada al portapapeles.</translation>
|
||||
</message>
|
||||
|
||||
@@ -125,12 +125,12 @@
|
||||
<context>
|
||||
<name>CaptureWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="83"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="99"/>
|
||||
<source>Unable to capture screen</source>
|
||||
<translation>Imposible de capturer l'écran</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="258"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="284"/>
|
||||
<source>Select an area with the mouse, or press Esc to exit.
|
||||
Press Enter to capture the screen.
|
||||
Press Right Click to show the color picker.
|
||||
@@ -159,32 +159,27 @@ Appuyer sur Espace pour ouvrir le panneau latéral.</translation>
|
||||
<context>
|
||||
<name>ConfigWindow</name>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="42"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="45"/>
|
||||
<source>Configuration</source>
|
||||
<translation>Configuration</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="64"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="66"/>
|
||||
<source>Interface</source>
|
||||
<translation>Interface</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="69"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="72"/>
|
||||
<source>Filename Editor</source>
|
||||
<translation>Editeur de Noms</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="79"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="80"/>
|
||||
<source>Shortcuts</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="84"/>
|
||||
<source>Path Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="74"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="76"/>
|
||||
<source>General</source>
|
||||
<translation>Général</translation>
|
||||
</message>
|
||||
@@ -335,152 +330,167 @@ Appuyer sur Espace pour ouvrir le panneau latéral.</translation>
|
||||
<context>
|
||||
<name>GeneneralConf</name>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="93"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="199"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<source>Import</source>
|
||||
<translation>Importer</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Error</source>
|
||||
<translation>Erreur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<source>Unable to read file.</source>
|
||||
<translation>Impossible de lire le fichier.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Unable to write file.</source>
|
||||
<translation>Impossible d'écrire le fichier.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="116"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="133"/>
|
||||
<source>Save File</source>
|
||||
<translation>Sauvegarder le fichier</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="137"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="155"/>
|
||||
<source>Confirm Reset</source>
|
||||
<translation>Confirmer la Réinitialisation</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="138"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="156"/>
|
||||
<source>Are you sure you want to reset the configuration?</source>
|
||||
<translation>Êtes-vous sûr de vouloir réinitialiser la configuration ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="147"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<source>Show help message</source>
|
||||
<translation>Montrer le message d'aide</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="151"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="169"/>
|
||||
<source>Show the help message at the beginning in the capture mode.</source>
|
||||
<translation>Afficher ce message au lancement du mode capture.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="161"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="181"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="185"/>
|
||||
<source>Show desktop notifications</source>
|
||||
<translation>Afficher les notifications du bureau</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="174"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="197"/>
|
||||
<source>Show tray icon</source>
|
||||
<translation>Afficher les icones de la barre d'état</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="178"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="201"/>
|
||||
<source>Show the systemtray icon</source>
|
||||
<translation>Afficher l'icône dans la barre de tâches</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="189"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<source>Configuration File</source>
|
||||
<translation>Fichier de Configuration</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="194"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="220"/>
|
||||
<source>Export</source>
|
||||
<translation>Exporter</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="204"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="234"/>
|
||||
<source>Reset</source>
|
||||
<translation>Réinitialiser</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="211"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="244"/>
|
||||
<source>Launch at startup</source>
|
||||
<translation>Lancer au démarrage</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="262"/>
|
||||
<source>Launch Flameshot</source>
|
||||
<translation>Démarrer Flameshot</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="223"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="258"/>
|
||||
<source>Show welcome message on launch</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="236"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="273"/>
|
||||
<source>Close application after capture</source>
|
||||
<translation>Fermer après une capture</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="240"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="277"/>
|
||||
<source>Close after taking a screenshot</source>
|
||||
<translation>Fermer l'application après une capture d'écran</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="289"/>
|
||||
<source>Copy URL after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="251"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="294"/>
|
||||
<source>Copy URL and close window after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="260"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="263"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="304"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="307"/>
|
||||
<source>Copy file path after save</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="316"/>
|
||||
<source>Upload storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="320"/>
|
||||
<source>Imgur storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="327"/>
|
||||
<source>S3 storage (require config.ini file with s3 credentials)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>HistoryWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="26"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="30"/>
|
||||
<source>Latest Uploads</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="63"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="68"/>
|
||||
<source>Screenshots history is empty</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="109"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="118"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Copier l'URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="113"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="122"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL copiée dans le Presse-papier.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="119"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="128"/>
|
||||
<source>Open in browser</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
@@ -488,164 +498,199 @@ Appuyer sur Espace pour ouvrir le panneau latéral.</translation>
|
||||
<context>
|
||||
<name>ImgS3Uploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">Mise en ligne de l'image</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Delete image from S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="244"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="226"/>
|
||||
<source>Unable to remove screenshot from the remote storage.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="246"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="228"/>
|
||||
<source>Network error</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="249"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="230"/>
|
||||
<source>Possibly it doesn't exist anymore</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="252"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="235"/>
|
||||
<source>Do you want to remove screenshot from local history anyway?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="282"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="256"/>
|
||||
<source>S3 Creds URL is not found in your configuration file</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="406"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Copier l'URL</translation>
|
||||
<translation type="obsolete">Copier l'URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="407"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">Ouvrir l'URL</translation>
|
||||
<translation type="obsolete">Ouvrir l'URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="408"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="409"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Image dans le Presse-papier.</translation>
|
||||
<translation type="obsolete">Image dans le Presse-papier.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="428"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">Impossible d'ouvrir l'URL.</translation>
|
||||
<translation type="obsolete">Impossible d'ouvrir l'URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="209"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="434"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="202"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL copiée dans le Presse-papier.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="447"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="255"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="239"/>
|
||||
<source>Remove screenshot from history?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="439"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Capture d'écran copiée dans le Presse-papier.</translation>
|
||||
<translation type="obsolete">Capture d'écran copiée dans le Presse-papier.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgS3UploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="38"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation type="unfinished">Mise en ligne d'images</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="46"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to S3 bucket</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<name>ImgUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="47"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>Mettre en ligne vers Imgur</translation>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="54"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation>Mise en ligne de l'image</translation>
|
||||
<translation type="unfinished">Mise en ligne de l'image</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="140"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Upload image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="92"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">Impossible d'ouvrir l'URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="99"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL copiée dans le Presse-papier.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="105"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Capture d'écran copiée dans le Presse-papier.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="114"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="174"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>Copier l'URL</translation>
|
||||
<translation type="unfinished">Copier l'URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="141"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="175"/>
|
||||
<source>Open URL</source>
|
||||
<translation>Ouvrir l'URL</translation>
|
||||
<translation type="unfinished">Ouvrir l'URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="142"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="176"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="143"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="177"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>Image dans le Presse-papier.</translation>
|
||||
<translation type="unfinished">Image dans le Presse-papier.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="48"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>Mettre en ligne vers Imgur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="162"/>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="175"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="vanished">Mise en ligne de l'image</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL</source>
|
||||
<translation type="vanished">Copier l'URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open URL</source>
|
||||
<translation type="vanished">Ouvrir l'URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="vanished">Image dans le Presse-papier.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="127"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>Impossible d'ouvrir l'URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="168"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>URL copiée dans le Presse-papier.</translation>
|
||||
<translation type="vanished">URL copiée dans le Presse-papier.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="181"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation>Capture d'écran copiée dans le Presse-papier.</translation>
|
||||
<translation type="vanished">Capture d'écran copiée dans le Presse-papier.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="35"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation>Mise en ligne d'images</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="43"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to Imgur</source>
|
||||
<translation>Mettre en ligne la sélection vers Imgur</translation>
|
||||
</message>
|
||||
@@ -843,7 +888,7 @@ Appuyer sur Espace pour ouvrir le panneau latéral.</translation>
|
||||
<translation>Imposible d'écrire par dessus</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="82"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="88"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL copiée dans le Presse-papier.</translation>
|
||||
</message>
|
||||
|
||||
@@ -154,10 +154,6 @@ Press Space to open the side panel.</source>
|
||||
<source>General</source>
|
||||
<translation>Általános</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Path Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Shortcuts</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -393,6 +389,18 @@ Press Space to open the side panel.</source>
|
||||
<source>Copy file path after save</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Upload storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Imgur storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>S3 storage (require config.ini file with s3 credentials)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>HistoryWidget</name>
|
||||
@@ -425,19 +433,19 @@ Press Space to open the side panel.</source>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">URL másolása</translation>
|
||||
<translation type="obsolete">URL másolása</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">URL megnyitása</translation>
|
||||
<translation type="obsolete">URL megnyitása</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Kép a vágolapra.</translation>
|
||||
<translation type="obsolete">Kép a vágolapra.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">Nem lehet az URL-t megnyitni.</translation>
|
||||
<translation type="obsolete">Nem lehet az URL-t megnyitni.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>URL copied to clipboard.</source>
|
||||
@@ -445,7 +453,7 @@ Press Space to open the side panel.</source>
|
||||
</message>
|
||||
<message>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Képernyőmentés másolva a vágólapra.</translation>
|
||||
<translation type="obsolete">Képernyőmentés másolva a vágólapra.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Upload image to S3</source>
|
||||
@@ -455,10 +463,6 @@ Press Space to open the side panel.</source>
|
||||
<source>Delete image from S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>S3 Creds URL is not found in your configuration file</source>
|
||||
<translation type="unfinished"></translation>
|
||||
@@ -499,6 +503,53 @@ Press Space to open the side panel.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgUploader</name>
|
||||
<message>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">Kép felötlése</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Upload image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">Nem lehet az URL-t megnyitni.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL másolva a vágólapra.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Képernyőmentés másolva a vágólapra.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">URL másolása</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">URL megnyitása</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Kép a vágolapra.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<message>
|
||||
@@ -507,19 +558,19 @@ Press Space to open the side panel.</source>
|
||||
</message>
|
||||
<message>
|
||||
<source>Uploading Image</source>
|
||||
<translation>Kép felötlése</translation>
|
||||
<translation type="vanished">Kép felötlése</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL</source>
|
||||
<translation>URL másolása</translation>
|
||||
<translation type="vanished">URL másolása</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open URL</source>
|
||||
<translation>URL megnyitása</translation>
|
||||
<translation type="vanished">URL megnyitása</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>Kép a vágolapra.</translation>
|
||||
<translation type="vanished">Kép a vágolapra.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unable to open the URL.</source>
|
||||
@@ -527,15 +578,11 @@ Press Space to open the side panel.</source>
|
||||
</message>
|
||||
<message>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>URL másolva a vágólapra.</translation>
|
||||
<translation type="vanished">URL másolva a vágólapra.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation>Képernyőmentés másolva a vágólapra.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
<translation type="vanished">Képernyőmentés másolva a vágólapra.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
|
||||
@@ -125,12 +125,12 @@
|
||||
<context>
|
||||
<name>CaptureWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="83"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="99"/>
|
||||
<source>Unable to capture screen</source>
|
||||
<translation>画面をキャプチャーできません</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="258"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="284"/>
|
||||
<source>Select an area with the mouse, or press Esc to exit.
|
||||
Press Enter to capture the screen.
|
||||
Press Right Click to show the color picker.
|
||||
@@ -159,32 +159,27 @@ Enter を押すと画面をキャプチャー。
|
||||
<context>
|
||||
<name>ConfigWindow</name>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="42"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="45"/>
|
||||
<source>Configuration</source>
|
||||
<translation>設定</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="64"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="66"/>
|
||||
<source>Interface</source>
|
||||
<translation>インターフェース</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="69"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="72"/>
|
||||
<source>Filename Editor</source>
|
||||
<translation>ファイル名エディター</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="79"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="80"/>
|
||||
<source>Shortcuts</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="84"/>
|
||||
<source>Path Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="74"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="76"/>
|
||||
<source>General</source>
|
||||
<translation>全般</translation>
|
||||
</message>
|
||||
@@ -335,152 +330,167 @@ Enter を押すと画面をキャプチャー。
|
||||
<context>
|
||||
<name>GeneneralConf</name>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="147"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<source>Show help message</source>
|
||||
<translation>ヘルプメッセージを表示する</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="151"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="169"/>
|
||||
<source>Show the help message at the beginning in the capture mode.</source>
|
||||
<translation>キャプチャーモード開始時にヘルプメッセージを表示する。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="161"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="181"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="185"/>
|
||||
<source>Show desktop notifications</source>
|
||||
<translation>デスクトップの通知を表示する</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="174"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="197"/>
|
||||
<source>Show tray icon</source>
|
||||
<translation>トレイアイコンを表示する</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="178"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="201"/>
|
||||
<source>Show the systemtray icon</source>
|
||||
<translation>システムトレイアイコンを表示する</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="93"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="199"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<source>Import</source>
|
||||
<translation>インポート</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Error</source>
|
||||
<translation>エラー</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<source>Unable to read file.</source>
|
||||
<translation>ファイルを読み込めません。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Unable to write file.</source>
|
||||
<translation>ファイルに書き込めません。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="116"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="133"/>
|
||||
<source>Save File</source>
|
||||
<translation>ファイルを保存</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="137"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="155"/>
|
||||
<source>Confirm Reset</source>
|
||||
<translation>リセットの確認</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="138"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="156"/>
|
||||
<source>Are you sure you want to reset the configuration?</source>
|
||||
<translation>設定をリセットしてもよろしいですか?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="189"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<source>Configuration File</source>
|
||||
<translation>設定ファイル</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="194"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="220"/>
|
||||
<source>Export</source>
|
||||
<translation>エクスポート</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="204"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="234"/>
|
||||
<source>Reset</source>
|
||||
<translation>リセット</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="211"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="244"/>
|
||||
<source>Launch at startup</source>
|
||||
<translation>スタートアップ時に起動する</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="262"/>
|
||||
<source>Launch Flameshot</source>
|
||||
<translation>Flameshot を起動する</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="223"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="258"/>
|
||||
<source>Show welcome message on launch</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="236"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="273"/>
|
||||
<source>Close application after capture</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="240"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="277"/>
|
||||
<source>Close after taking a screenshot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="289"/>
|
||||
<source>Copy URL after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="251"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="294"/>
|
||||
<source>Copy URL and close window after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="260"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="263"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="304"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="307"/>
|
||||
<source>Copy file path after save</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="316"/>
|
||||
<source>Upload storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="320"/>
|
||||
<source>Imgur storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="327"/>
|
||||
<source>S3 storage (require config.ini file with s3 credentials)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>HistoryWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="26"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="30"/>
|
||||
<source>Latest Uploads</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="63"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="68"/>
|
||||
<source>Screenshots history is empty</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="109"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="118"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">URL をコピー</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="113"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="122"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL をクリップボードにコピーしました。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="119"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="128"/>
|
||||
<source>Open in browser</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
@@ -488,164 +498,207 @@ Enter を押すと画面をキャプチャー。
|
||||
<context>
|
||||
<name>ImgS3Uploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">画像をアップロード中</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Delete image from S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="244"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="226"/>
|
||||
<source>Unable to remove screenshot from the remote storage.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="246"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="228"/>
|
||||
<source>Network error</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="249"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="230"/>
|
||||
<source>Possibly it doesn't exist anymore</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="252"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="235"/>
|
||||
<source>Do you want to remove screenshot from local history anyway?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="282"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="256"/>
|
||||
<source>S3 Creds URL is not found in your configuration file</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="406"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">URL をコピー</translation>
|
||||
<translation type="obsolete">URL をコピー</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="407"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">URL を開く</translation>
|
||||
<translation type="obsolete">URL を開く</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="408"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">画像を削除</translation>
|
||||
<translation type="obsolete">画像を削除</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="409"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">画像をクリップボードへ。</translation>
|
||||
<translation type="obsolete">画像をクリップボードへ。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="428"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">URL を開けません。</translation>
|
||||
<translation type="obsolete">URL を開けません。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="209"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="434"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="202"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL をクリップボードにコピーしました。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="447"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="255"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="239"/>
|
||||
<source>Remove screenshot from history?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="439"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">スクリーンショットをクリップボードにコピーしました。</translation>
|
||||
<translation type="obsolete">スクリーンショットをクリップボードにコピーしました。</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgS3UploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="38"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation type="unfinished">画像アップローダー</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="46"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to S3 bucket</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">画像をアップロード中</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Upload image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="92"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">URL を開けません。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="99"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL をクリップボードにコピーしました。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="105"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">スクリーンショットをクリップボードにコピーしました。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="114"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="174"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">URL をコピー</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="175"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">URL を開く</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="176"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">画像を削除</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="177"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">画像をクリップボードへ。</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="47"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="48"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>Imgur にアップロード</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation>画像をアップロード中</translation>
|
||||
<translation type="vanished">画像をアップロード中</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="140"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>URL をコピー</translation>
|
||||
<translation type="vanished">URL をコピー</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="141"/>
|
||||
<source>Open URL</source>
|
||||
<translation>URL を開く</translation>
|
||||
<translation type="vanished">URL を開く</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="142"/>
|
||||
<source>Delete image</source>
|
||||
<translation>画像を削除</translation>
|
||||
<translation type="vanished">画像を削除</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="143"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>画像をクリップボードへ。</translation>
|
||||
<translation type="vanished">画像をクリップボードへ。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="162"/>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="175"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="127"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>URL を開けません。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="168"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>URL をクリップボードにコピーしました。</translation>
|
||||
<translation type="vanished">URL をクリップボードにコピーしました。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="181"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation>スクリーンショットをクリップボードにコピーしました。</translation>
|
||||
<translation type="vanished">スクリーンショットをクリップボードにコピーしました。</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="35"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation>画像アップローダー</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="43"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to Imgur</source>
|
||||
<translation>Imgur に選択範囲をアップロードする</translation>
|
||||
</message>
|
||||
@@ -843,7 +896,7 @@ Enter を押すと画面をキャプチャー。
|
||||
<translation>書き込めません:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="82"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="88"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL をクリップボードにコピーしました。</translation>
|
||||
</message>
|
||||
|
||||
@@ -125,12 +125,12 @@
|
||||
<context>
|
||||
<name>CaptureWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="83"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="99"/>
|
||||
<source>Unable to capture screen</source>
|
||||
<translation>ეკრანის გადაღება ვერ მოხერხდა</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="258"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="284"/>
|
||||
<source>Select an area with the mouse, or press Esc to exit.
|
||||
Press Enter to capture the screen.
|
||||
Press Right Click to show the color picker.
|
||||
@@ -155,32 +155,27 @@ Press Space to open the side panel.</source>
|
||||
<context>
|
||||
<name>ConfigWindow</name>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="42"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="45"/>
|
||||
<source>Configuration</source>
|
||||
<translation>პარამეტრები</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="64"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="66"/>
|
||||
<source>Interface</source>
|
||||
<translation>ინტერფეისი</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="69"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="72"/>
|
||||
<source>Filename Editor</source>
|
||||
<translation>ფაილის სახელის რედაქტორი</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="79"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="80"/>
|
||||
<source>Shortcuts</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="84"/>
|
||||
<source>Path Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="74"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="76"/>
|
||||
<source>General</source>
|
||||
<translation>ზოგადი</translation>
|
||||
</message>
|
||||
@@ -331,152 +326,167 @@ Press Space to open the side panel.</source>
|
||||
<context>
|
||||
<name>GeneneralConf</name>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="93"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="199"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<source>Import</source>
|
||||
<translation>იმპორტირება</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Error</source>
|
||||
<translation>შეცდომა</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<source>Unable to read file.</source>
|
||||
<translation>ფაილის წაკითხვა ვერ მოხერხდა.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Unable to write file.</source>
|
||||
<translation>ფაილის ჩაწერა ვერ მოხერხდა.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="116"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="133"/>
|
||||
<source>Save File</source>
|
||||
<translation>ფაილის შენახვა</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="137"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="155"/>
|
||||
<source>Confirm Reset</source>
|
||||
<translation>განულების დადასტურება</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="138"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="156"/>
|
||||
<source>Are you sure you want to reset the configuration?</source>
|
||||
<translation>დარწმუნებული ხართ, რომ გსურთ პარამეტრების განულება?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="147"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<source>Show help message</source>
|
||||
<translation>დახმარების შეტყობინების ნახვა</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="151"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="169"/>
|
||||
<source>Show the help message at the beginning in the capture mode.</source>
|
||||
<translation>დახმარების შეტყობინების ნახვა გადაღების რეჟიმის დაწყებისას.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="161"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="181"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="185"/>
|
||||
<source>Show desktop notifications</source>
|
||||
<translation>ცნობების ჩვენება სამუშაო მაგიდაზე</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="174"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="197"/>
|
||||
<source>Show tray icon</source>
|
||||
<translation>ხატულის ჩვენება სისტემურ პანელზე</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="178"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="201"/>
|
||||
<source>Show the systemtray icon</source>
|
||||
<translation>ხატულის ჩვენება სისტემურ პანელზე</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="189"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<source>Configuration File</source>
|
||||
<translation>პარამეტრების ფაილი</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="194"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="220"/>
|
||||
<source>Export</source>
|
||||
<translation>ექსპორტირება</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="204"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="234"/>
|
||||
<source>Reset</source>
|
||||
<translation>განულება</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="211"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="244"/>
|
||||
<source>Launch at startup</source>
|
||||
<translation>გაშვება სისტემის ჩატვირთვისას</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="262"/>
|
||||
<source>Launch Flameshot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="223"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="258"/>
|
||||
<source>Show welcome message on launch</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="236"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="273"/>
|
||||
<source>Close application after capture</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="240"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="277"/>
|
||||
<source>Close after taking a screenshot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="289"/>
|
||||
<source>Copy URL after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="251"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="294"/>
|
||||
<source>Copy URL and close window after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="260"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="263"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="304"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="307"/>
|
||||
<source>Copy file path after save</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="316"/>
|
||||
<source>Upload storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="320"/>
|
||||
<source>Imgur storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="327"/>
|
||||
<source>S3 storage (require config.ini file with s3 credentials)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>HistoryWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="26"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="30"/>
|
||||
<source>Latest Uploads</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="63"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="68"/>
|
||||
<source>Screenshots history is empty</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="109"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="118"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">URL-ის კოპირება</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="113"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="122"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL დაკოპირდა გაცვლის ბუფერში.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="119"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="128"/>
|
||||
<source>Open in browser</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
@@ -484,164 +494,199 @@ Press Space to open the side panel.</source>
|
||||
<context>
|
||||
<name>ImgS3Uploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">სურათის ატვირთვა</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Delete image from S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="244"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="226"/>
|
||||
<source>Unable to remove screenshot from the remote storage.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="246"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="228"/>
|
||||
<source>Network error</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="249"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="230"/>
|
||||
<source>Possibly it doesn't exist anymore</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="252"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="235"/>
|
||||
<source>Do you want to remove screenshot from local history anyway?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="282"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="256"/>
|
||||
<source>S3 Creds URL is not found in your configuration file</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="406"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">URL-ის კოპირება</translation>
|
||||
<translation type="obsolete">URL-ის კოპირება</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="407"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">URL-ის გახსნა</translation>
|
||||
<translation type="obsolete">URL-ის გახსნა</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="408"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="409"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">სურათის გაცვლის ბუფერში გაგზავნა</translation>
|
||||
<translation type="obsolete">სურათის გაცვლის ბუფერში გაგზავნა</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="428"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">URL-ის გახსნა ვერ მოხერხდა.</translation>
|
||||
<translation type="obsolete">URL-ის გახსნა ვერ მოხერხდა.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="209"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="434"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="202"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL დაკოპირდა გაცვლის ბუფერში.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="447"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="255"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="239"/>
|
||||
<source>Remove screenshot from history?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="439"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">სურათი დაკოპირდა გაცვლის ბუფერში.</translation>
|
||||
<translation type="obsolete">სურათი დაკოპირდა გაცვლის ბუფერში.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgS3UploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="38"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation type="unfinished">სურათის ამტვირთველი</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="46"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to S3 bucket</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<name>ImgUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="47"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>Imgur-ზე ატვირთვა</translation>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="54"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation>სურათის ატვირთვა</translation>
|
||||
<translation type="unfinished">სურათის ატვირთვა</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="140"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Upload image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="92"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">URL-ის გახსნა ვერ მოხერხდა.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="99"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL დაკოპირდა გაცვლის ბუფერში.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="105"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">სურათი დაკოპირდა გაცვლის ბუფერში.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="114"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="174"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>URL-ის კოპირება</translation>
|
||||
<translation type="unfinished">URL-ის კოპირება</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="141"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="175"/>
|
||||
<source>Open URL</source>
|
||||
<translation>URL-ის გახსნა</translation>
|
||||
<translation type="unfinished">URL-ის გახსნა</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="142"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="176"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="143"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="177"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>სურათის გაცვლის ბუფერში გაგზავნა</translation>
|
||||
<translation type="unfinished">სურათის გაცვლის ბუფერში გაგზავნა</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="48"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>Imgur-ზე ატვირთვა</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="162"/>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="175"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="vanished">სურათის ატვირთვა</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL</source>
|
||||
<translation type="vanished">URL-ის კოპირება</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open URL</source>
|
||||
<translation type="vanished">URL-ის გახსნა</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="vanished">სურათის გაცვლის ბუფერში გაგზავნა</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="127"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>URL-ის გახსნა ვერ მოხერხდა.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="168"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>URL დაკოპირდა გაცვლის ბუფერში.</translation>
|
||||
<translation type="vanished">URL დაკოპირდა გაცვლის ბუფერში.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="181"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation>სურათი დაკოპირდა გაცვლის ბუფერში.</translation>
|
||||
<translation type="vanished">სურათი დაკოპირდა გაცვლის ბუფერში.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="35"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation>სურათის ამტვირთველი</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="43"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to Imgur</source>
|
||||
<translation>შერჩეულის Imgur-ზე ატვირთვა</translation>
|
||||
</message>
|
||||
@@ -839,7 +884,7 @@ Press Space to open the side panel.</source>
|
||||
<translation type="unfinished">შემდეგ მისამართზე ჩაწერა ვერ მოხერხდა:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="82"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="88"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL დაკოპირდა გაცვლის ბუფერში.</translation>
|
||||
</message>
|
||||
|
||||
@@ -125,12 +125,12 @@
|
||||
<context>
|
||||
<name>CaptureWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="83"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="99"/>
|
||||
<source>Unable to capture screen</source>
|
||||
<translation>Kan scherm niet vastleggen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="258"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="284"/>
|
||||
<source>Select an area with the mouse, or press Esc to exit.
|
||||
Press Enter to capture the screen.
|
||||
Press Right Click to show the color picker.
|
||||
@@ -159,32 +159,27 @@ Druk op spatie om het zijpaneel te openen.</translation>
|
||||
<context>
|
||||
<name>ConfigWindow</name>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="42"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="45"/>
|
||||
<source>Configuration</source>
|
||||
<translation>Configuratie</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="64"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="66"/>
|
||||
<source>Interface</source>
|
||||
<translation>Uiterlijk</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="69"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="72"/>
|
||||
<source>Filename Editor</source>
|
||||
<translation>Bestandsnaambewerker</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="79"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="80"/>
|
||||
<source>Shortcuts</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="84"/>
|
||||
<source>Path Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="74"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="76"/>
|
||||
<source>General</source>
|
||||
<translation>Algemeen</translation>
|
||||
</message>
|
||||
@@ -335,152 +330,167 @@ Druk op spatie om het zijpaneel te openen.</translation>
|
||||
<context>
|
||||
<name>GeneneralConf</name>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="93"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="199"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<source>Import</source>
|
||||
<translation>Importeren</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Error</source>
|
||||
<translation>Fout</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<source>Unable to read file.</source>
|
||||
<translation>Kan bestand niet uitlezen.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Unable to write file.</source>
|
||||
<translation>Kan bestand niet wegschrijven.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="116"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="133"/>
|
||||
<source>Save File</source>
|
||||
<translation>Bestand opslaan</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="137"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="155"/>
|
||||
<source>Confirm Reset</source>
|
||||
<translation>Herstellen bevestigen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="138"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="156"/>
|
||||
<source>Are you sure you want to reset the configuration?</source>
|
||||
<translation>Weet je zeker dat je de standwaardwaarden van de configuratie wilt herstellen?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="147"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<source>Show help message</source>
|
||||
<translation>Uitleg tonen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="151"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="169"/>
|
||||
<source>Show the help message at the beginning in the capture mode.</source>
|
||||
<translation>Toont een bericht met uitleg bij het openen van de vastlegmodus.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="161"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="181"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="185"/>
|
||||
<source>Show desktop notifications</source>
|
||||
<translation>Bureaubladmeldingen tonen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="174"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="197"/>
|
||||
<source>Show tray icon</source>
|
||||
<translation>Systeemvakpictogram tonen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="178"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="201"/>
|
||||
<source>Show the systemtray icon</source>
|
||||
<translation>Toont het systeemvakpictogram</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="189"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<source>Configuration File</source>
|
||||
<translation>Configuratiebestand</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="194"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="220"/>
|
||||
<source>Export</source>
|
||||
<translation>Exporteren</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="204"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="234"/>
|
||||
<source>Reset</source>
|
||||
<translation>Standaardwaarden</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="211"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="244"/>
|
||||
<source>Launch at startup</source>
|
||||
<translation>Automatisch opstarten</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="262"/>
|
||||
<source>Launch Flameshot</source>
|
||||
<translation>Flameshot openen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="223"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="258"/>
|
||||
<source>Show welcome message on launch</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="236"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="273"/>
|
||||
<source>Close application after capture</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="240"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="277"/>
|
||||
<source>Close after taking a screenshot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="289"/>
|
||||
<source>Copy URL after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="251"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="294"/>
|
||||
<source>Copy URL and close window after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="260"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="263"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="304"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="307"/>
|
||||
<source>Copy file path after save</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="316"/>
|
||||
<source>Upload storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="320"/>
|
||||
<source>Imgur storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="327"/>
|
||||
<source>S3 storage (require config.ini file with s3 credentials)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>HistoryWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="26"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="30"/>
|
||||
<source>Latest Uploads</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="63"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="68"/>
|
||||
<source>Screenshots history is empty</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="109"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="118"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">URL kopiëren</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="113"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="122"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL gekopieerd naar klembord.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="119"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="128"/>
|
||||
<source>Open in browser</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
@@ -488,164 +498,207 @@ Druk op spatie om het zijpaneel te openen.</translation>
|
||||
<context>
|
||||
<name>ImgS3Uploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">Bezig met uploaden van afbeelding...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Delete image from S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="244"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="226"/>
|
||||
<source>Unable to remove screenshot from the remote storage.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="246"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="228"/>
|
||||
<source>Network error</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="249"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="230"/>
|
||||
<source>Possibly it doesn't exist anymore</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="252"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="235"/>
|
||||
<source>Do you want to remove screenshot from local history anyway?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="282"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="256"/>
|
||||
<source>S3 Creds URL is not found in your configuration file</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="406"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">URL kopiëren</translation>
|
||||
<translation type="obsolete">URL kopiëren</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="407"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">URL openen</translation>
|
||||
<translation type="obsolete">URL openen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="408"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">Afbeelding verwijderen</translation>
|
||||
<translation type="obsolete">Afbeelding verwijderen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="409"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Afbeelding naar klembord.</translation>
|
||||
<translation type="obsolete">Afbeelding naar klembord.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="428"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">Kan URL niet openen.</translation>
|
||||
<translation type="obsolete">Kan URL niet openen.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="209"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="434"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="202"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL gekopieerd naar klembord.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="447"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="255"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="239"/>
|
||||
<source>Remove screenshot from history?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="439"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Schermafdruk gekopieerd naar klembord.</translation>
|
||||
<translation type="obsolete">Schermafdruk gekopieerd naar klembord.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgS3UploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="38"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation type="unfinished">Afbeeldingsuploader</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="46"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to S3 bucket</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">Bezig met uploaden van afbeelding...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Upload image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="92"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">Kan URL niet openen.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="99"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL gekopieerd naar klembord.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="105"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Schermafdruk gekopieerd naar klembord.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="114"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="174"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">URL kopiëren</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="175"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">URL openen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="176"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">Afbeelding verwijderen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="177"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Afbeelding naar klembord.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="47"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="48"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>Uploaden naar Imgur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation>Bezig met uploaden van afbeelding...</translation>
|
||||
<translation type="vanished">Bezig met uploaden van afbeelding...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="140"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>URL kopiëren</translation>
|
||||
<translation type="vanished">URL kopiëren</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="141"/>
|
||||
<source>Open URL</source>
|
||||
<translation>URL openen</translation>
|
||||
<translation type="vanished">URL openen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="142"/>
|
||||
<source>Delete image</source>
|
||||
<translation>Afbeelding verwijderen</translation>
|
||||
<translation type="vanished">Afbeelding verwijderen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="143"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>Afbeelding naar klembord.</translation>
|
||||
<translation type="vanished">Afbeelding naar klembord.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="162"/>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="175"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="127"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>Kan URL niet openen.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="168"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>URL gekopieerd naar klembord.</translation>
|
||||
<translation type="vanished">URL gekopieerd naar klembord.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="181"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation>Schermafdruk gekopieerd naar klembord.</translation>
|
||||
<translation type="vanished">Schermafdruk gekopieerd naar klembord.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="35"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation>Afbeeldingsuploader</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="43"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to Imgur</source>
|
||||
<translation>Upload de selectie naar Imgur</translation>
|
||||
</message>
|
||||
@@ -847,7 +900,7 @@ Druk op spatie om het zijpaneel te openen.</translation>
|
||||
<translation>Kan niet wegschrijven naar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="82"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="88"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL gekopieerd naar klembord.</translation>
|
||||
</message>
|
||||
|
||||
@@ -125,12 +125,12 @@
|
||||
<context>
|
||||
<name>CaptureWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="83"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="99"/>
|
||||
<source>Unable to capture screen</source>
|
||||
<translation>Nie można przechwycić ekranu</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="258"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="284"/>
|
||||
<source>Select an area with the mouse, or press Esc to exit.
|
||||
Press Enter to capture the screen.
|
||||
Press Right Click to show the color picker.
|
||||
@@ -158,32 +158,27 @@ Spacja, aby pokazać panel boczny.</translation>
|
||||
<context>
|
||||
<name>ConfigWindow</name>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="42"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="45"/>
|
||||
<source>Configuration</source>
|
||||
<translation>Konfiguracja</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="64"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="66"/>
|
||||
<source>Interface</source>
|
||||
<translation>Interfejs</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="69"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="72"/>
|
||||
<source>Filename Editor</source>
|
||||
<translation>Edytor nazw plików</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="79"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="80"/>
|
||||
<source>Shortcuts</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="84"/>
|
||||
<source>Path Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="74"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="76"/>
|
||||
<source>General</source>
|
||||
<translation>Ogólne</translation>
|
||||
</message>
|
||||
@@ -334,152 +329,167 @@ Spacja, aby pokazać panel boczny.</translation>
|
||||
<context>
|
||||
<name>GeneneralConf</name>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="93"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="199"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<source>Import</source>
|
||||
<translation>Import</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Error</source>
|
||||
<translation>Błąd</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<source>Unable to read file.</source>
|
||||
<translation>Nie można odczytać pliku.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Unable to write file.</source>
|
||||
<translation>Nie można zapisać pliku.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="116"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="133"/>
|
||||
<source>Save File</source>
|
||||
<translation>Zapisz plik</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="137"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="155"/>
|
||||
<source>Confirm Reset</source>
|
||||
<translation>Potwierdź Reset</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="138"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="156"/>
|
||||
<source>Are you sure you want to reset the configuration?</source>
|
||||
<translation>Czy na pewno chcesz zresetować konfigurację?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="147"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<source>Show help message</source>
|
||||
<translation>Pokaż podpowiedzi</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="151"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="169"/>
|
||||
<source>Show the help message at the beginning in the capture mode.</source>
|
||||
<translation>Pokaż podpowiedzi na początku trybu przechwytywania.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="161"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="181"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="185"/>
|
||||
<source>Show desktop notifications</source>
|
||||
<translation>Pokaż powiadomienia ekranowe</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="174"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="197"/>
|
||||
<source>Show tray icon</source>
|
||||
<translation>Pokaż ikonę w trayu</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="178"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="201"/>
|
||||
<source>Show the systemtray icon</source>
|
||||
<translation>Pokaż ikonę w zasobniku systemowym</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="189"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<source>Configuration File</source>
|
||||
<translation>Plik konfiguracyjny</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="194"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="220"/>
|
||||
<source>Export</source>
|
||||
<translation>Export</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="204"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="234"/>
|
||||
<source>Reset</source>
|
||||
<translation>Reset</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="211"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="244"/>
|
||||
<source>Launch at startup</source>
|
||||
<translation>Uruchom podczas startu</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="262"/>
|
||||
<source>Launch Flameshot</source>
|
||||
<translation>Uruchom Flameshot</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="223"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="258"/>
|
||||
<source>Show welcome message on launch</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="236"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="273"/>
|
||||
<source>Close application after capture</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="240"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="277"/>
|
||||
<source>Close after taking a screenshot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="289"/>
|
||||
<source>Copy URL after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="251"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="294"/>
|
||||
<source>Copy URL and close window after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="260"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="263"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="304"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="307"/>
|
||||
<source>Copy file path after save</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="316"/>
|
||||
<source>Upload storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="320"/>
|
||||
<source>Imgur storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="327"/>
|
||||
<source>S3 storage (require config.ini file with s3 credentials)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>HistoryWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="26"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="30"/>
|
||||
<source>Latest Uploads</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="63"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="68"/>
|
||||
<source>Screenshots history is empty</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="109"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="118"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Kopiuj URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="113"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="122"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL skopiowany do schowka.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="119"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="128"/>
|
||||
<source>Open in browser</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
@@ -487,164 +497,207 @@ Spacja, aby pokazać panel boczny.</translation>
|
||||
<context>
|
||||
<name>ImgS3Uploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">Wysyłanie obrazka</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Delete image from S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="244"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="226"/>
|
||||
<source>Unable to remove screenshot from the remote storage.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="246"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="228"/>
|
||||
<source>Network error</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="249"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="230"/>
|
||||
<source>Possibly it doesn't exist anymore</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="252"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="235"/>
|
||||
<source>Do you want to remove screenshot from local history anyway?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="282"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="256"/>
|
||||
<source>S3 Creds URL is not found in your configuration file</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="406"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Kopiuj URL</translation>
|
||||
<translation type="obsolete">Kopiuj URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="407"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">Otwórz URL</translation>
|
||||
<translation type="obsolete">Otwórz URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="408"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">Usuń obrazek</translation>
|
||||
<translation type="obsolete">Usuń obrazek</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="409"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Obrazek do schowka.</translation>
|
||||
<translation type="obsolete">Obrazek do schowka.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="428"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">Nie można otworzyć adresu URL.</translation>
|
||||
<translation type="obsolete">Nie można otworzyć adresu URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="209"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="434"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="202"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL skopiowany do schowka.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="447"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="255"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="239"/>
|
||||
<source>Remove screenshot from history?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="439"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Zrzut ekranu skopiowany do schowka.</translation>
|
||||
<translation type="obsolete">Zrzut ekranu skopiowany do schowka.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgS3UploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="38"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation type="unfinished">Uploader obrazów</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="46"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to S3 bucket</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">Wysyłanie obrazka</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Upload image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="92"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">Nie można otworzyć adresu URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="99"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL skopiowany do schowka.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="105"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Zrzut ekranu skopiowany do schowka.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="114"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="174"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Kopiuj URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="175"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">Otwórz URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="176"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">Usuń obrazek</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="177"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Obrazek do schowka.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="47"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="48"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>Wyślij do Imgur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation>Wysyłanie obrazka</translation>
|
||||
<translation type="vanished">Wysyłanie obrazka</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="140"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>Kopiuj URL</translation>
|
||||
<translation type="vanished">Kopiuj URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="141"/>
|
||||
<source>Open URL</source>
|
||||
<translation>Otwórz URL</translation>
|
||||
<translation type="vanished">Otwórz URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="142"/>
|
||||
<source>Delete image</source>
|
||||
<translation>Usuń obrazek</translation>
|
||||
<translation type="vanished">Usuń obrazek</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="143"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>Obrazek do schowka.</translation>
|
||||
<translation type="vanished">Obrazek do schowka.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="162"/>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="175"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="127"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>Nie można otworzyć adresu URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="168"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>URL skopiowany do schowka.</translation>
|
||||
<translation type="vanished">URL skopiowany do schowka.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="181"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation>Zrzut ekranu skopiowany do schowka.</translation>
|
||||
<translation type="vanished">Zrzut ekranu skopiowany do schowka.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="35"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation>Uploader obrazów</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="43"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to Imgur</source>
|
||||
<translation>Wyślij zaznaczenie do Imgur</translation>
|
||||
</message>
|
||||
@@ -842,7 +895,7 @@ Spacja, aby pokazać panel boczny.</translation>
|
||||
<translation>Nie można zapisać w</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="82"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="88"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL skopiowany do schowka.</translation>
|
||||
</message>
|
||||
|
||||
@@ -125,12 +125,12 @@
|
||||
<context>
|
||||
<name>CaptureWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="83"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="99"/>
|
||||
<source>Unable to capture screen</source>
|
||||
<translation>Não foi possível capturar a tela</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="258"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="284"/>
|
||||
<source>Select an area with the mouse, or press Esc to exit.
|
||||
Press Enter to capture the screen.
|
||||
Press Right Click to show the color picker.
|
||||
@@ -159,32 +159,27 @@ Pressione espaço abrir o painel lateral.</translation>
|
||||
<context>
|
||||
<name>ConfigWindow</name>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="42"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="45"/>
|
||||
<source>Configuration</source>
|
||||
<translation>Configuração</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="64"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="66"/>
|
||||
<source>Interface</source>
|
||||
<translation>Interface</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="69"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="72"/>
|
||||
<source>Filename Editor</source>
|
||||
<translation>Editor de nome de arquivo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="79"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="80"/>
|
||||
<source>Shortcuts</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="84"/>
|
||||
<source>Path Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="74"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="76"/>
|
||||
<source>General</source>
|
||||
<translation>Geral</translation>
|
||||
</message>
|
||||
@@ -335,152 +330,167 @@ Pressione espaço abrir o painel lateral.</translation>
|
||||
<context>
|
||||
<name>GeneneralConf</name>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="93"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="199"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<source>Import</source>
|
||||
<translation>Importar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Error</source>
|
||||
<translation>Erro</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<source>Unable to read file.</source>
|
||||
<translation>Não foi possível ler o arquivo.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Unable to write file.</source>
|
||||
<translation>Não foi possível escrever no arquivo.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="116"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="133"/>
|
||||
<source>Save File</source>
|
||||
<translation>Salvar Arquivo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="137"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="155"/>
|
||||
<source>Confirm Reset</source>
|
||||
<translation>Confirmar Reset</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="138"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="156"/>
|
||||
<source>Are you sure you want to reset the configuration?</source>
|
||||
<translation>Tem certeza que deseja resetar a configuração?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="147"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<source>Show help message</source>
|
||||
<translation>Mostrar mensagem de ajuda</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="151"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="169"/>
|
||||
<source>Show the help message at the beginning in the capture mode.</source>
|
||||
<translation>Mostrar mensagem de ajuda no início do modo de captura.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="161"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="181"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="185"/>
|
||||
<source>Show desktop notifications</source>
|
||||
<translation>Mostrar notificações de Desktop</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="174"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="197"/>
|
||||
<source>Show tray icon</source>
|
||||
<translation>Mostrar ícone de tray</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="178"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="201"/>
|
||||
<source>Show the systemtray icon</source>
|
||||
<translation>Mosrar ícone na barra de aplicações</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="189"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<source>Configuration File</source>
|
||||
<translation>Arquivo de Configurações</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="194"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="220"/>
|
||||
<source>Export</source>
|
||||
<translation>Exportar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="204"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="234"/>
|
||||
<source>Reset</source>
|
||||
<translation>Reset</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="211"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="244"/>
|
||||
<source>Launch at startup</source>
|
||||
<translation>Iniciar junto com o sistema</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="262"/>
|
||||
<source>Launch Flameshot</source>
|
||||
<translation>Iniciar Flameshot</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="223"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="258"/>
|
||||
<source>Show welcome message on launch</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="236"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="273"/>
|
||||
<source>Close application after capture</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="240"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="277"/>
|
||||
<source>Close after taking a screenshot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="289"/>
|
||||
<source>Copy URL after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="251"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="294"/>
|
||||
<source>Copy URL and close window after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="260"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="263"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="304"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="307"/>
|
||||
<source>Copy file path after save</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="316"/>
|
||||
<source>Upload storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="320"/>
|
||||
<source>Imgur storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="327"/>
|
||||
<source>S3 storage (require config.ini file with s3 credentials)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>HistoryWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="26"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="30"/>
|
||||
<source>Latest Uploads</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="63"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="68"/>
|
||||
<source>Screenshots history is empty</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="109"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="118"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Copiar URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="113"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="122"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL copiada para o clipboard.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="119"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="128"/>
|
||||
<source>Open in browser</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
@@ -488,164 +498,207 @@ Pressione espaço abrir o painel lateral.</translation>
|
||||
<context>
|
||||
<name>ImgS3Uploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">Upando Imagem</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Delete image from S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="244"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="226"/>
|
||||
<source>Unable to remove screenshot from the remote storage.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="246"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="228"/>
|
||||
<source>Network error</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="249"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="230"/>
|
||||
<source>Possibly it doesn't exist anymore</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="252"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="235"/>
|
||||
<source>Do you want to remove screenshot from local history anyway?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="282"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="256"/>
|
||||
<source>S3 Creds URL is not found in your configuration file</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="406"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Copiar URL</translation>
|
||||
<translation type="obsolete">Copiar URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="407"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">Abrir URL</translation>
|
||||
<translation type="obsolete">Abrir URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="408"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">Deletar imagem</translation>
|
||||
<translation type="obsolete">Deletar imagem</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="409"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Imagem no Clipboard.</translation>
|
||||
<translation type="obsolete">Imagem no Clipboard.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="428"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">Não foi possível abrir a URL.</translation>
|
||||
<translation type="obsolete">Não foi possível abrir a URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="209"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="434"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="202"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL copiada para o clipboard.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="447"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="255"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="239"/>
|
||||
<source>Remove screenshot from history?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="439"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Screenshot copiada para o clipboard.</translation>
|
||||
<translation type="obsolete">Screenshot copiada para o clipboard.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgS3UploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="38"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation type="unfinished">Uploader de imagens</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="46"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to S3 bucket</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">Upando Imagem</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Upload image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="92"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">Não foi possível abrir a URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="99"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL copiada para o clipboard.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="105"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Screenshot copiada para o clipboard.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="114"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="174"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Copiar URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="175"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">Abrir URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="176"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">Deletar imagem</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="177"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Imagem no Clipboard.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="47"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="48"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>Upload no Imgur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation>Upando Imagem</translation>
|
||||
<translation type="vanished">Upando Imagem</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="140"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>Copiar URL</translation>
|
||||
<translation type="vanished">Copiar URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="141"/>
|
||||
<source>Open URL</source>
|
||||
<translation>Abrir URL</translation>
|
||||
<translation type="vanished">Abrir URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="142"/>
|
||||
<source>Delete image</source>
|
||||
<translation>Deletar imagem</translation>
|
||||
<translation type="vanished">Deletar imagem</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="143"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>Imagem no Clipboard.</translation>
|
||||
<translation type="vanished">Imagem no Clipboard.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="162"/>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="175"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="127"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>Não foi possível abrir a URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="168"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>URL copiada para o clipboard.</translation>
|
||||
<translation type="vanished">URL copiada para o clipboard.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="181"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation>Screenshot copiada para o clipboard.</translation>
|
||||
<translation type="vanished">Screenshot copiada para o clipboard.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="35"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation>Uploader de imagens</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="43"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to Imgur</source>
|
||||
<translation>Upa a seleção no Imgur</translation>
|
||||
</message>
|
||||
@@ -843,7 +896,7 @@ Pressione espaço abrir o painel lateral.</translation>
|
||||
<translation>Não foi possível escrever em</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="82"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="88"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL copiada para o clipboard.</translation>
|
||||
</message>
|
||||
|
||||
@@ -125,12 +125,12 @@
|
||||
<context>
|
||||
<name>CaptureWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="83"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="99"/>
|
||||
<source>Unable to capture screen</source>
|
||||
<translation>Не удалось захватить экран</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="258"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="284"/>
|
||||
<source>Select an area with the mouse, or press Esc to exit.
|
||||
Press Enter to capture the screen.
|
||||
Press Right Click to show the color picker.
|
||||
@@ -159,32 +159,31 @@ Press Space to open the side panel.</source>
|
||||
<context>
|
||||
<name>ConfigWindow</name>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="42"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="45"/>
|
||||
<source>Configuration</source>
|
||||
<translation>Настройка</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="64"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="66"/>
|
||||
<source>Interface</source>
|
||||
<translation>Интерфейс</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="69"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="72"/>
|
||||
<source>Filename Editor</source>
|
||||
<translation>Редактор имен файлов</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="79"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="80"/>
|
||||
<source>Shortcuts</source>
|
||||
<translation>Горячие клавиши</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="84"/>
|
||||
<source>Path Default</source>
|
||||
<translation>Путь</translation>
|
||||
<translation type="vanished">Путь</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="74"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="76"/>
|
||||
<source>General</source>
|
||||
<translation>Общие</translation>
|
||||
</message>
|
||||
@@ -343,127 +342,142 @@ Press Space to open the side panel.</source>
|
||||
<context>
|
||||
<name>GeneneralConf</name>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="93"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="199"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<source>Import</source>
|
||||
<translation>Импорт</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Error</source>
|
||||
<translation>Ошибка</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<source>Unable to read file.</source>
|
||||
<translation>Не удалось прочитать файл.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Unable to write file.</source>
|
||||
<translation>Не удалось записать файл.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="116"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="133"/>
|
||||
<source>Save File</source>
|
||||
<translation>Сохранить файл</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="137"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="155"/>
|
||||
<source>Confirm Reset</source>
|
||||
<translation>Подтвердить сброс</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="138"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="156"/>
|
||||
<source>Are you sure you want to reset the configuration?</source>
|
||||
<translation>Вы действительно хотите сбросить настройки?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="147"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<source>Show help message</source>
|
||||
<translation>Показывать справочное сообщение</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="151"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="169"/>
|
||||
<source>Show the help message at the beginning in the capture mode.</source>
|
||||
<translation>Показывать справочное сообщение перед началом захвата экрана.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="161"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="181"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="185"/>
|
||||
<source>Show desktop notifications</source>
|
||||
<translation>Показывать уведомления</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="174"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="197"/>
|
||||
<source>Show tray icon</source>
|
||||
<translation>Показывать значок в трее</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="178"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="201"/>
|
||||
<source>Show the systemtray icon</source>
|
||||
<translation>Показать значок в системном трее</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="189"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<source>Configuration File</source>
|
||||
<translation>Файл конфигурации</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="194"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="220"/>
|
||||
<source>Export</source>
|
||||
<translation>Экспорт</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="204"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="234"/>
|
||||
<source>Reset</source>
|
||||
<translation>Сброс</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="211"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="244"/>
|
||||
<source>Launch at startup</source>
|
||||
<translation>Запускать при старте системы</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="262"/>
|
||||
<source>Launch Flameshot</source>
|
||||
<translation>Запустить Flameshot</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="223"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="258"/>
|
||||
<source>Show welcome message on launch</source>
|
||||
<translation>Показывать приветствие при запуске</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="236"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="273"/>
|
||||
<source>Close application after capture</source>
|
||||
<translation>Закрыть приложение после захвата</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="240"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="277"/>
|
||||
<source>Close after taking a screenshot</source>
|
||||
<translation>Закрыть после получения скриншота</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="289"/>
|
||||
<source>Copy URL after upload</source>
|
||||
<translation>Скопировать URL после загрузки</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="251"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="294"/>
|
||||
<source>Copy URL and close window after upload</source>
|
||||
<translation>Скопировать URL после загрузки и закрыть окно</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="260"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="263"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="304"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="307"/>
|
||||
<source>Copy file path after save</source>
|
||||
<translation>Копировать путь к сохраненному файлу</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="316"/>
|
||||
<source>Upload storage</source>
|
||||
<translation>Хранилище скриншотов</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="320"/>
|
||||
<source>Imgur storage</source>
|
||||
<translation>Хранилище Imgur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="327"/>
|
||||
<source>S3 storage (require config.ini file with s3 credentials)</source>
|
||||
<translation>Хранилище S3 (необходим файл config.ini с параметрами доступа)</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>HistoryWidget</name>
|
||||
@@ -476,27 +490,27 @@ Press Space to open the side panel.</source>
|
||||
<translation type="vanished">История скриншотов пустая</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="26"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="30"/>
|
||||
<source>Latest Uploads</source>
|
||||
<translation>Последние загрузки</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="63"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="68"/>
|
||||
<source>Screenshots history is empty</source>
|
||||
<translation>История скриншотов пуста</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="109"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="118"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>Скопировать URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="113"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="122"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>URL скопирован в буфер обмена.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="119"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="128"/>
|
||||
<source>Open in browser</source>
|
||||
<translation>Открыть в браузере</translation>
|
||||
</message>
|
||||
@@ -508,17 +522,17 @@ Press Space to open the side panel.</source>
|
||||
<translation type="vanished">Загрузить на S3</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation>Загрузка изображения</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation>Загрузить на S3</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Delete image from S3</source>
|
||||
<translation>Удалить скриншот с S3</translation>
|
||||
</message>
|
||||
@@ -527,87 +541,79 @@ Press Space to open the side panel.</source>
|
||||
<translation type="vanished">Удалить скриншот</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="255"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="239"/>
|
||||
<source>Remove screenshot from history?</source>
|
||||
<translation>Удалить скриншот из истории?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="282"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="256"/>
|
||||
<source>S3 Creds URL is not found in your configuration file</source>
|
||||
<translation>Параметры доступов к S3 не найдены в конфигурационном файле</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="406"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>Скопировать URL</translation>
|
||||
<translation type="vanished">Скопировать URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="407"/>
|
||||
<source>Open URL</source>
|
||||
<translation>Открыть URL</translation>
|
||||
<translation type="vanished">Открыть URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="408"/>
|
||||
<source>Delete image</source>
|
||||
<translation>Удалить изображение</translation>
|
||||
<translation type="vanished">Удалить изображение</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="409"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>Изображение в буфер обмена.</translation>
|
||||
<translation type="vanished">Изображение в буфер обмена.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="428"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>Не удалось открыть URL.</translation>
|
||||
<translation type="vanished">Не удалось открыть URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="209"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="434"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="202"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>URL скопирован в буфер обмена.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="447"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation>Удаление скриншота...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="244"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="226"/>
|
||||
<source>Unable to remove screenshot from the remote storage.</source>
|
||||
<translation>Невозможно удалить снимок экрана из удаленного хранилища.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="246"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="228"/>
|
||||
<source>Network error</source>
|
||||
<translation>Ошибка сети</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="249"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="230"/>
|
||||
<source>Possibly it doesn't exist anymore</source>
|
||||
<translation>Возможно, его больше не существует</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="252"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="235"/>
|
||||
<source>Do you want to remove screenshot from local history anyway?</source>
|
||||
<translation>Вы все равно хотите удалить скриншот из локальной истории?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="439"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation>Снимок скопирован в буфер обмена.</translation>
|
||||
<translation type="vanished">Снимок скопирован в буфер обмена.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgS3UploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="38"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation>Отправка изображений</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="46"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to S3 bucket</source>
|
||||
<translation>Загрузить выделение на S3</translation>
|
||||
</message>
|
||||
@@ -617,63 +623,114 @@ Press Space to open the side panel.</source>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<name>ImgUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="47"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>Загрузить в Imgur</translation>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation>Загрузить на S3</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="54"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation>Загрузка изображения</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="140"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>Скопировать URL</translation>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Upload image</source>
|
||||
<translation>Загрузить изображение</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="141"/>
|
||||
<source>Open URL</source>
|
||||
<translation>Открыть URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="142"/>
|
||||
<source>Delete image</source>
|
||||
<translation>Удалить изображение</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="143"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>Изображение в буфер обмена.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="162"/>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="175"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="92"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>Не удалось открыть URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="168"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="99"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>URL скопирован в буфер обмена.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="181"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="105"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation>Снимок скопирован в буфер обмена.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="114"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation>Удаление скриншота...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="174"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>Скопировать URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="175"/>
|
||||
<source>Open URL</source>
|
||||
<translation>Открыть URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="176"/>
|
||||
<source>Delete image</source>
|
||||
<translation>Удалить изображение</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="177"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>Изображение в буфер обмена.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="48"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>Загрузить в Imgur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="vanished">Загрузка изображения</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL</source>
|
||||
<translation type="vanished">Скопировать URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open URL</source>
|
||||
<translation type="vanished">Открыть URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete image</source>
|
||||
<translation type="vanished">Удалить изображение</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="vanished">Изображение в буфер обмена.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="127"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>Не удалось открыть URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="vanished">URL скопирован в буфер обмена.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="vanished">Снимок скопирован в буфер обмена.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="35"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation>Отправка изображений</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="43"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to Imgur</source>
|
||||
<translation>Загрузить выделение на Imgur</translation>
|
||||
</message>
|
||||
@@ -887,7 +944,7 @@ Press Space to open the side panel.</source>
|
||||
<translation>Не удалось сохранить</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="82"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="88"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>URL скопирован в буфер обмена.</translation>
|
||||
</message>
|
||||
|
||||
@@ -125,12 +125,12 @@
|
||||
<context>
|
||||
<name>CaptureWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="83"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="99"/>
|
||||
<source>Unable to capture screen</source>
|
||||
<translation>Nepodarilo sa zachytiť obrazovku</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="258"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="284"/>
|
||||
<source>Select an area with the mouse, or press Esc to exit.
|
||||
Press Enter to capture the screen.
|
||||
Press Right Click to show the color picker.
|
||||
@@ -159,32 +159,27 @@ Stlačte medzerník pre otvorenie postranného panelu.</translation>
|
||||
<context>
|
||||
<name>ConfigWindow</name>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="42"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="45"/>
|
||||
<source>Configuration</source>
|
||||
<translation>Konfigurácia</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="64"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="66"/>
|
||||
<source>Interface</source>
|
||||
<translation>Interfejs</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="69"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="72"/>
|
||||
<source>Filename Editor</source>
|
||||
<translation>Editor názvov súborov</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="79"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="80"/>
|
||||
<source>Shortcuts</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="84"/>
|
||||
<source>Path Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="74"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="76"/>
|
||||
<source>General</source>
|
||||
<translation>Všeobecné</translation>
|
||||
</message>
|
||||
@@ -335,152 +330,167 @@ Stlačte medzerník pre otvorenie postranného panelu.</translation>
|
||||
<context>
|
||||
<name>GeneneralConf</name>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="93"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="199"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<source>Import</source>
|
||||
<translation>Importovať</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Error</source>
|
||||
<translation>Chyba</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<source>Unable to read file.</source>
|
||||
<translation>Zlyhalo čítanie súboru.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Unable to write file.</source>
|
||||
<translation>Zlyhal zápis do súboru.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="116"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="133"/>
|
||||
<source>Save File</source>
|
||||
<translation>Uložiť súbor</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="137"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="155"/>
|
||||
<source>Confirm Reset</source>
|
||||
<translation>Potvrdiť Reset</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="138"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="156"/>
|
||||
<source>Are you sure you want to reset the configuration?</source>
|
||||
<translation>Naozaj si želáte resetovať aktuálnu konfiguráciu?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="147"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<source>Show help message</source>
|
||||
<translation>Zobraziť nápovedu</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="151"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="169"/>
|
||||
<source>Show the help message at the beginning in the capture mode.</source>
|
||||
<translation>Zobraziť nápovedu na začiatku počas režimu zachytávania obrazovky.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="161"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="181"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="185"/>
|
||||
<source>Show desktop notifications</source>
|
||||
<translation>Zobraziť systémové upozornenia</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="174"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="197"/>
|
||||
<source>Show tray icon</source>
|
||||
<translation>Zobraziť stavovú ikonu</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="178"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="201"/>
|
||||
<source>Show the systemtray icon</source>
|
||||
<translation>Zobraziť ikonu v stavovej oblasti</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="189"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<source>Configuration File</source>
|
||||
<translation>Súbor s konfiguráciou</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="194"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="220"/>
|
||||
<source>Export</source>
|
||||
<translation>Exportovať</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="204"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="234"/>
|
||||
<source>Reset</source>
|
||||
<translation>Resetovať</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="211"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="244"/>
|
||||
<source>Launch at startup</source>
|
||||
<translation>Spúšťať pri štarte</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="262"/>
|
||||
<source>Launch Flameshot</source>
|
||||
<translation>Spustiť Flameshot</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="223"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="258"/>
|
||||
<source>Show welcome message on launch</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="236"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="273"/>
|
||||
<source>Close application after capture</source>
|
||||
<translation>Zavrieť po vytvorení snímky</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="240"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="277"/>
|
||||
<source>Close after taking a screenshot</source>
|
||||
<translation>Zatvoriť po vytvorení snímky obrazovky</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="289"/>
|
||||
<source>Copy URL after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="251"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="294"/>
|
||||
<source>Copy URL and close window after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="260"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="263"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="304"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="307"/>
|
||||
<source>Copy file path after save</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="316"/>
|
||||
<source>Upload storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="320"/>
|
||||
<source>Imgur storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="327"/>
|
||||
<source>S3 storage (require config.ini file with s3 credentials)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>HistoryWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="26"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="30"/>
|
||||
<source>Latest Uploads</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="63"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="68"/>
|
||||
<source>Screenshots history is empty</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="109"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="118"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Kopírovať URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="113"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="122"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL skopírovaná do schránky.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="119"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="128"/>
|
||||
<source>Open in browser</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
@@ -488,164 +498,207 @@ Stlačte medzerník pre otvorenie postranného panelu.</translation>
|
||||
<context>
|
||||
<name>ImgS3Uploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">Nahrávam obrázok</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Delete image from S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="244"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="226"/>
|
||||
<source>Unable to remove screenshot from the remote storage.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="246"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="228"/>
|
||||
<source>Network error</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="249"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="230"/>
|
||||
<source>Possibly it doesn't exist anymore</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="252"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="235"/>
|
||||
<source>Do you want to remove screenshot from local history anyway?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="282"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="256"/>
|
||||
<source>S3 Creds URL is not found in your configuration file</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="406"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Kopírovať URL</translation>
|
||||
<translation type="obsolete">Kopírovať URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="407"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">Otvoriť URL</translation>
|
||||
<translation type="obsolete">Otvoriť URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="408"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">Vymazať obrázok</translation>
|
||||
<translation type="obsolete">Vymazať obrázok</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="409"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Obrázok do schránky.</translation>
|
||||
<translation type="obsolete">Obrázok do schránky.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="428"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">Nepodarilo sa otvoriť URL.</translation>
|
||||
<translation type="obsolete">Nepodarilo sa otvoriť URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="209"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="434"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="202"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL skopírovaná do schránky.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="447"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="255"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="239"/>
|
||||
<source>Remove screenshot from history?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="439"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Snímka obrazovky bola skopírovaná do schránky.</translation>
|
||||
<translation type="obsolete">Snímka obrazovky bola skopírovaná do schránky.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgS3UploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="38"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation type="unfinished">Uploader obrázkov</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="46"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to S3 bucket</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">Nahrávam obrázok</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Upload image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="92"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">Nepodarilo sa otvoriť URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="99"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL skopírovaná do schránky.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="105"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Snímka obrazovky bola skopírovaná do schránky.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="114"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="174"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Kopírovať URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="175"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">Otvoriť URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="176"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">Vymazať obrázok</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="177"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Obrázok do schránky.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="47"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="48"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>Nahrať na Imgur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation>Nahrávam obrázok</translation>
|
||||
<translation type="vanished">Nahrávam obrázok</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="140"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>Kopírovať URL</translation>
|
||||
<translation type="vanished">Kopírovať URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="141"/>
|
||||
<source>Open URL</source>
|
||||
<translation>Otvoriť URL</translation>
|
||||
<translation type="vanished">Otvoriť URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="142"/>
|
||||
<source>Delete image</source>
|
||||
<translation>Vymazať obrázok</translation>
|
||||
<translation type="vanished">Vymazať obrázok</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="143"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>Obrázok do schránky.</translation>
|
||||
<translation type="vanished">Obrázok do schránky.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="162"/>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="175"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="127"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>Nepodarilo sa otvoriť URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="168"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>URL skopírovaná do schránky.</translation>
|
||||
<translation type="vanished">URL skopírovaná do schránky.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="181"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation>Snímka obrazovky bola skopírovaná do schránky.</translation>
|
||||
<translation type="vanished">Snímka obrazovky bola skopírovaná do schránky.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="35"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation>Uploader obrázkov</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="43"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to Imgur</source>
|
||||
<translation>Nahrať výber na Imgur</translation>
|
||||
</message>
|
||||
@@ -851,7 +904,7 @@ Stlačte medzerník pre otvorenie postranného panelu.</translation>
|
||||
<translation>Chyba pri ukladaní</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="82"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="88"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL skopírovaná do schránky.</translation>
|
||||
</message>
|
||||
|
||||
@@ -125,12 +125,12 @@
|
||||
<context>
|
||||
<name>CaptureWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="83"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="99"/>
|
||||
<source>Unable to capture screen</source>
|
||||
<translation>Нисам успео да снимим екран</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="258"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="284"/>
|
||||
<source>Select an area with the mouse, or press Esc to exit.
|
||||
Press Enter to capture the screen.
|
||||
Press Right Click to show the color picker.
|
||||
@@ -159,32 +159,27 @@ Press Space to open the side panel.</source>
|
||||
<context>
|
||||
<name>ConfigWindow</name>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="42"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="45"/>
|
||||
<source>Configuration</source>
|
||||
<translation>Подешавања</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="64"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="66"/>
|
||||
<source>Interface</source>
|
||||
<translation>Изглед</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="69"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="72"/>
|
||||
<source>Filename Editor</source>
|
||||
<translation>Избор имена датотеке</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="79"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="80"/>
|
||||
<source>Shortcuts</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="84"/>
|
||||
<source>Path Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="74"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="76"/>
|
||||
<source>General</source>
|
||||
<translation>Опште</translation>
|
||||
</message>
|
||||
@@ -335,152 +330,167 @@ Press Space to open the side panel.</source>
|
||||
<context>
|
||||
<name>GeneneralConf</name>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="93"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="199"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<source>Import</source>
|
||||
<translation>Увоз</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Error</source>
|
||||
<translation>Грешка</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<source>Unable to read file.</source>
|
||||
<translation>Нисам успео да прочитам датотеку.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Unable to write file.</source>
|
||||
<translation>Нисам успео да сачувам датотеку.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="116"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="133"/>
|
||||
<source>Save File</source>
|
||||
<translation>Сачувај датотеку</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="137"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="155"/>
|
||||
<source>Confirm Reset</source>
|
||||
<translation>Потврда поништавања</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="138"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="156"/>
|
||||
<source>Are you sure you want to reset the configuration?</source>
|
||||
<translation>Да ли сте сигурни да желите да поништите сва прилагођена подешавања?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="147"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<source>Show help message</source>
|
||||
<translation>Приказуј поруку са упутством</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="151"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="169"/>
|
||||
<source>Show the help message at the beginning in the capture mode.</source>
|
||||
<translation>Приказуј поруку са кратким упутством на почетку снимања екрана.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="161"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="181"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="185"/>
|
||||
<source>Show desktop notifications</source>
|
||||
<translation>Користи системска обавештења</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="174"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="197"/>
|
||||
<source>Show tray icon</source>
|
||||
<translation>Иконица на системској полици</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="178"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="201"/>
|
||||
<source>Show the systemtray icon</source>
|
||||
<translation>Приказуј иконицу на системској полици</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="189"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<source>Configuration File</source>
|
||||
<translation>Датотека са подешавањима</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="194"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="220"/>
|
||||
<source>Export</source>
|
||||
<translation>Извоз</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="204"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="234"/>
|
||||
<source>Reset</source>
|
||||
<translation>Поништи</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="211"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="244"/>
|
||||
<source>Launch at startup</source>
|
||||
<translation>Покрени на почетку</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="262"/>
|
||||
<source>Launch Flameshot</source>
|
||||
<translation>Покрени Flameshot</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="223"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="258"/>
|
||||
<source>Show welcome message on launch</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="236"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="273"/>
|
||||
<source>Close application after capture</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="240"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="277"/>
|
||||
<source>Close after taking a screenshot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="289"/>
|
||||
<source>Copy URL after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="251"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="294"/>
|
||||
<source>Copy URL and close window after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="260"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="263"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="304"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="307"/>
|
||||
<source>Copy file path after save</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="316"/>
|
||||
<source>Upload storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="320"/>
|
||||
<source>Imgur storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="327"/>
|
||||
<source>S3 storage (require config.ini file with s3 credentials)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>HistoryWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="26"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="30"/>
|
||||
<source>Latest Uploads</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="63"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="68"/>
|
||||
<source>Screenshots history is empty</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="109"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="118"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Запамти интернет адресу</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="113"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="122"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">Интернет адреса је сачувана у привременој меморији.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="119"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="128"/>
|
||||
<source>Open in browser</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
@@ -488,164 +498,207 @@ Press Space to open the side panel.</source>
|
||||
<context>
|
||||
<name>ImgS3Uploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">Објављујем слику</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Delete image from S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="244"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="226"/>
|
||||
<source>Unable to remove screenshot from the remote storage.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="246"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="228"/>
|
||||
<source>Network error</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="249"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="230"/>
|
||||
<source>Possibly it doesn't exist anymore</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="252"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="235"/>
|
||||
<source>Do you want to remove screenshot from local history anyway?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="282"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="256"/>
|
||||
<source>S3 Creds URL is not found in your configuration file</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="406"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Запамти интернет адресу</translation>
|
||||
<translation type="obsolete">Запамти интернет адресу</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="407"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">Посети интернет адресу</translation>
|
||||
<translation type="obsolete">Посети интернет адресу</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="408"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">Избриши слику</translation>
|
||||
<translation type="obsolete">Избриши слику</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="409"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Сачувај у привремену меморију.</translation>
|
||||
<translation type="obsolete">Сачувај у привремену меморију.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="428"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">Нисам успео да посетим интернет адресу.</translation>
|
||||
<translation type="obsolete">Нисам успео да посетим интернет адресу.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="209"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="434"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="202"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">Интернет адреса је сачувана у привременој меморији.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="447"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="255"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="239"/>
|
||||
<source>Remove screenshot from history?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="439"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Слика је сачувана у привременој меморији.</translation>
|
||||
<translation type="obsolete">Слика је сачувана у привременој меморији.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgS3UploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="38"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation type="unfinished">Објављивање слике</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="46"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to S3 bucket</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">Објављујем слику</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Upload image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="92"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">Нисам успео да посетим интернет адресу.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="99"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">Интернет адреса је сачувана у привременој меморији.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="105"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Слика је сачувана у привременој меморији.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="114"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="174"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">Запамти интернет адресу</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="175"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">Посети интернет адресу</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="176"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">Избриши слику</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="177"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Сачувај у привремену меморију.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="47"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="48"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>Објави на Imgur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation>Објављујем слику</translation>
|
||||
<translation type="vanished">Објављујем слику</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="140"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>Запамти интернет адресу</translation>
|
||||
<translation type="vanished">Запамти интернет адресу</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="141"/>
|
||||
<source>Open URL</source>
|
||||
<translation>Посети интернет адресу</translation>
|
||||
<translation type="vanished">Посети интернет адресу</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="142"/>
|
||||
<source>Delete image</source>
|
||||
<translation>Избриши слику</translation>
|
||||
<translation type="vanished">Избриши слику</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="143"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>Сачувај у привремену меморију.</translation>
|
||||
<translation type="vanished">Сачувај у привремену меморију.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="162"/>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="175"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="127"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>Нисам успео да посетим интернет адресу.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="168"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>Интернет адреса је сачувана у привременој меморији.</translation>
|
||||
<translation type="vanished">Интернет адреса је сачувана у привременој меморији.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="181"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation>Слика је сачувана у привременој меморији.</translation>
|
||||
<translation type="vanished">Слика је сачувана у привременој меморији.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="35"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation>Објављивање слике</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="43"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to Imgur</source>
|
||||
<translation>Објави избор на Imgur сајту</translation>
|
||||
</message>
|
||||
@@ -843,7 +896,7 @@ Press Space to open the side panel.</source>
|
||||
<translation>Нисам успео са сачувам</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="82"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="88"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">Интернет адреса је сачувана у привременој меморији.</translation>
|
||||
</message>
|
||||
|
||||
@@ -125,12 +125,12 @@
|
||||
<context>
|
||||
<name>CaptureWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="83"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="99"/>
|
||||
<source>Unable to capture screen</source>
|
||||
<translation>Ekran resmi alınamadı</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="258"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="284"/>
|
||||
<source>Select an area with the mouse, or press Esc to exit.
|
||||
Press Enter to capture the screen.
|
||||
Press Right Click to show the color picker.
|
||||
@@ -159,32 +159,27 @@ Yan paneli açmak için Boşluk tuşuna basın.</translation>
|
||||
<context>
|
||||
<name>ConfigWindow</name>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="42"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="45"/>
|
||||
<source>Configuration</source>
|
||||
<translation>Ayarlar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="64"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="66"/>
|
||||
<source>Interface</source>
|
||||
<translation>Arayüz</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="69"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="72"/>
|
||||
<source>Filename Editor</source>
|
||||
<translation>Dosya Adı Düzenleyici</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="79"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="80"/>
|
||||
<source>Shortcuts</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="84"/>
|
||||
<source>Path Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="74"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="76"/>
|
||||
<source>General</source>
|
||||
<translation>Genel</translation>
|
||||
</message>
|
||||
@@ -335,152 +330,167 @@ Yan paneli açmak için Boşluk tuşuna basın.</translation>
|
||||
<context>
|
||||
<name>GeneneralConf</name>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="93"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="199"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<source>Import</source>
|
||||
<translation>Dışa aktar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Error</source>
|
||||
<translation>Hata</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<source>Unable to read file.</source>
|
||||
<translation>Dosya okunamıyor.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Unable to write file.</source>
|
||||
<translation>Dosya yazılamıyor.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="116"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="133"/>
|
||||
<source>Save File</source>
|
||||
<translation>Dosyayı Kaydet</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="137"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="155"/>
|
||||
<source>Confirm Reset</source>
|
||||
<translation>Sıfırlamayı Onayla</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="138"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="156"/>
|
||||
<source>Are you sure you want to reset the configuration?</source>
|
||||
<translation>Ayarları sıfırlamak istediğinizden emin misiniz?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="147"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<source>Show help message</source>
|
||||
<translation>Yardım mesajını göster</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="151"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="169"/>
|
||||
<source>Show the help message at the beginning in the capture mode.</source>
|
||||
<translation>Yakalama modunda başında yardım mesajını gösterin.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="161"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="181"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="185"/>
|
||||
<source>Show desktop notifications</source>
|
||||
<translation>Masaüstü bildirimlerini göster</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="174"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="197"/>
|
||||
<source>Show tray icon</source>
|
||||
<translation>Tepsi simgesini göster</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="178"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="201"/>
|
||||
<source>Show the systemtray icon</source>
|
||||
<translation>Sistem tepsisi simgesini göster</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="189"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<source>Configuration File</source>
|
||||
<translation>Yapılandırma Dosyası</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="194"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="220"/>
|
||||
<source>Export</source>
|
||||
<translation>Dışa aktar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="204"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="234"/>
|
||||
<source>Reset</source>
|
||||
<translation>Sıfırla</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="211"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="244"/>
|
||||
<source>Launch at startup</source>
|
||||
<translation>Başlangıçta başlatın</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="262"/>
|
||||
<source>Launch Flameshot</source>
|
||||
<translation>Flameshot'ı başlat</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="223"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="258"/>
|
||||
<source>Show welcome message on launch</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="236"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="273"/>
|
||||
<source>Close application after capture</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="240"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="277"/>
|
||||
<source>Close after taking a screenshot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="289"/>
|
||||
<source>Copy URL after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="251"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="294"/>
|
||||
<source>Copy URL and close window after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="260"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="263"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="304"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="307"/>
|
||||
<source>Copy file path after save</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="316"/>
|
||||
<source>Upload storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="320"/>
|
||||
<source>Imgur storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="327"/>
|
||||
<source>S3 storage (require config.ini file with s3 credentials)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>HistoryWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="26"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="30"/>
|
||||
<source>Latest Uploads</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="63"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="68"/>
|
||||
<source>Screenshots history is empty</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="109"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="118"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">URL Kopyala</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="113"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="122"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL panoya kopyalandı.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="119"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="128"/>
|
||||
<source>Open in browser</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
@@ -488,164 +498,207 @@ Yan paneli açmak için Boşluk tuşuna basın.</translation>
|
||||
<context>
|
||||
<name>ImgS3Uploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">Resim Yükleniyor</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Delete image from S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="244"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="226"/>
|
||||
<source>Unable to remove screenshot from the remote storage.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="246"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="228"/>
|
||||
<source>Network error</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="249"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="230"/>
|
||||
<source>Possibly it doesn't exist anymore</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="252"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="235"/>
|
||||
<source>Do you want to remove screenshot from local history anyway?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="282"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="256"/>
|
||||
<source>S3 Creds URL is not found in your configuration file</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="406"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">URL Kopyala</translation>
|
||||
<translation type="obsolete">URL Kopyala</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="407"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">URL Aç</translation>
|
||||
<translation type="obsolete">URL Aç</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="408"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">Resmi sil</translation>
|
||||
<translation type="obsolete">Resmi sil</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="409"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Resim Pano'ya.</translation>
|
||||
<translation type="obsolete">Resim Pano'ya.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="428"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">URL açılamıyor.</translation>
|
||||
<translation type="obsolete">URL açılamıyor.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="209"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="434"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="202"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL panoya kopyalandı.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="447"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="255"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="239"/>
|
||||
<source>Remove screenshot from history?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="439"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Ekran görüntüsü panoya kopyalandı.</translation>
|
||||
<translation type="obsolete">Ekran görüntüsü panoya kopyalandı.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgS3UploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="38"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation type="unfinished">Resim Yükleme Aracı</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="46"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to S3 bucket</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">Resim Yükleniyor</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Upload image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="92"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">URL açılamıyor.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="99"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL panoya kopyalandı.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="105"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">Ekran görüntüsü panoya kopyalandı.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="114"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="174"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">URL Kopyala</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="175"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">URL Aç</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="176"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">Resmi sil</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="177"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">Resim Pano'ya.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="47"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="48"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>Imgur'a yükle</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation>Resim Yükleniyor</translation>
|
||||
<translation type="vanished">Resim Yükleniyor</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="140"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>URL Kopyala</translation>
|
||||
<translation type="vanished">URL Kopyala</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="141"/>
|
||||
<source>Open URL</source>
|
||||
<translation>URL Aç</translation>
|
||||
<translation type="vanished">URL Aç</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="142"/>
|
||||
<source>Delete image</source>
|
||||
<translation>Resmi sil</translation>
|
||||
<translation type="vanished">Resmi sil</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="143"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>Resim Pano'ya.</translation>
|
||||
<translation type="vanished">Resim Pano'ya.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="162"/>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="175"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="127"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>URL açılamıyor.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="168"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>URL panoya kopyalandı.</translation>
|
||||
<translation type="vanished">URL panoya kopyalandı.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="181"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation>Ekran görüntüsü panoya kopyalandı.</translation>
|
||||
<translation type="vanished">Ekran görüntüsü panoya kopyalandı.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="35"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation>Resim Yükleme Aracı</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="43"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to Imgur</source>
|
||||
<translation>Seçimi Imgur'a yükler</translation>
|
||||
</message>
|
||||
@@ -843,7 +896,7 @@ Yan paneli açmak için Boşluk tuşuna basın.</translation>
|
||||
<translation>Yazma mümkün değil</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="82"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="88"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">URL panoya kopyalandı.</translation>
|
||||
</message>
|
||||
|
||||
@@ -125,12 +125,12 @@
|
||||
<context>
|
||||
<name>CaptureWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="83"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="99"/>
|
||||
<source>Unable to capture screen</source>
|
||||
<translation>Не вдалось захопити екран</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="258"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="284"/>
|
||||
<source>Select an area with the mouse, or press Esc to exit.
|
||||
Press Enter to capture the screen.
|
||||
Press Right Click to show the color picker.
|
||||
@@ -159,32 +159,31 @@ Press Space to open the side panel.</source>
|
||||
<context>
|
||||
<name>ConfigWindow</name>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="42"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="45"/>
|
||||
<source>Configuration</source>
|
||||
<translation>Налаштування</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="64"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="66"/>
|
||||
<source>Interface</source>
|
||||
<translation>Інтерфейс</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="69"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="72"/>
|
||||
<source>Filename Editor</source>
|
||||
<translation>Редактор імені файлів</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="79"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="80"/>
|
||||
<source>Shortcuts</source>
|
||||
<translation>Гарячі клавіші</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="84"/>
|
||||
<source>Path Default</source>
|
||||
<translation>Шлях</translation>
|
||||
<translation type="vanished">Шлях</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="74"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="76"/>
|
||||
<source>General</source>
|
||||
<translation>Загальне</translation>
|
||||
</message>
|
||||
@@ -343,127 +342,142 @@ Press Space to open the side panel.</source>
|
||||
<context>
|
||||
<name>GeneneralConf</name>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="93"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="199"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<source>Import</source>
|
||||
<translation>Імпорт</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Error</source>
|
||||
<translation>Помилка</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<source>Unable to read file.</source>
|
||||
<translation>Не вдалось прочитати файл.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Unable to write file.</source>
|
||||
<translation>Не вдалось записати файл.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="116"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="133"/>
|
||||
<source>Save File</source>
|
||||
<translation>Зберегти файл</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="137"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="155"/>
|
||||
<source>Confirm Reset</source>
|
||||
<translation>Підтвердити скидання</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="138"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="156"/>
|
||||
<source>Are you sure you want to reset the configuration?</source>
|
||||
<translation>Ви дійсно хочете скинути налаштування?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="147"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<source>Show help message</source>
|
||||
<translation>Показувати повідомлення довідки</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="151"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="169"/>
|
||||
<source>Show the help message at the beginning in the capture mode.</source>
|
||||
<translation>Показувати повідомлення довідки на початку режиму захоплення.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="161"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="181"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="185"/>
|
||||
<source>Show desktop notifications</source>
|
||||
<translation>Показувати повідомлення</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="174"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="197"/>
|
||||
<source>Show tray icon</source>
|
||||
<translation>Показувати значок на панелі</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="178"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="201"/>
|
||||
<source>Show the systemtray icon</source>
|
||||
<translation>Показувати значок на панелі повідомленнь</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="189"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<source>Configuration File</source>
|
||||
<translation>Файл налаштувань</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="194"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="220"/>
|
||||
<source>Export</source>
|
||||
<translation>Експорт</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="204"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="234"/>
|
||||
<source>Reset</source>
|
||||
<translation>Скинути</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="211"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="244"/>
|
||||
<source>Launch at startup</source>
|
||||
<translation>Запускати при старті системи</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="262"/>
|
||||
<source>Launch Flameshot</source>
|
||||
<translation>Запускати Flameshot</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="223"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="258"/>
|
||||
<source>Show welcome message on launch</source>
|
||||
<translation>Показувати привітання при запуску</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="236"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="273"/>
|
||||
<source>Close application after capture</source>
|
||||
<translation>Закрити прогрму після захвату</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="240"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="277"/>
|
||||
<source>Close after taking a screenshot</source>
|
||||
<translation>Закрити програму після отримання скріншоту</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="289"/>
|
||||
<source>Copy URL after upload</source>
|
||||
<translation>Копіювати URL після завантаження</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="251"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="294"/>
|
||||
<source>Copy URL and close window after upload</source>
|
||||
<translation>Копіювати URL та закрити вікно після завантаження</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="260"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="263"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="304"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="307"/>
|
||||
<source>Copy file path after save</source>
|
||||
<translation>Копіювати шлях до збереженного файлу</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="316"/>
|
||||
<source>Upload storage</source>
|
||||
<translation>Cховище скріншотів</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="320"/>
|
||||
<source>Imgur storage</source>
|
||||
<translation>Сховище Imgur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="327"/>
|
||||
<source>S3 storage (require config.ini file with s3 credentials)</source>
|
||||
<translation>Сховище S3 (потрібен файл config.ini із параметрами доступу)</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>HistoryWidget</name>
|
||||
@@ -476,27 +490,27 @@ Press Space to open the side panel.</source>
|
||||
<translation type="vanished">Історія скріншотів пуста</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="26"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="30"/>
|
||||
<source>Latest Uploads</source>
|
||||
<translation>Останні завантаження</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="63"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="68"/>
|
||||
<source>Screenshots history is empty</source>
|
||||
<translation>Історія скріншотів пуста</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="109"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="118"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>Скопіювати URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="113"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="122"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>URL скопійовано до буферу обміну.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="119"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="128"/>
|
||||
<source>Open in browser</source>
|
||||
<translation>Відкрити у браузері</translation>
|
||||
</message>
|
||||
@@ -508,17 +522,17 @@ Press Space to open the side panel.</source>
|
||||
<translation type="vanished">Вивантажити на S3</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation>Вивантаження зображення</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation>Завантажити на S3</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Delete image from S3</source>
|
||||
<translation>Видалити скріншот з S3</translation>
|
||||
</message>
|
||||
@@ -527,87 +541,79 @@ Press Space to open the side panel.</source>
|
||||
<translation type="vanished">Видалити скіншот</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="255"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="239"/>
|
||||
<source>Remove screenshot from history?</source>
|
||||
<translation>Видалити скріншот із історії?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="282"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="256"/>
|
||||
<source>S3 Creds URL is not found in your configuration file</source>
|
||||
<translation>Параметри доступів до S3 не знайдені у конфігураціонному файлі</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="406"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>Скопіювати URL</translation>
|
||||
<translation type="vanished">Скопіювати URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="407"/>
|
||||
<source>Open URL</source>
|
||||
<translation>Відкрити URL</translation>
|
||||
<translation type="vanished">Відкрити URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="408"/>
|
||||
<source>Delete image</source>
|
||||
<translation>Видалити зображення</translation>
|
||||
<translation type="vanished">Видалити зображення</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="409"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>Зображення до буферу обміну.</translation>
|
||||
<translation type="vanished">Зображення до буферу обміну.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="428"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>Не вдалось відкрити URL.</translation>
|
||||
<translation type="vanished">Не вдалось відкрити URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="209"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="434"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="202"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>URL скопійовано до буферу обміну.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="447"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation>Видалення скріншоту...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="244"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="226"/>
|
||||
<source>Unable to remove screenshot from the remote storage.</source>
|
||||
<translation>Не вдалося видалити скріншот із віддаленого сховища.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="246"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="228"/>
|
||||
<source>Network error</source>
|
||||
<translation>Помилка мережі</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="249"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="230"/>
|
||||
<source>Possibly it doesn't exist anymore</source>
|
||||
<translation>Можливо, його більше не існує</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="252"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="235"/>
|
||||
<source>Do you want to remove screenshot from local history anyway?</source>
|
||||
<translation>Ви все одно хочете видалити скріншот із локальної історії?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="439"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation>Знімок скопійовано до буферу обміну.</translation>
|
||||
<translation type="vanished">Знімок скопійовано до буферу обміну.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgS3UploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="38"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation>Вивантаження зображень</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="46"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to S3 bucket</source>
|
||||
<translation>Вивантажити виділення на S3</translation>
|
||||
</message>
|
||||
@@ -617,63 +623,114 @@ Press Space to open the side panel.</source>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<name>ImgUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="47"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>Вивантажити до Imgur</translation>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation>Завантажити на S3</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="54"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation>Вивантаження зображення</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="140"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>Скопіювати URL</translation>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Upload image</source>
|
||||
<translation>Вивантажити зображення</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="141"/>
|
||||
<source>Open URL</source>
|
||||
<translation>Відкрити URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="142"/>
|
||||
<source>Delete image</source>
|
||||
<translation>Видалити зображення</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="143"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>Зображення до буферу обміну.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="162"/>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="175"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="92"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>Не вдалось відкрити URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="168"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="99"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>URL скопійовано до буферу обміну.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="181"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="105"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation>Знімок скопійовано до буферу обміну.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="114"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation>Видалення скріншоту...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="174"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>Скопіювати URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="175"/>
|
||||
<source>Open URL</source>
|
||||
<translation>Відкрити URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="176"/>
|
||||
<source>Delete image</source>
|
||||
<translation>Видалити зображення</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="177"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>Зображення до буферу обміну.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="48"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>Вивантажити до Imgur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="vanished">Вивантаження зображення</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL</source>
|
||||
<translation type="vanished">Скопіювати URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open URL</source>
|
||||
<translation type="vanished">Відкрити URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete image</source>
|
||||
<translation type="vanished">Видалити зображення</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="vanished">Зображення до буферу обміну.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="127"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>Не вдалось відкрити URL.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="vanished">URL скопійовано до буферу обміну.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="vanished">Знімок скопійовано до буферу обміну.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="35"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation>Вивантаження зображень</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="43"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to Imgur</source>
|
||||
<translation>Вивантажити вибране до Imgur</translation>
|
||||
</message>
|
||||
@@ -887,7 +944,7 @@ Press Space to open the side panel.</source>
|
||||
<translation>Не вдалось зберегти</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="82"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="88"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>URL скопійовано до буферу обміну.</translation>
|
||||
</message>
|
||||
|
||||
@@ -125,13 +125,13 @@
|
||||
<context>
|
||||
<name>CaptureWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="83"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="99"/>
|
||||
<source>Unable to capture screen</source>
|
||||
<translatorcomment>无法捕获屏幕</translatorcomment>
|
||||
<translation>无法捕获屏幕</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="258"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="284"/>
|
||||
<source>Select an area with the mouse, or press Esc to exit.
|
||||
Press Enter to capture the screen.
|
||||
Press Right Click to show the color picker.
|
||||
@@ -160,32 +160,27 @@ Press Space to open the side panel.</source>
|
||||
<context>
|
||||
<name>ConfigWindow</name>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="42"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="45"/>
|
||||
<source>Configuration</source>
|
||||
<translation>配置</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="64"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="66"/>
|
||||
<source>Interface</source>
|
||||
<translation>界面</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="69"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="72"/>
|
||||
<source>Filename Editor</source>
|
||||
<translation>文件名编辑器</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="79"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="80"/>
|
||||
<source>Shortcuts</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="84"/>
|
||||
<source>Path Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="74"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="76"/>
|
||||
<source>General</source>
|
||||
<translation>常规</translation>
|
||||
</message>
|
||||
@@ -336,152 +331,167 @@ Press Space to open the side panel.</source>
|
||||
<context>
|
||||
<name>GeneneralConf</name>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="147"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<source>Show help message</source>
|
||||
<translation>显示帮助文档</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="151"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="169"/>
|
||||
<source>Show the help message at the beginning in the capture mode.</source>
|
||||
<translation>在捕获之前显示帮助信息。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="161"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="181"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="185"/>
|
||||
<source>Show desktop notifications</source>
|
||||
<translation>显示桌面通知</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="174"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="197"/>
|
||||
<source>Show tray icon</source>
|
||||
<translation>显示托盘图标</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="178"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="201"/>
|
||||
<source>Show the systemtray icon</source>
|
||||
<translation>显示任务栏图标</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="93"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="199"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<source>Import</source>
|
||||
<translation>导入</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Error</source>
|
||||
<translation>错误</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<source>Unable to read file.</source>
|
||||
<translation>无法读取文件。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Unable to write file.</source>
|
||||
<translation>无法写入文件。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="116"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="133"/>
|
||||
<source>Save File</source>
|
||||
<translation>保存到文件</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="137"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="155"/>
|
||||
<source>Confirm Reset</source>
|
||||
<translation>确定重置</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="138"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="156"/>
|
||||
<source>Are you sure you want to reset the configuration?</source>
|
||||
<translation>你确定你想要重置配置?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="189"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<source>Configuration File</source>
|
||||
<translation>配置文件</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="194"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="220"/>
|
||||
<source>Export</source>
|
||||
<translation>导出</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="204"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="234"/>
|
||||
<source>Reset</source>
|
||||
<translation>重置</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="211"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="244"/>
|
||||
<source>Launch at startup</source>
|
||||
<translation>开机时启动</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="262"/>
|
||||
<source>Launch Flameshot</source>
|
||||
<translation>启动 Flameshot</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="223"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="258"/>
|
||||
<source>Show welcome message on launch</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="236"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="273"/>
|
||||
<source>Close application after capture</source>
|
||||
<translation>捕获后关闭</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="240"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="277"/>
|
||||
<source>Close after taking a screenshot</source>
|
||||
<translation>获取屏幕截图后关闭</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="289"/>
|
||||
<source>Copy URL after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="251"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="294"/>
|
||||
<source>Copy URL and close window after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="260"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="263"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="304"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="307"/>
|
||||
<source>Copy file path after save</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="316"/>
|
||||
<source>Upload storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="320"/>
|
||||
<source>Imgur storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="327"/>
|
||||
<source>S3 storage (require config.ini file with s3 credentials)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>HistoryWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="26"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="30"/>
|
||||
<source>Latest Uploads</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="63"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="68"/>
|
||||
<source>Screenshots history is empty</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="109"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="118"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">复制链接</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="113"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="122"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">复制链接到剪贴板。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="119"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="128"/>
|
||||
<source>Open in browser</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
@@ -489,164 +499,207 @@ Press Space to open the side panel.</source>
|
||||
<context>
|
||||
<name>ImgS3Uploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">正在上传</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Delete image from S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="244"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="226"/>
|
||||
<source>Unable to remove screenshot from the remote storage.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="246"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="228"/>
|
||||
<source>Network error</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="249"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="230"/>
|
||||
<source>Possibly it doesn't exist anymore</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="252"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="235"/>
|
||||
<source>Do you want to remove screenshot from local history anyway?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="282"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="256"/>
|
||||
<source>S3 Creds URL is not found in your configuration file</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="406"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">复制链接</translation>
|
||||
<translation type="obsolete">复制链接</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="407"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">打开链接</translation>
|
||||
<translation type="obsolete">打开链接</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="408"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">删除图像</translation>
|
||||
<translation type="obsolete">删除图像</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="409"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">保存文件到剪贴板。</translation>
|
||||
<translation type="obsolete">保存文件到剪贴板。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="428"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">无法打开此链接。</translation>
|
||||
<translation type="obsolete">无法打开此链接。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="209"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="434"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="202"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">复制链接到剪贴板。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="447"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="255"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="239"/>
|
||||
<source>Remove screenshot from history?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="439"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">截图复制到剪贴板。</translation>
|
||||
<translation type="obsolete">截图复制到剪贴板。</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgS3UploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="38"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation type="unfinished">上传图片</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="46"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to S3 bucket</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">正在上传</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Upload image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="92"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">无法打开此链接。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="99"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">复制链接到剪贴板。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="105"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">截图复制到剪贴板。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="114"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="174"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">复制链接</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="175"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">打开链接</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="176"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished">删除图像</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="177"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">保存文件到剪贴板。</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="47"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="48"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>上传到Imgur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation>正在上传</translation>
|
||||
<translation type="vanished">正在上传</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="140"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>复制链接</translation>
|
||||
<translation type="vanished">复制链接</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="141"/>
|
||||
<source>Open URL</source>
|
||||
<translation>打开链接</translation>
|
||||
<translation type="vanished">打开链接</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="142"/>
|
||||
<source>Delete image</source>
|
||||
<translation>删除图像</translation>
|
||||
<translation type="vanished">删除图像</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="143"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>保存文件到剪贴板。</translation>
|
||||
<translation type="vanished">保存文件到剪贴板。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="162"/>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="175"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="127"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>无法打开此链接。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="168"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>复制链接到剪贴板。</translation>
|
||||
<translation type="vanished">复制链接到剪贴板。</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="181"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation>截图复制到剪贴板。</translation>
|
||||
<translation type="vanished">截图复制到剪贴板。</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="35"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation>上传图片</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="43"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to Imgur</source>
|
||||
<translation>上传选择到 Imgur</translation>
|
||||
</message>
|
||||
@@ -852,7 +905,7 @@ Press Space to open the side panel.</source>
|
||||
<translation>无法写入</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="82"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="88"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">复制链接到剪贴板。</translation>
|
||||
</message>
|
||||
|
||||
@@ -125,12 +125,12 @@
|
||||
<context>
|
||||
<name>CaptureWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="83"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="99"/>
|
||||
<source>Unable to capture screen</source>
|
||||
<translation>無法擷取螢幕</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="258"/>
|
||||
<location filename="../src/widgets/capture/capturewidget.cpp" line="284"/>
|
||||
<source>Select an area with the mouse, or press Esc to exit.
|
||||
Press Enter to capture the screen.
|
||||
Press Right Click to show the color picker.
|
||||
@@ -155,32 +155,27 @@ Press Space to open the side panel.</source>
|
||||
<context>
|
||||
<name>ConfigWindow</name>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="42"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="45"/>
|
||||
<source>Configuration</source>
|
||||
<translation>設定</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="64"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="66"/>
|
||||
<source>Interface</source>
|
||||
<translation>介面</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="69"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="72"/>
|
||||
<source>Filename Editor</source>
|
||||
<translation>檔案名稱編輯器</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="79"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="80"/>
|
||||
<source>Shortcuts</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="84"/>
|
||||
<source>Path Default</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/configwindow.cpp" line="74"/>
|
||||
<location filename="../src/config/configwindow.cpp" line="76"/>
|
||||
<source>General</source>
|
||||
<translation>一般</translation>
|
||||
</message>
|
||||
@@ -331,152 +326,167 @@ Press Space to open the side panel.</source>
|
||||
<context>
|
||||
<name>GeneneralConf</name>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="147"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<source>Show help message</source>
|
||||
<translation>顯示説明資訊</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="151"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="169"/>
|
||||
<source>Show the help message at the beginning in the capture mode.</source>
|
||||
<translation>在擷取之前顯示説明資訊</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="161"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="165"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="181"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="185"/>
|
||||
<source>Show desktop notifications</source>
|
||||
<translation>顯示桌面通知</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="174"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="197"/>
|
||||
<source>Show tray icon</source>
|
||||
<translation>顯示託盤圖示</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="178"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="201"/>
|
||||
<source>Show the systemtray icon</source>
|
||||
<translation>顯示工作列圖示</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="93"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="199"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<source>Import</source>
|
||||
<translation>匯入</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Error</source>
|
||||
<translation>錯誤</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="100"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="115"/>
|
||||
<source>Unable to read file.</source>
|
||||
<translation>無法讀取檔案</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="108"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="130"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="123"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="146"/>
|
||||
<source>Unable to write file.</source>
|
||||
<translation>無法寫入檔案</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="116"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="133"/>
|
||||
<source>Save File</source>
|
||||
<translation>存檔</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="137"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="155"/>
|
||||
<source>Confirm Reset</source>
|
||||
<translation>確認重設</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="138"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="156"/>
|
||||
<source>Are you sure you want to reset the configuration?</source>
|
||||
<translation>你確定你想要重設?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="189"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<source>Configuration File</source>
|
||||
<translation>設定檔</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="194"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="220"/>
|
||||
<source>Export</source>
|
||||
<translation>匯出</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="204"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="234"/>
|
||||
<source>Reset</source>
|
||||
<translation>重設</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="211"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="244"/>
|
||||
<source>Launch at startup</source>
|
||||
<translation>自動啟動</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="215"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="227"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="262"/>
|
||||
<source>Launch Flameshot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="223"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="258"/>
|
||||
<source>Show welcome message on launch</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="236"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="273"/>
|
||||
<source>Close application after capture</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="240"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="277"/>
|
||||
<source>Close after taking a screenshot</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="248"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="289"/>
|
||||
<source>Copy URL after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="251"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="294"/>
|
||||
<source>Copy URL and close window after upload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="260"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="263"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="304"/>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="307"/>
|
||||
<source>Copy file path after save</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="316"/>
|
||||
<source>Upload storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="320"/>
|
||||
<source>Imgur storage</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/config/geneneralconf.cpp" line="327"/>
|
||||
<source>S3 storage (require config.ini file with s3 credentials)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>HistoryWidget</name>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="26"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="30"/>
|
||||
<source>Latest Uploads</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="63"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="68"/>
|
||||
<source>Screenshots history is empty</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="109"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="118"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">複製連結</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="113"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="122"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">連結已複製到剪貼簿</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="119"/>
|
||||
<location filename="../src/widgets/historywidget.cpp" line="128"/>
|
||||
<source>Open in browser</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
@@ -484,164 +494,199 @@ Press Space to open the side panel.</source>
|
||||
<context>
|
||||
<name>ImgS3Uploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="unfinished">正在上傳</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="54"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Delete image from S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="244"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="226"/>
|
||||
<source>Unable to remove screenshot from the remote storage.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="246"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="228"/>
|
||||
<source>Network error</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="249"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="230"/>
|
||||
<source>Possibly it doesn't exist anymore</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="252"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="235"/>
|
||||
<source>Do you want to remove screenshot from local history anyway?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="282"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="256"/>
|
||||
<source>S3 Creds URL is not found in your configuration file</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="406"/>
|
||||
<source>Copy URL</source>
|
||||
<translation type="unfinished">複製連結</translation>
|
||||
<translation type="obsolete">複製連結</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="407"/>
|
||||
<source>Open URL</source>
|
||||
<translation type="unfinished">打開連結</translation>
|
||||
<translation type="obsolete">打開連結</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="408"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="409"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="unfinished">將檔案複製到剪貼簿</translation>
|
||||
<translation type="obsolete">將檔案複製到剪貼簿</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="428"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">無法打開此連結</translation>
|
||||
<translation type="obsolete">無法打開此連結</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="209"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="434"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="202"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">連結已複製到剪貼簿</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="61"/>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="447"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="60"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="255"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploader.cpp" line="239"/>
|
||||
<source>Remove screenshot from history?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploader.cpp" line="439"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">截圖已複製到剪貼簿</translation>
|
||||
<translation type="obsolete">截圖已複製到剪貼簿</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgS3UploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="38"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation type="unfinished">上傳圖片</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgs3/imgs3uploadertool.cpp" line="46"/>
|
||||
<location filename="../src/tools/storage/s3/imgs3uploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to S3 bucket</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<name>ImgUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="47"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>上傳到 Imgur</translation>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<source>Upload image to S3</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="54"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="55"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation>正在上傳</translation>
|
||||
<translation type="unfinished">正在上傳</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="140"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="61"/>
|
||||
<source>Upload image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="92"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation type="unfinished">無法打開此連結</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="99"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">連結已複製到剪貼簿</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="105"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation type="unfinished">截圖已複製到剪貼簿</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="114"/>
|
||||
<source>Deleting image...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="174"/>
|
||||
<source>Copy URL</source>
|
||||
<translation>複製連結</translation>
|
||||
<translation type="unfinished">複製連結</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="141"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="175"/>
|
||||
<source>Open URL</source>
|
||||
<translation>打開連結</translation>
|
||||
<translation type="unfinished">打開連結</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="142"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="176"/>
|
||||
<source>Delete image</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="143"/>
|
||||
<location filename="../src/tools/storage/imguploader.cpp" line="177"/>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation>將檔案複製到剪貼簿</translation>
|
||||
<translation type="unfinished">將檔案複製到剪貼簿</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploader</name>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="48"/>
|
||||
<source>Upload to Imgur</source>
|
||||
<translation>上傳到 Imgur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="162"/>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="175"/>
|
||||
<source>Uploading Image</source>
|
||||
<translation type="vanished">正在上傳</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy URL</source>
|
||||
<translation type="vanished">複製連結</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open URL</source>
|
||||
<translation type="vanished">打開連結</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Image to Clipboard.</source>
|
||||
<translation type="vanished">將檔案複製到剪貼簿</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="127"/>
|
||||
<source>Unable to open the URL.</source>
|
||||
<translation>無法打開此連結</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="168"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation>連結已複製到剪貼簿</translation>
|
||||
<translation type="vanished">連結已複製到剪貼簿</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="181"/>
|
||||
<source>Screenshot copied to clipboard.</source>
|
||||
<translation>截圖已複製到剪貼簿</translation>
|
||||
<translation type="vanished">截圖已複製到剪貼簿</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>ImgurUploaderTool</name>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="35"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="39"/>
|
||||
<source>Image Uploader</source>
|
||||
<translation>上傳圖片</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploadertool.cpp" line="43"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploadertool.cpp" line="49"/>
|
||||
<source>Upload the selection to Imgur</source>
|
||||
<translation>上傳到 Imgur</translation>
|
||||
</message>
|
||||
@@ -839,7 +884,7 @@ Press Space to open the side panel.</source>
|
||||
<translation type="unfinished">無法寫入</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../src/tools/imgur/imguruploader.cpp" line="82"/>
|
||||
<location filename="../src/tools/storage/imgur/imguruploader.cpp" line="88"/>
|
||||
<source>URL copied to clipboard.</source>
|
||||
<translation type="unfinished">連結已複製到剪貼簿</translation>
|
||||
</message>
|
||||
|
||||
Reference in New Issue
Block a user