19using namespace Qt::StringLiterals;
26 QString
translate(
const QString &context,
const QString &sourceText,
const char *disambiguation,
int n )
const override
29 Q_UNUSED( disambiguation )
40 : mProjectTranslator( sDefaultTranslator() )
48 Q_ASSERT( mCategories.isEmpty() );
58 mPathResolver = resolver;
68 QString message = category;
69 if ( !details.isEmpty() )
70 message.append( u
" :: %1"_s.arg( details ) );
71 mCategories.push_back( message );
75void QgsReadWriteContext::leaveCategory()
const
77 if ( !mCategories.isEmpty() )
78 mCategories.pop_back();
83 return mCoordinateTransformContext;
94 if ( !mProjectTranslator )
95 mProjectTranslator = sDefaultTranslator();
100 QList<QgsReadWriteContext::ReadWriteMessage > messages = mMessages;
MessageLevel
Level for messages This will be used both for message log and message bar in application.
Contains information about the context in which a coordinate transform is executed.
Resolves relative paths into absolute paths and vice versa.
An interface for objects which can translate project strings.
virtual QString translate(const QString &context, const QString &sourceText, const char *disambiguation=nullptr, int n=-1) const =0
Translates a string using the Qt QTranslator mechanism.
QgsReadWriteContextCategoryPopper enterCategory(const QString &category, const QString &details=QString()) const
Push a category to the stack.
const QgsProjectTranslator * projectTranslator() const
Returns the project translator.
QgsReadWriteContext()
Constructor for QgsReadWriteContext.
void setTransformContext(const QgsCoordinateTransformContext &transformContext)
Sets data coordinate transform context to transformContext.
QgsCoordinateTransformContext transformContext() const
Returns data provider coordinate transform context.
QList< QgsReadWriteContext::ReadWriteMessage > takeMessages()
Returns the stored messages and remove them.
friend class QgsReadWriteContextCategoryPopper
void pushMessage(const QString &message, Qgis::MessageLevel level=Qgis::MessageLevel::Warning) const
Append a message to the context.
const QgsPathResolver & pathResolver() const
Returns path resolver for conversion between relative and absolute paths.
void setProjectTranslator(QgsProjectTranslator *projectTranslator)
Sets the project translator.
void setPathResolver(const QgsPathResolver &resolver)
Sets up path resolver for conversion between relative and absolute paths.
Q_GLOBAL_STATIC(QReadWriteLock, sDefinitionCacheLock)
Struct for QgsReadWriteContext error or warning messages.