mirror of
https://github.com/fergalmoran/flameshot.git
synced 2025-12-28 20:59:31 +00:00
Code refactoring - change code style to the new clang-format rules
This commit is contained in:
@@ -17,79 +17,92 @@
|
||||
|
||||
#include "filenamehandler.h"
|
||||
#include "src/utils/confighandler.h"
|
||||
#include <QDir>
|
||||
#include <QStandardPaths>
|
||||
#include <ctime>
|
||||
#include <locale>
|
||||
#include <QStandardPaths>
|
||||
#include <QDir>
|
||||
|
||||
FileNameHandler::FileNameHandler(QObject *parent) : QObject(parent) {
|
||||
FileNameHandler::FileNameHandler(QObject* parent)
|
||||
: QObject(parent)
|
||||
{
|
||||
std::locale::global(std::locale(""));
|
||||
}
|
||||
|
||||
QString FileNameHandler::parsedPattern() {
|
||||
QString FileNameHandler::parsedPattern()
|
||||
{
|
||||
return parseFilename(ConfigHandler().filenamePatternValue());
|
||||
}
|
||||
|
||||
QString FileNameHandler::parseFilename(const QString &name) {
|
||||
QString FileNameHandler::parseFilename(const QString& name)
|
||||
{
|
||||
QString res = name;
|
||||
// remove trailing characters '%' in the pattern
|
||||
if (name.isEmpty()) {
|
||||
res = QLatin1String("%F_%H-%M");
|
||||
}
|
||||
while(res.endsWith('%')) {
|
||||
while (res.endsWith('%')) {
|
||||
res.chop(1);
|
||||
}
|
||||
std::time_t t = std::time(NULL);
|
||||
|
||||
char *tempData = QStringTocharArr(res);
|
||||
char data[MAX_CHARACTERS] = {0};
|
||||
std::strftime(data, sizeof(data),
|
||||
tempData, std::localtime(&t));
|
||||
char* tempData = QStringTocharArr(res);
|
||||
char data[MAX_CHARACTERS] = { 0 };
|
||||
std::strftime(data, sizeof(data), tempData, std::localtime(&t));
|
||||
res = QString::fromLocal8Bit(data, (int)strlen(data));
|
||||
free(tempData);
|
||||
|
||||
// add the parsed pattern in a correct format for the filesystem
|
||||
res = res.replace(QLatin1String("/"), QStringLiteral("⁄")).replace(QLatin1String(":"), QLatin1String("-"));
|
||||
res = res.replace(QLatin1String("/"), QStringLiteral("⁄"))
|
||||
.replace(QLatin1String(":"), QLatin1String("-"));
|
||||
return res;
|
||||
}
|
||||
|
||||
QString FileNameHandler::generateAbsolutePath(const QString &path) {
|
||||
QString FileNameHandler::generateAbsolutePath(const QString& path)
|
||||
{
|
||||
QString directory = path;
|
||||
QString filename = parsedPattern();
|
||||
fixPath(directory, filename);
|
||||
return directory + filename;
|
||||
}
|
||||
// path a images si no existe, add numeration
|
||||
void FileNameHandler::setPattern(const QString &pattern) {
|
||||
void FileNameHandler::setPattern(const QString& pattern)
|
||||
{
|
||||
ConfigHandler().setFilenamePattern(pattern);
|
||||
}
|
||||
|
||||
QString FileNameHandler::absoluteSavePath(QString &directory, QString &filename) {
|
||||
QString FileNameHandler::absoluteSavePath(QString& directory, QString& filename)
|
||||
{
|
||||
ConfigHandler config;
|
||||
directory = config.savePathValue();
|
||||
if (directory.isEmpty() || !QDir(directory).exists() || !QFileInfo(directory).isWritable()) {
|
||||
directory = QStandardPaths::writableLocation(QStandardPaths::PicturesLocation);
|
||||
if (directory.isEmpty() || !QDir(directory).exists() ||
|
||||
!QFileInfo(directory).isWritable()) {
|
||||
directory =
|
||||
QStandardPaths::writableLocation(QStandardPaths::PicturesLocation);
|
||||
}
|
||||
filename = parsedPattern();
|
||||
fixPath(directory, filename);
|
||||
return directory + filename;
|
||||
}
|
||||
|
||||
QString FileNameHandler::absoluteSavePath() {
|
||||
QString FileNameHandler::absoluteSavePath()
|
||||
{
|
||||
QString dir, file;
|
||||
return absoluteSavePath(dir, file);
|
||||
}
|
||||
|
||||
QString FileNameHandler::charArrToQString(const char *c) {
|
||||
QString FileNameHandler::charArrToQString(const char* c)
|
||||
{
|
||||
return QString::fromLocal8Bit(c, MAX_CHARACTERS);
|
||||
}
|
||||
|
||||
char * FileNameHandler::QStringTocharArr(const QString &s) {
|
||||
char* FileNameHandler::QStringTocharArr(const QString& s)
|
||||
{
|
||||
QByteArray ba = s.toLocal8Bit();
|
||||
return const_cast<char *>(strdup(ba.constData()));
|
||||
return const_cast<char*>(strdup(ba.constData()));
|
||||
}
|
||||
|
||||
void FileNameHandler::fixPath(QString &directory, QString &filename) {
|
||||
void FileNameHandler::fixPath(QString& directory, QString& filename)
|
||||
{
|
||||
// add '/' at the end of the directory
|
||||
if (!directory.endsWith(QLatin1String("/"))) {
|
||||
directory += QLatin1String("/");
|
||||
@@ -101,8 +114,8 @@ void FileNameHandler::fixPath(QString &directory, QString &filename) {
|
||||
filename += QLatin1String("_");
|
||||
int i = 1;
|
||||
while (true) {
|
||||
checkFile.setFile(
|
||||
directory + filename + QString::number(i) + ".png");
|
||||
checkFile.setFile(directory + filename + QString::number(i) +
|
||||
".png");
|
||||
if (!checkFile.exists()) {
|
||||
filename += QString::number(i);
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user