def drawRect_(self, rect): try: NSColor.whiteColor().set() NSRectFill(self.bounds()) NSColor.blackColor().setFill() NSColor.blueColor().setStroke() p = NSBezierPath.bezierPath() xcursor = 0 string = self.string master = self.master for s in range(0, len(string)): thisPath = NSBezierPath.bezierPath() gsglyph = master.font.glyphs[string[s]] layer = gsglyph.layers[master.id] thisPath.appendBezierPath_(layer.completeBezierPath) # print("X cursor was",xcursor) xcursor = xcursor - layer.bounds.origin.x # print("Moving backwards", layer.bounds.origin.x) t = NSAffineTransform.transform() t.translateXBy_yBy_(xcursor, -master.descender) thisPath.transformUsingAffineTransform_(t) # print("Drawing at",xcursor) # print(thisPath) xcursor = xcursor + layer.bounds.origin.x xcursor = xcursor + layer.bounds.size.width # print("Adding width", layer.bounds.size.width) if s < len(string) - 1: xcursor = xcursor + self.distances[(string[s], string[s + 1])] p.appendBezierPath_(thisPath) t = NSAffineTransform.transform() if xcursor > 0: vscale = self.bounds().size.height / (master.ascender - master.descender) hscale = self.bounds().size.width / xcursor t.scaleBy_(min(hscale, vscale)) p.transformUsingAffineTransform_(t) p.fill() except: print("Oops!", sys.exc_info()[0], "occured.") traceback.print_exc(file=sys.stdout)
def draw(self, scale): # drawBackground(self if not hasattr(self, "prefs"): return s = self.prefs['toolDiameter'] # / scale last = None if not self.pts: return if self.prefs['drawTail']: drawThese = self.pts[:] else: drawThese = [self.pts[-1]] stroke(None) for (x,y), level, tdm in drawThese: key = (x,y),tdm if self.prefs['invert']: fill(1-level) else: fill(level) stroke(None) if self.prefs['toolStyle'] == "grid": rect(x-.5*tdm, y-0.5*tdm, tdm, tdm) else: oval(x-.5*tdm, y-0.5*tdm, tdm, tdm) if round(level, 3) == 0: stroke(None) fill(1) oval(x-.5*self.fullColorMarkerSize, y-.5*self.fullColorMarkerSize, self.fullColorMarkerSize, self.fullColorMarkerSize) elif round(level,3) == 1.0: stroke(None) fill(0) oval(x-.5*self.fullColorMarkerSize, y-.5*self.fullColorMarkerSize, self.fullColorMarkerSize, self.fullColorMarkerSize) self.drawDiameter(x, y, scale, showSize=self.isResizing) (x,y), level, tdm = drawThese[-1] if self.prefs['invert']: fill(1-level) else: fill(level) stroke(None) if self.prefs['toolStyle'] == "grid": rect(x-.5*tdm, y-0.5*tdm, tdm, tdm) else: oval(x-.5*tdm, y-0.5*tdm, tdm, tdm) tp, level, tdm = self.pts[-1] self.getNSView()._drawTextAtPoint( "%3.2f"%(100-100*level), self.textAttributes, tp, yOffset=-30, drawBackground=True, backgroundColor=NSColor.blueColor())
def applicationDidFinishLaunching_(self, aNotification): d = {'StderrColor': NSArchiver.archivedDataWithRootObject_(NSColor.redColor()), 'StdoutColor': NSArchiver.archivedDataWithRootObject_(NSColor.blueColor()), 'CodeColor': NSArchiver.archivedDataWithRootObject_(NSColor.blackColor()), } defaults = NSUserDefaults.standardUserDefaults() defaults.registerDefaults_(d) self.textView.setFont_(self.font()) self._stderrColor = NSUnarchiver.unarchiveObjectWithData_(defaults['StderrColor']) self._stdoutColor = NSUnarchiver.unarchiveObjectWithData_(defaults['StdoutColor']) self._codeColor = NSUnarchiver.unarchiveObjectWithData_(defaults['CodeColor']) self._executeWithRedirectedIO_args_kwds_(self._interp, (), {})
def transformedValue_(self, priority): if priority > 4: return NSColor.redColor() elif priority > 3: return NSColor.orangeColor() elif priority > 2: return NSColor.blueColor() elif priority > 1: return NSColor.greenColor() elif priority > 0: return NSColor.brownColor() else: return NSColor.blackColor()
dict(name='starCols', ui='Slider', args=dict(minValue=1, maxValue=21, value=11, tickMarkCount=11, stopOnTickMarks=True)), dict(name='oddStripeColor', ui='ColorWell', args=dict(color=NSColor.redColor())), dict(name='evenStripeColor', ui='ColorWell', args=dict(color=NSColor.whiteColor())), dict(name='cantonColor', ui='ColorWell', args=dict(color=NSColor.blueColor())), dict(name='starColor', ui='ColorWell', args=dict(color=NSColor.whiteColor())), dict(name='jasperize', ui='Slider', args=dict(minValue=1, maxValue=6, value=1, tickMarkCount=6, stopOnTickMarks=True)), ], globals()) # here are some other variables that will help us draw the flag inch = 72
b = b / 255.0 return NSColor.colorWithCalibratedRed_green_blue_alpha_(r, g, b, a) def rgba(r, g, b, a=1.0): """rgb values between 0 and 1""" return getRGBA(r * 255, b * 255, g * 255, a) rgb = rgba # Preset colors. blackColor = NSColor.blackColor() opaqueBlackColor = getRGBA(0, 0, 0, 0.5) blueColor = NSColor.blueColor() brownColor = NSColor.brownColor() clearColor = NSColor.clearColor() cyanColor = NSColor.cyanColor() darkGrayColor = getRGBA(80, 80, 80) darkGreyColor = darkGrayColor grayColor = NSColor.grayColor() greyColor = grayColor grayColor = NSColor.grayColor() greenColor = NSColor.greenColor() lightGreenColor = getRGBA(75, 211, 154) darkGreenColor = getRGBA(41, 120, 37) lightestGrayColor = NSColor.colorWithCalibratedRed_green_blue_alpha_( 0.98, 0.98, 0.98, 1) lightestGreyColor = lightestGrayColor lightGrayColor = NSColor.lightGrayColor()
""" A class representing dimensions in pixel of an object """ def __init__(self, width, height): self.width = width self.height = height class Color: """ A class representing a color """ def __init__(self, ns_color): self.ns_color = ns_color Color.BLACK = Color(NSColor.blackColor()) Color.BLUE = Color(NSColor.blueColor()) Color.BROWN = Color(NSColor.brownColor()) Color.CYAN = Color(NSColor.cyanColor()) Color.DARK_GRAY = Color(NSColor.darkGrayColor()) Color.GRAY = Color(NSColor.grayColor()) Color.GREEN = Color(NSColor.greenColor()) Color.MAGENTA = Color(NSColor.magentaColor()) Color.ORANGE = Color(NSColor.orangeColor()) Color.PURPLE = Color(NSColor.purpleColor()) Color.RED = Color(NSColor.redColor()) Color.WHITE = Color(NSColor.whiteColor()) Color.YELLOW = Color(NSColor.yellowColor()) class Font: """ Text font """