Krita Source Code Documentation
Loading...
Searching...
No Matches
KisResourceStorage.cpp File Reference
#include "KisResourceStorage.h"
#include <QApplication>
#include <QDebug>
#include <QFileInfo>
#include <QUuid>
#include <QtMath>
#include <QRegularExpression>
#include <cmath>
#include <quazip.h>
#include <boost/optional.hpp>
#include <kis_debug.h>
#include <kis_pointer_utils.h>
#include "KisFolderStorage.h"
#include "KisBundleStorage.h"
#include "KisMemoryStorage.h"

Go to the source code of this file.

Classes

class  KisResourceStorage::Private
 
struct  VersionedFileParts
 

Functions

boost::optional< VersionedFilePartsguessFilenameParts (const QString &filename)
 
VersionedFileParts guessFileNamePartsLazy (const QString &filename, int minVersion)
 
 Q_GLOBAL_STATIC (KisStoragePluginRegistry, s_instance)
 

Function Documentation

◆ guessFilenameParts()

boost::optional< VersionedFileParts > guessFilenameParts ( const QString & filename)

Definition at line 321 of file KisResourceStorage.cpp.

322{
323 QRegularExpression exp("^(.*)\\.(\\d\\d*)\\.(.+)$");
324
325 QRegularExpressionMatch res = exp.match(filename);
326
327 if (res.hasMatch()) {
328 return VersionedFileParts({res.captured(1), res.captured(2).toInt(), res.captured(3)});
329 }
330
331 return boost::none;
332}

◆ guessFileNamePartsLazy()

VersionedFileParts guessFileNamePartsLazy ( const QString & filename,
int minVersion )

Definition at line 334 of file KisResourceStorage.cpp.

335{
336 boost::optional<VersionedFileParts> guess = guessFilenameParts(filename);
337 if (guess) {
338 guess->version = qMax(guess->version, minVersion);
339 } else {
340 QFileInfo info(filename);
341 guess = VersionedFileParts();
342 guess->basename = info.baseName();
343 guess->version = minVersion;
344 guess->suffix = info.completeSuffix();
345 }
346
347 return *guess;
348}
boost::optional< VersionedFileParts > guessFilenameParts(const QString &filename)

References guessFilenameParts().

◆ Q_GLOBAL_STATIC()

Q_GLOBAL_STATIC ( KisStoragePluginRegistry ,
s_instance  )