def __init__(self, *args): # Invoke parent init QTableView.__init__(self, *args) # Get a reference to the window object self.win = get_app().window # Get Model data self.clip_properties_model = PropertiesModel(self) self.transition_model = TransitionsModel(self) self.files_model = FilesModel(self) # Keep track of mouse press start position to determine when to start drag self.selected = [] self.selected_label = None self.selected_item = None self.new_value = None self.original_data = None self.lock_selection = False self.prev_row = None # Context menu concurrency lock self.menu_lock = False # Setup header columns self.setModel(self.clip_properties_model.model) self.setSelectionBehavior(QAbstractItemView.SelectRows) self.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) self.setWordWrap(True) # Set delegate delegate = PropertyDelegate() self.setItemDelegateForColumn(1, delegate) self.previous_x = -1 # Get table header horizontal_header = self.horizontalHeader() horizontal_header.setSectionResizeMode(QHeaderView.Stretch) vertical_header = self.verticalHeader() vertical_header.setVisible(False) # Refresh view self.clip_properties_model.update_model() self.transition_model.update_model() self.files_model.update_model() # Resize columns self.resizeColumnToContents(0) self.resizeColumnToContents(1) # Connect filter signals get_app().window.txtPropertyFilter.textChanged.connect( self.filter_changed) get_app().window.InsertKeyframe.connect(self.Insert_Action_Triggered) self.doubleClicked.connect(self.doubleClickedCB) self.loadProperties.connect(self.select_item)
def __init__(self, *args): # Invoke parent init QTableView.__init__(self, *args) # Get a reference to the window object self.win = get_app().window # Get Model data self.clip_properties_model = PropertiesModel(self) # Keep track of mouse press start position to determine when to start drag self.selected = [] self.selected_item = None # Setup header columns self.setModel(self.clip_properties_model.model) self.setSelectionBehavior(QAbstractItemView.SelectRows) self.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) self.setWordWrap(True) # Get table header horizontal_header = self.horizontalHeader() horizontal_header.setSectionResizeMode(QHeaderView.Stretch) vertical_header = self.verticalHeader() vertical_header.setVisible(False) # Refresh view self.clip_properties_model.update_model() # Resize columns self.resizeColumnToContents(0) self.resizeColumnToContents(1) # Connect filter signals get_app().window.txtPropertyFilter.textChanged.connect(self.filter_changed) self.doubleClicked.connect(self.double_click)
def __init__(self, *args): # Invoke parent init QTableView.__init__(self, *args) # Get a reference to the window object self.win = get_app().window # Create properties model self.clip_properties_model = PropertiesModel(self) # Get base models for files, transitions self.transition_model = self.win.transition_model.model self.files_model = self.win.files_model.model # Connect to update signals, so our menus stay current self.win.files_model.ModelRefreshed.connect(self.refresh_menu) self.win.transition_model.ModelRefreshed.connect(self.refresh_menu) self.menu_reset = False # Keep track of mouse press start position to determine when to start drag self.selected = [] self.selected_label = None self.selected_item = None self.new_value = None self.original_data = None self.lock_selection = False self.prev_row = None # Context menu icons self.bezier_icon = QIcon(QPixmap(os.path.join(info.IMAGES_PATH, "keyframe-%s.png" % openshot.BEZIER))) self.linear_icon = QIcon(QPixmap(os.path.join(info.IMAGES_PATH, "keyframe-%s.png" % openshot.LINEAR))) self.constant_icon = QIcon(QPixmap(os.path.join(info.IMAGES_PATH, "keyframe-%s.png" % openshot.CONSTANT))) # Setup header columns self.setModel(self.clip_properties_model.model) self.setSelectionBehavior(QAbstractItemView.SelectRows) self.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) self.setWordWrap(True) # Set delegate delegate = PropertyDelegate() self.setItemDelegateForColumn(1, delegate) self.previous_x = -1 # Get table header horizontal_header = self.horizontalHeader() horizontal_header.setSectionResizeMode(QHeaderView.Stretch) vertical_header = self.verticalHeader() vertical_header.setVisible(False) # Refresh view self.clip_properties_model.update_model() # Resize columns self.resizeColumnToContents(0) self.resizeColumnToContents(1) # Connect filter signals get_app().window.txtPropertyFilter.textChanged.connect(self.filter_changed) get_app().window.InsertKeyframe.connect(self.Insert_Action_Triggered) self.doubleClicked.connect(self.doubleClickedCB) self.loadProperties.connect(self.select_item) get_app().window.CaptionTextUpdated.connect(self.caption_text_updated)