Added KeySensitiveListView for objects in project. Delete key deletes selected objects.

This commit is contained in:
jpcaram
2015-01-01 22:27:55 -05:00
parent c66fd901a3
commit 8c082365d7
4 changed files with 18 additions and 9 deletions

View File

@@ -4,6 +4,15 @@ import inspect # TODO: Remove
import FlatCAMApp import FlatCAMApp
from PyQt4 import Qt, QtGui, QtCore from PyQt4 import Qt, QtGui, QtCore
class KeySensitiveListView(QtGui.QListView):
keyPressed = QtCore.pyqtSignal(int)
def keyPressEvent(self, event):
super(KeySensitiveListView, self).keyPressEvent(event)
self.keyPressed.emit(event.key())
class ObjectCollection(QtCore.QAbstractListModel): class ObjectCollection(QtCore.QAbstractListModel):
""" """
Object storage and management. Object storage and management.
@@ -35,7 +44,8 @@ class ObjectCollection(QtCore.QAbstractListModel):
self.checked_indexes = [] self.checked_indexes = []
### View ### View
self.view = QtGui.QListView() #self.view = QtGui.QListView()
self.view = KeySensitiveListView()
self.view.setSelectionMode(Qt.QAbstractItemView.ExtendedSelection) self.view.setSelectionMode(Qt.QAbstractItemView.ExtendedSelection)
self.view.setModel(self) self.view.setModel(self)
@@ -44,9 +54,11 @@ class ObjectCollection(QtCore.QAbstractListModel):
## GUI Events ## GUI Events
self.view.selectionModel().selectionChanged.connect(self.on_list_selection_change) self.view.selectionModel().selectionChanged.connect(self.on_list_selection_change)
self.view.activated.connect(self.on_item_activated) self.view.activated.connect(self.on_item_activated)
self.view.keyPressed.connect(self.on_key)
def on_key(self, event): def on_key(self, key):
print event if key == QtCore.Qt.Key_Delete:
self.delete_active()
def on_mouse_down(self, event): def on_mouse_down(self, event):
print "Mouse button pressed on list" print "Mouse button pressed on list"

View File

@@ -436,7 +436,6 @@ class Geometry(object):
self.solid_geometry = [cascaded_union(self.solid_geometry)] self.solid_geometry = [cascaded_union(self.solid_geometry)]
class ApertureMacro: class ApertureMacro:
""" """
Syntax of aperture macros. Syntax of aperture macros.

View File

@@ -2,8 +2,6 @@
apt-get install libpng-dev apt-get install libpng-dev
apt-get install libfreetype6 libfreetype6-dev apt-get install libfreetype6 libfreetype6-dev
apt-get install python-dev apt-get install python-dev
#apt-get install python-gi
#apt-get install libgtk-3-devel
apt-get install python-qt4 apt-get install python-qt4
apt-get install python-numpy python-scipy python-matplotlib apt-get install python-numpy python-scipy python-matplotlib
apt-get install libgeos-dev apt-get install libgeos-dev