31 from PyQt5.QtWidgets import QTreeView, QAbstractItemView, QMenu, QSizePolicy
33 from classes.app
import get_app
34 from windows.models.effects_model
import EffectsModel
39 import simplejson
as json
50 app.context_menu_object =
"effects" 53 menu.addAction(self.win.actionDetailsView)
54 menu.addAction(self.win.actionThumbnailView)
55 menu.exec_(QCursor.pos())
62 selected_row = self.effects_model.model.itemFromIndex(self.selectionModel().selectedIndexes()[0]).row()
63 icon = self.effects_model.model.item(selected_row, 0).icon()
67 drag.setMimeData(self.effects_model.model.mimeData(self.selectionModel().selectedIndexes()))
74 get_app().window.effectsFilter.setText(
"")
77 if self.win.effectsFilter.text() ==
"":
78 self.win.actionEffectsClear.setEnabled(
False)
80 self.win.actionEffectsClear.setEnabled(
True)
84 self.effects_model.update_model()
90 QTreeView.__init__(self, *args)
99 self.setAcceptDrops(
True)
100 self.setDragEnabled(
True)
101 self.setDropIndicatorShown(
True)
104 self.setModel(self.effects_model.model)
105 self.setIconSize(QSize(75, 62))
106 self.setIndentation(0)
107 self.setSelectionBehavior(QTreeView.SelectRows)
108 self.setSelectionBehavior(QAbstractItemView.SelectRows)
109 self.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
110 self.setWordWrap(
True)
111 self.setStyleSheet(
'QTreeView::item { padding-top: 2px; }')
119 app.window.actionEffectsClear.triggered.connect(self.
clear_filter)
def get_app()
Returns the current QApplication instance of OpenShot.
def startDrag(self, event)
Override startDrag method to display custom icon.
def contextMenuEvent(self, event)
A TreeView QWidget used on the main window.