class FeatureTemplates: def __init__(self, iface): self.iface = iface self.dock = None self.plugin_dir = os.path.dirname(__file__) locale = QSettings().value("locale/userLocale")[0:2] localePath = os.path.join(self.plugin_dir, 'i18n', 'featuretemplates_{}.qm'.format(locale)) if os.path.exists(localePath): self.translator = QTranslator() self.translator.load(localePath) if qVersion() > '4.3.3': QCoreApplication.installTranslator(self.translator) def initGui(self): self.action = QAction(QIcon(":/plugins/featuretemplates/icon.png"), u"Feature Templates", self.iface.mainWindow()) self.action.triggered.connect(self.show_dock) self.iface.addToolBarIcon(self.action) self.iface.addPluginToMenu(u"&FeatureTemplates", self.action) def unload(self): self.iface.removePluginMenu(u"&FeatureTemplates", self.action) self.iface.removeToolBarIcon(self.action) if self.dock: self.iface.removeDockWidget(self.dock) def show_dock(self): if not self.dock: self.dock = QDockWidget('Feature Templates', self.iface.mainWindow()) self.widget = FeatureTemplatesWidget(self.dock) template = {'name' : 'Test'} self.model = FeatureTemplatesModel(templates=[template]) self.widget.setModel(self.model) self.dock.setWidget(self.widget) self.iface.addDockWidget(Qt.RightDockWidgetArea, self.dock) self.dock.show()
def show_dock(self): if not self.dock: self.dock = QDockWidget('Feature Templates', self.iface.mainWindow()) self.widget = FeatureTemplatesWidget(self.dock) template = {'name' : 'Test'} self.model = FeatureTemplatesModel(templates=[template]) self.widget.setModel(self.model) self.dock.setWidget(self.widget) self.iface.addDockWidget(Qt.RightDockWidgetArea, self.dock) self.dock.show()