Esempio n. 1
0
    def onClick(self, event):
        if utils.doesEventHitWidgetOrChildren(event, self.nodeToggle):
            self.toggleExpand()
        else:
            self.widget.extendSelection(self)

        event.preventDefault()
        event.stopPropagation()
Esempio n. 2
0
	def onDragLeave(self, event):
		"""
			Remove all drop indicating classes.
		"""
		# Only leave if target not before or after
		if utils.doesEventHitWidgetOrChildren(event, self.nodeWrapper):
			self.leaveElement = False
			return
		else:
			self.leaveElement = True

		if "beforeDiv" in dir(self) or "afterDiv" in dir(self):
			w = html5.window
			w.setTimeout(self.disableDragMarkers, 2000)  # test later to leave, to avoid flickering...
Esempio n. 3
0
    def onDragOver(self, event):
        """
			Test wherever the current drag would mean "make it a child of us", "insert before us" or
			"insert after us" and apply the correct classes.
		"""
        if self.isDragged:
            return

        if "afterDiv" in dir(self):
            self.afterDiv.show()  # show dropzones
        if "beforeDiv" in dir(self):
            self.beforeDiv.show()

        self.leaveElement = False  # reset leaveMarker

        self["title"] = translate("vi.data-insert")
        if "beforeDiv" in dir(self) and event.target == self.beforeDiv.element:
            self.currentStatus = "top"
            self.removeClass("insert-here")
            self.beforeDiv.addClass("is-focused")
            self.afterDiv.removeClass("is-focused")

        elif "afterDiv" in dir(self) and event.target == self.afterDiv.element:
            self.currentStatus = "bottom"
            self.removeClass("insert-here")
            self.beforeDiv.removeClass("is-focused")
            self.afterDiv.addClass("is-focused")

        elif utils.doesEventHitWidgetOrChildren(event, self):
            self.currentStatus = "inner"
            self.addClass("insert-here")
            if "beforeDiv" in dir(self):
                self.beforeDiv.removeClass("is-focused")
            if "afterDiv" in dir(self):
                self.afterDiv.removeClass("is-focused")
            self["title"] = translate(u"In das Element einfügen")

        event.preventDefault()
        event.stopPropagation()