Beispiel #1
0
 def reDo(self):
     """
         perform a redo operation
     """
     self.__logger.debug('reDo')
     try:
         _activeRedo = self.__UndoDb.dbRedo()
         self.__EntityDb.markUndoVisibility(_activeRedo, 1)
         self.__EntityDb.performCommit()
         self.undoRedoEvent(self, None)
     except UndoDb:
         raise UndoDb("Generical problem to perform reDo")
Beispiel #2
0
 def unDo(self):
     """
         perform an undo operation
     """
     self.__logger.debug('unDo')
     try:
         self.__EntityDb.markUndoVisibility(self.__UndoDb.getActiveUndoId(),
                                            0)
         _newUndo = self.__UndoDb.dbUndo()
         self.__EntityDb.performCommit()
         self.undoRedoEvent(self, None)
     except UndoDb:
         raise UndoDb("Generical problem to perform undo")
Beispiel #3
0
 def __init__(self, dbPath=None):
     """
         init of the kernel
     """
     self.__logger = logging.getLogger('DbKernel')
     self.__logger.debug('__init__')
     BaseDb.__init__(self)
     # set the events
     self.__logger.debug('set events')
     self.saveEntityEvent = PyCadEvent()
     self.deleteEntityEvent = PyCadEvent()
     self.massiveDeleteEvent = PyCadEvent()
     self.showEntEvent = PyCadEvent()
     self.hideEntEvent = PyCadEvent()
     self.updateShowEntEvent = PyCadEvent()
     self.undoRedoEvent = PyCadEvent()
     self.handledErrorEvent = PyCadEvent()
     #create Connection
     self.createConnection(dbPath)
     # inizialize extentionObject
     self.__UndoDb = UndoDb(self.getConnection())
     self.__EntityDb = EntityDb(self.getConnection())
     self.__RelationDb = RelationDb(self.getConnection())
     # Some inizialization parameter
     self.__bulkCommit = False
     self.__bulkUndoIndex = -1  # undo index are always positive so we do not brake in case missing entity id
     self.__entId = self.__EntityDb.getNewEntId()
     #   set the default style
     self.__logger.debug('Set Style')
     self.__activeStyleObj = None
     self.__activeStyleObj = self.getMainStyle()
     self.__settings = self.getDbSettingsObject()
     self.__property = {}
     #************************
     #Inizialize Layer structure
     #************************
     self.__logger.debug('Inizialize layer structure')
     try:
         self.__LayerTree = LayerTree(self)
     except StructuralError:
         raise StructuralError('Unable to create LayerTree structure')
     self.__logger.debug('Done inizialization')