22 QString
translate(
const QString &context,
const QString &sourceText,
const char *disambiguation,
int n )
const override
25 Q_UNUSED( disambiguation )
36 : mProjectTranslator( sDefaultTranslator() )
44 Q_ASSERT( mCategories.isEmpty() );
54 mPathResolver = resolver;
64 QString message = category;
65 if ( !details.isEmpty() )
66 message.append( QStringLiteral(
" :: %1" ).arg( details ) );
67 mCategories.push_back( message );
71void QgsReadWriteContext::leaveCategory()
const
73 if ( !mCategories.isEmpty() )
74 mCategories.pop_back();
79 return mCoordinateTransformContext;
95 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.
Wherever an object of this class is available, the derived translate function can be called from.
virtual QString translate(const QString &context, const QString &sourceText, const char *disambiguation=nullptr, int n=-1) const =0
The derived translate() translates with QTranslator and qm file the sourceText.
Allows entering a context category and takes care of leaving this category on deletion of the class.
The class is used as a container of context for various read/write operations on other objects.
MAYBE_UNUSED NODISCARD QgsReadWriteContextCategoryPopper enterCategory(const QString &category, const QString &details=QString()) const
Push a category to the stack.
const QgsProjectTranslator * projectTranslator() const
Returns the project translator.
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.