def __init__(self, settings): QGraphicsRectItem.__init__(self) self.__settings = settings self.__x = None self.__y = None self.__width = None self.__height = None
def __init__(self, itemRef, cmlRef, canvas, x, y): CommentCellBase.__init__(self, itemRef, canvas, x, y) ColorMixin.__init__(self, None, canvas.settings.docLinkBGColor, canvas.settings.docLinkFGColor, canvas.settings.docLinkBorderColor, colorSpec=cmlRef) QGraphicsRectItem.__init__(self, canvas.scopeRectangle) self.cmlRef = cmlRef # They all have the same icon if cmlRef.link is not None and cmlRef.anchor is not None: IconMixin.__init__(self, canvas, 'docanchor.svg', 'Jump to the documentation') self.iconItem.setCursor(QCursor(Qt.PointingHandCursor)) else: if cmlRef.link is not None: IconMixin.__init__(self, canvas, 'doclink.svg', 'Jump to the documentation') self.iconItem.setCursor(QCursor(Qt.PointingHandCursor)) else: IconMixin.__init__(self, canvas, 'anchor.svg', 'Documentation anchor') # They all are double clickable # This makes double click delivered self.setFlag(QGraphicsItem.ItemIsSelectable, True)
def __init__(self, node, fileName, lineNumber, outside, nodeFont): QGraphicsRectItem.__init__(self) self.__node = node self.__fileName = fileName self.__lineNumber = lineNumber self.__outside = outside self.__font = DEFAULT_FONT if nodeFont: self.__font = nodeFont posX = node.posX - node.width / 2.0 posY = node.posY - node.height / 2.0 QGraphicsRectItem.__init__(self, posX, posY, node.width, node.height) self.setRectanglePen() # node.color is like "#fe0400" if node.color.startswith("#"): color = QColor(int(node.color[1:3], 16), int(node.color[3:5], 16), int(node.color[5:], 16)) else: color = QColor(220, 255, 220) self.setBrush(color) # To make item selectable self.setFlag(QGraphicsItem.ItemIsSelectable, os.path.isabs(self.__fileName) and self.__lineNumber > 0) # Set tooltip as a function docstring if fileName != "" and lineNumber != 0: self.setToolTip(GlobalData().getFileLineDocstring( fileName, lineNumber))
def __init__(self, ref, groupBeginCMLRef, canvas, x, y): GroupItemBase.__init__(self, groupBeginCMLRef, ref, canvas, x, y) ColorMixin.__init__(self, None, canvas.settings.openGroupBGColor, canvas.settings.openGroupFGColor, canvas.settings.openGroupBorderColor, colorSpec=groupBeginCMLRef) QGraphicsRectItem.__init__(self, canvas.scopeRectangle) self.kind = CellElement.OPENED_GROUP_BEGIN self.connector = None self.topLeftControl = None self.highlight = False # These two items are filled when rendering is finished for all the # items in the group self.groupWidth = None self.groupHeight = None self.groupEndRow = None self.groupEndColumn = None self.selfAndDeeperNestLevel = None self.selfMaxNestLevel = None # Used in vcanvas.py # To make double click delivered self.setFlag(QGraphicsItem.ItemIsSelectable, True)
def __init__(self, canvas, x, y, w, h): CellElement.__init__(self, None, canvas, x=None, y=None) QGraphicsRectItem.__init__(self, x, y, w, h) self.kind = CellElement.RECTANGLE self.pen = None self.brush = None
def __init__(self, ref): QGraphicsRectItem.__init__(self) self.ref = ref settings = self.ref.canvas.settings self.__width = settings.openGroupHSpacer * 2 - 1 self.__height = settings.openGroupVSpacer * 2 - 1 self.setAcceptHoverEvents(True)
def __init__(self, ref): CellElement.__init__(self, ref, ref.canvas, None, None) QGraphicsRectItem.__init__(self) self.kind = CellElement.GROUP_CORNER_CONROL settings = self.canvas.settings self.__width = settings.openGroupHSpacer * 2 - 1 self.__height = settings.openGroupVSpacer * 2 - 1 self.setAcceptHoverEvents(True)
def __init__(self, ref, canvas, x, y): GroupItemBase.__init__(self) CellElement.__init__(self, ref, canvas, x, y) QGraphicsRectItem.__init__(self, canvas.scopeRectangle) self.kind = CellElement.COLLAPSED_GROUP self.__textRect = None self.connector = None # To make double click delivered self.setFlag(QGraphicsItem.ItemIsSelectable, True)
def __init__(self, canvas): CellElement.__init__(self, None, canvas, x=None, y=None) QGraphicsRectItem.__init__(self) self.kind = CellElement.RUBBER_BAND self.__settings = canvas.settings self.__x = None self.__y = None self.__width = None self.__height = None
def __init__(self, fileName, needConnector, canvas, x, y): CellElement.__init__(self, None, canvas, x, y) TextMixin.__init__(self) QGraphicsRectItem.__init__(self, canvas.scopeRectangle) self.kind = CellElement.DEPS_SELF_MODULE self.fileName = fileName self.needConnector = needConnector self.connector = None # To make double click delivered self.setFlag(QGraphicsItem.ItemIsSelectable, True)
def __init__(self, ref, text, drawText=True): BadgeItemBase.__init__(self, ref, text) QGraphicsRectItem.__init__(self) self.kind = CellElement.BADGE self.__drawText = drawText s = ref.canvas.settings self.__bgColor = s.badgeBGColor self.__fgColor = s.badgeFGColor self.__frameColor = s.badgeBorderColor self.__needRect = True
def __init__(self, node): QGraphicsRectItem.__init__(self) self.__node = node posX = node.posX - node.width / 2.0 posY = node.posY - node.height / 2.0 QGraphicsRectItem.__init__(self, posX, posY, node.width, node.height) pen = QPen(QColor(0, 0, 0)) pen.setWidth(2) self.setPen(pen) self.setBrush(QColor(216, 216, 207))
def __init__(self, ref, canvas, x, y): CellElement.__init__(self, ref, canvas, x, y) TextMixin.__init__(self) ColorMixin.__init__(self, ref, self.canvas.settings.codeBlockBGColor, self.canvas.settings.codeBlockFGColor, self.canvas.settings.codeBlockBorderColor) QGraphicsRectItem.__init__(self, canvas.scopeRectangle) self.kind = CellElement.CODE_BLOCK self.connector = None # To make double click delivered self.setFlag(QGraphicsItem.ItemIsSelectable, True)
def __init__(self, ref, canvas, x, y): CellElement.__init__(self, ref, canvas, x, y) QGraphicsRectItem.__init__(self) self.kind = CellElement.INDEPENDENT_MINIMIZED_COMMENT self.__setTooltip() self.leadingForElse = False self.sideForElse = False # To make double click delivered self.setFlag(QGraphicsItem.ItemIsSelectable, True)
def __init__(self, ref, canvas, x, y): CellElement.__init__(self, ref, canvas, x, y) TextMixin.__init__(self) ColorMixin.__init__(self, ref, self.canvas.settings.importBGColor, self.canvas.settings.importFGColor, self.canvas.settings.importBorderColor) IconMixin.__init__(self, canvas, 'import.svg', 'import') QGraphicsRectItem.__init__(self, canvas.scopeRectangle) self.kind = CellElement.IMPORT self.connector = None # To make double click delivered self.setFlag(QGraphicsItem.ItemIsSelectable, True)
def __init__(self, ref, canvas, x, y): CellElement.__init__(self, ref, canvas, x, y) TextMixin.__init__(self) ColorMixin.__init__(self, ref, self.canvas.settings.returnBGColor, self.canvas.settings.returnFGColor, self.canvas.settings.returnBorderColor) IconMixin.__init__(self, canvas, 'return.svg', 'return') QGraphicsRectItem.__init__(self) self.kind = CellElement.RETURN self.connector = None # To make double click delivered self.setFlag(QGraphicsItem.ItemIsSelectable, True)
def __init__(self, ref, groupBeginCMLRef, canvas, x, y): GroupItemBase.__init__(self, groupBeginCMLRef, ref, canvas, x, y) ColorMixin.__init__(self, None, canvas.settings.collapsedGroupBGColor, canvas.settings.collapsedGroupFGColor, canvas.settings.collapsedGroupBorderColor, colorSpec=groupBeginCMLRef) QGraphicsRectItem.__init__(self, canvas.scopeRectangle) self.kind = CellElement.COLLAPSED_GROUP self.connector = None # To make double click delivered self.setFlag(QGraphicsItem.ItemIsSelectable, True)
def __init__(self, ref, isSideComment): BadgeItemBase.__init__(self, ref, '#', 'hiddencomment.svg') QGraphicsRectItem.__init__(self) self.kind = CellElement.SCOPE_COMMENT_BADGE self.isSideComment = isSideComment if self.isSideComment: val = self.ref.ref.sideComment.getDisplayValue() else: val = self.ref.ref.leadingComment.getDisplayValue() self.setToolTip('<pre>' + escape(val) + '</pre>') # To make double click delivered self.setFlag(QGraphicsItem.ItemIsSelectable, True)
def __init__(self, iconFileName, ref, canvas, x, y): CellElement.__init__(self, ref, canvas, x, y) IconMixin.__init__(self, canvas, iconFileName) QGraphicsRectItem.__init__(self, canvas.scopeRectangle) # Visually the icon looks a bit too big so reduce the size to 80% self.iconItem.setIconHeight(self.iconItem.iconHeight() * 0.8) self.rectWidth = None self.rectHeight = None self.connector = None self.rectRadius = None # To make double click delivered self.setFlag(QGraphicsItem.ItemIsSelectable, True)
def __init__(self, node, refFile, srcobj, deviceDPI): self.__node = node self.__srcobj = srcobj self.__refFile = refFile self.__pixelsPerLine = self.calcPixelsPerLine() posX = node.posX - node.width / 2.0 posY = node.posY - node.height / 2.0 QGraphicsRectItem.__init__(self, posX, posY, node.width, node.height) pen = QPen(QColor(0, 0, 0)) pen.setWidth(2) self.setPen(pen) # To make double click delivered self.setFlag(QGraphicsItem.ItemIsSelectable, True)
def __init__(self, ref, canvas, x, y, bgColor, fgColor, borderColor): CellElement.__init__(self, ref, canvas, x, y) TextMixin.__init__(self) ColorMixin.__init__(self, ref, bgColor, fgColor, borderColor) QGraphicsRectItem.__init__(self) self.connector = None # Cache for the size self.xPos = None self.yPos = None self.rectWidth = None self.rectHeight = None # To make double click delivered self.setFlag(QGraphicsItem.ItemIsSelectable, True)
def __init__(self, node, refFile, srcobj): QGraphicsRectItem.__init__(self) self.__node = node self.__srcobj = srcobj self.__refFile = refFile posX = node.posX - node.width / 2.0 posY = node.posY - node.height / 2.0 QGraphicsRectItem.__init__(self, posX, posY, node.width, node.height) pen = QPen(QColor(0, 0, 0)) pen.setWidth(2) self.setPen(pen) # To make double click delivered self.setFlag(QGraphicsItem.ItemIsSelectable, True) self.setBrush(QColor(253, 245, 145))
def __init__(self, node, refFile, docstring): QGraphicsRectItem.__init__(self) self.__node = node self.__refFile = refFile self.__docstring = docstring posX = node.posX - node.width / 2.0 posY = node.posY - node.height / 2.0 QGraphicsRectItem.__init__(self, posX, posY, node.width, node.height) pen = QPen(QColor(0, 0, 0)) pen.setWidth(2) self.setPen(pen) self.setBrush(QColor(220, 255, 220)) # System modules are clickable self.setFlag(QGraphicsItem.ItemIsSelectable, True)
def __init__(self, ref, canvas, x, y): CellElement.__init__(self, ref, canvas, x, y) TextMixin.__init__(self) ColorMixin.__init__(self, ref, self.canvas.settings.ifBGColor, self.canvas.settings.ifFGColor, self.canvas.settings.ifBorderColor) QGraphicsRectItem.__init__(self, canvas.scopeRectangle) self.kind = CellElement.IF self.vConnector = None self.rhsConnector = None self.leftBadge = None self.yBelow = False self.needHConnector = True self.rhsShift = 0 # To make double click delivered self.setFlag(QGraphicsItem.ItemIsSelectable, True)
def __init__(self, settings, bgColor, fgColor, borderColor, width, height): QGraphicsRectItem.__init__(self) self.__settings = settings self.__bgColor = bgColor self.__fgColor = fgColor self.__borderColor = borderColor self.__viewWidth = width self.__viewHeight = height self.__textRect = self.__settings.monoFontMetrics.boundingRect( 0, 0, maxsize, maxsize, 0, 'Sample') vPadding = 2 * settings.vTextPadding self.__rectHeight = self.__textRect.height() + vPadding hPadding = 2 * settings.hTextPadding self.__rectWidth = max(self.__textRect.width() + hPadding, settings.minWidth)
def __init__(self, ref, canvas, x, y): CellElement.__init__(self, ref, canvas, x, y) ColorMixin.__init__(self, None, canvas.settings.docLinkBGColor, canvas.settings.docLinkFGColor, canvas.settings.docLinkBorderColor, colorSpec=ref) QGraphicsRectItem.__init__(self) self.pixmapFile, tooltip = getDoclinkIconAndTooltip(ref, hidden=True) if tooltip: self.setToolTip('<pre>' + escape(tooltip) + '</pre>') self.kind = CellElement.INDEPENDENT_MINIMIZED_DOC # To make double click delivered self.setFlag(QGraphicsItem.ItemIsSelectable, True)
def __init__(self, ref, text): CellElement.__init__(self, ref, ref.canvas, None, None) QGraphicsRectItem.__init__(self) self.kind = CellElement.BADGE self.__text = text s = ref.canvas.settings self.__textRect = s.badgeFontMetrics.boundingRect( 0, 0, maxsize, maxsize, 0, text) self.width = self.__textRect.width() + 2 * s.badgeHSpacing self.height = self.__textRect.height() + 2 * s.badgeVSpacing self.__bgColor = s.badgeBGColor self.__fgColor = s.badgeFGColor self.__frameColor = s.badgeBorderColor self.__needRect = True
def __init__(self, ref, text): BadgeItemBase.__init__(self, ref, text) s = ref.canvas.settings ColorMixin.__init__(self, ref.ref, s.docstringBGColor, s.docstringFGColor, s.docstringBorderColor, isDocstring=True) QGraphicsRectItem.__init__(self) self.kind = CellElement.SCOPE_DOCSTRING_BADGE docstr = self.ref.ref.docstring.getDisplayValue() self.setToolTip('<pre>' + escape(docstr) + '</pre>') # To make double click delivered self.setFlag(QGraphicsItem.ItemIsSelectable, True)
def __init__(self, ref, text): QGraphicsRectItem.__init__(self) self.ref = ref self.__text = text self.__textRect = ref.canvas.settings.badgeFontMetrics.boundingRect( 0, 0, maxsize, maxsize, 0, text) self.__hSpacing = 2 self.__vSpacing = 1 self.__radius = 2 self.__width = self.__textRect.width() + 2 * self.__hSpacing self.__height = self.__textRect.height() + 2 * self.__vSpacing self.__bgColor = ref.canvas.settings.badgeBGColor self.__fgColor = ref.canvas.settings.badgeFGColor self.__frameColor = ref.canvas.settings.badgeLineColor self.__font = ref.canvas.settings.badgeFont self.__needRect = True
def __init__(self, ref): self.cmlRef = getDocComment(ref.ref.leadingCMLComments) pixmapFile, _ = getDoclinkIconAndTooltip(self.cmlRef) BadgeItemBase.__init__(self, ref, 'd', pixmapFile) s = ref.canvas.settings ColorMixin.__init__(self, None, s.docLinkBGColor, s.docLinkFGColor, s.docLinkBorderColor, colorSpec=self.cmlRef) QGraphicsRectItem.__init__(self) self.kind = CellElement.SCOPE_DOCLINK_BADGE val = self.cmlRef.getTitle() self.setToolTip('<pre>' + escape(val) + '</pre>') # To make double click delivered self.setFlag(QGraphicsItem.ItemIsSelectable, True)