Class: QgsCustomProjectOpenHandler¶
Abstract base class that may be implemented to handle new project file types within the QGIS application.
This interface allows extending the QGIS interface by adding support for opening additional (non QGS/QGZ) project files, e.g. allowing plugins to add support for opening other vendor project formats (such as ArcGIS MXD documents or MapInfo WOR workspaces).
Handler implementations should indicate the file types they support via
their filters()
implementation, and then implement
handleProjectOpen()
to open the associated files.
Added in version 3.14.
Note
This is an abstract class, with methods which must be implemented by a subclass.
The following methods must be implemented: filters()
, handleProjectOpen()
Class Hierarchy¶
Base classes¶
Abstract Methods
Returns file filters associated with this handler, e.g. "MXD Documents (.mxd)", "MapInfo Workspaces (.wor)". |
|
Called when the specified project file has been opened within QGIS. |
Virtual Methods
In PyQGIS, only methods marked as virtual
can be safely overridden in a Python subclass of QgsCustomProjectOpenHandler. See the FAQ for more details.
Returns |
|
Returns a custom icon used to represent this handler. |
- class qgis.gui.QgsCustomProjectOpenHandler[source]¶
Bases:
QObject
- virtual createDocumentThumbnailAfterOpen(self) bool [source]¶
Returns
True
if a document thumbnail should automatically be created after opening the project.The default behavior is to return
False
.- Return type:
bool
- abstract filters(self) List[str] [source]¶
Returns file filters associated with this handler, e.g. “MXD Documents (.mxd)”, “MapInfo Workspaces (.wor)”.
Each individual filter should be reflected as one entry in the returned list.
- Return type:
List[str]
- abstract handleProjectOpen(self, file: str | None) bool [source]¶
Called when the specified project
file
has been opened within QGIS. IfTrue
is returned, then the handler has accepted this file and it should not be further processed (e.g. by otherQgsCustomProjectOpenHandler
).It it is the subclasses’ responsibility to ignore file types it cannot handle by returning
False
for these.The base class implementation does nothing.
- Parameters:
file (Optional[str])
- Return type:
bool