Exemplo n.º 1
0
 def __on_resource_edit(self):
   self.edit_index = self.lv_resources.currentIndex()
   self.new_dlg = ResourceDialog(self.root_dir, self.details_parent)
   obj = self.data_model.data(self.edit_index, QtCore.Qt.EditRole)
   self.new_dlg.setModel(obj)
   self.new_dlg.show()
   self.new_dlg.accepted.connect(self.__on_change_accepted)
   self.new_dlg.rejected.connect(self.__on_add_rejected)
Exemplo n.º 2
0
 def on_add_clicked(self):
   self.edit_index = None
   self.new_dlg = ResourceDialog(self.root_dir, self.details_parent)
   self.new_dlg.show()
   self.new_dlg.accepted.connect(self.__on_add_accepted)
   self.new_dlg.rejected.connect(self.__on_add_rejected)
   #seld.data_model
   pass
Exemplo n.º 3
0
class ResourcesWindow(QtGui.QWidget, Ui_ResourcesWindow):
  def __init__(self, root_dir, *args, **kwargs):
    super(ResourcesWindow, self).__init__(*args, **kwargs)
    self.setupUi(self)
    self.show()
    self.root_dir = root_dir
    self.details_parent = None

  def setDetailsContainer(self, container):
    self.details_parent = container

  def setModel(self, model):
    self.data_model = model
    self.lv_resources.setModel(self.data_model)
    self.lv_resources.set_resource_root(self.root_dir)
    self.lv_resources.doubleClicked.connect(self.__on_resource_edit)
    self.lv_resources.installEventFilter(self)

    #self.lv_resources.key
    self.btn_add.clicked.connect(self.on_add_clicked)
    self.btn_delete.clicked.connect(self.on_remove_clicked)

  def eventFilter(self, sender, event):
    if event.type() == QtCore.QEvent.KeyPress and \
       event.matches(QtGui.QKeySequence.InsertParagraphSeparator) and \
       sender == self.lv_resources:
      self.__on_resource_edit()
    else:
      return super(ResourcesWindow, self).eventFilter(sender, event)

  def __on_resource_edit(self):
    self.edit_index = self.lv_resources.currentIndex()
    self.new_dlg = ResourceDialog(self.root_dir, self.details_parent)
    obj = self.data_model.data(self.edit_index, QtCore.Qt.EditRole)
    self.new_dlg.setModel(obj)
    self.new_dlg.show()
    self.new_dlg.accepted.connect(self.__on_change_accepted)
    self.new_dlg.rejected.connect(self.__on_add_rejected)

  def on_add_clicked(self):
    self.edit_index = None
    self.new_dlg = ResourceDialog(self.root_dir, self.details_parent)
    self.new_dlg.show()
    self.new_dlg.accepted.connect(self.__on_add_accepted)
    self.new_dlg.rejected.connect(self.__on_add_rejected)
    #seld.data_model
    pass

  def __on_add_accepted(self):
    new_res = self.new_dlg.get_dict()
    if new_res:
      self.data_model.appendData(new_res)

  def __on_change_accepted(self):
    new_res = self.new_dlg.get_dict()
    if new_res:
      self.data_model.setData(self.lv_resources.currentIndex(), new_res)


  def __on_add_rejected(self):
    print "add rejected"

  def on_remove_clicked(self):
    self.dialog = ConfirmDialog("Are you sure you want to delete this item")
    self.dialog.accepted.connect(self.on_remove_confirmed)
    self.dialog.rejected.connect(self.on_remove_rejected)
    self.dialog.show()

  def on_remove_confirmed(self):
    print "remove clicked"
    #print "will remove selected resource when implemented"
    print "selected resource is "+str(self.lv_resources.currentIndex().row())
    self.data_model.removeData(self.lv_resources.currentIndex().row())

  def on_remove_rejected(self):
    print "remove cancelled"