qgis_layout_plugin/plot_layout/layouts/layout.py

53 lines
1.7 KiB
Python

from qgis.core import (
QgsLayoutItem,
QgsLayoutItemRegistry,
QgsLayoutItemAbstractMetadata,
QgsNetworkAccessManager,
QgsMessageLog,
QgsGeometry
)
ITEM_TYPE = QgsLayoutItemRegistry.PluginItem + 1338
class PlotLayoutItem(QgsLayoutItem):
def __init__(self, layout):
super().__init__(layout)
# self.setCacheMode(QGraphicsItem.NoCache)
# self.plot_settings = []
# self.plot_settings.append(PlotSettings())
# self.linked_map_uuid = ''
# self.linked_map = None
# self.filter_by_map = False
# self.filter_by_atlas = False
# self.web_page = LoggingWebPage(self)
# self.web_page.setNetworkAccessManager(QgsNetworkAccessManager.instance())
# # This makes the background transparent. (copied from QgsLayoutItemLabel)
# palette = self.web_page.palette()
# palette.setBrush(QPalette.Base, Qt.transparent)
# self.web_page.setPalette(palette)
# self.web_page.mainFrame().setZoomFactor(10.0)
# self.web_page.mainFrame().setScrollBarPolicy(Qt.Horizontal, Qt.ScrollBarAlwaysOff)
# self.web_page.mainFrame().setScrollBarPolicy(Qt.Vertical, Qt.ScrollBarAlwaysOff)
# self.web_page.loadFinished.connect(self.loading_html_finished)
# self.html_loaded = False
# self.html_units_to_layout_units = self.calculate_html_units_to_layout_units()
# self.sizePositionChanged.connect(self.refresh)
def type(self):
return ITEM_TYPE
class PlotLayoutItemMetadata(QgsLayoutItemAbstractMetadata):
def __init__(self):
super().__init__(ITEM_TYPE, 'test')
def createItem(self, layout):
return PlotLayoutItem(layout)