def redraw(self, ctl, part): try: Qd.SetPort(self.wid) Qd.RGBBackColor((0xffff, 0xffff, 0xffff)) if self._background_image: self._redrawimage(self.rect, self._background_image) else: Qd.EraseRect(self.rect) Qd.RGBForeColor((0x7fff, 0x7fff, 0x7fff)) Qd.FrameRect(self.rect) for r in self.otherrects: Qd.RGBForeColor((0x0, 0x7fff, 0x7fff)) Qd.FrameRect(r) self.drawourrect() except: import traceback, sys exc_type, exc_value, exc_traceback = sys.exc_info() traceback.print_exception(exc_type, exc_value, None) traceback.print_tb(exc_traceback)
def drawourrect(self): if self.ourrect is None: return port = self.wid.GetWindowPort() Qd.RGBForeColor((0x0, 0, 0)) oldmode = port.pnMode Qd.PenMode(QuickDraw.srcXor) Qd.FrameRect(self.ourrect) for l in self.lurven: Qd.PaintRect(l) Qd.PenMode(oldmode)
def _setfgcolor(self, fgcolor): ## if fgcolor == 'theme_background': ## depth=16 # XXX ## App.SetThemePen(Appearance.kThemeBrushDocumentWindowBackground, depth, 1) ## return # XXX Not sure about this: if fgcolor == None: fgcolor = self._bgcolor if fgcolor == None: fgcolor = (0, 0, 0) Qd.RGBForeColor(fgcolor)
def draw(self, visRgn=None): if self._visible: (font, style, size, color) = self.fontsettings fontid = GetFNum(font) savestate = Qd.GetPenState() Qd.TextFont(fontid) Qd.TextFace(style) Qd.TextSize(size) Qd.RGBForeColor(color) Qd.RGBBackColor(self._backgroundcolor) TE.TETextBox(self.text, self._bounds, self.align) Qd.RGBBackColor((0xffff, 0xffff, 0xffff)) Qd.SetPenState(savestate)
def do_update(self): if self.must_clear: self._clear_html() visregion = self.wid.GetWindowPort().visRgn myregion = Qd.NewRgn() Qd.RectRgn(myregion, self.rect) # or is it self.ted.WEGetViewRect() ? Qd.SectRgn(myregion, visregion, myregion) # Waste doesn't honour the clipping region, do it ourselves clipregion = Qd.NewRgn() Qd.GetClip(clipregion) Qd.SectRgn(myregion, clipregion, myregion) if Qd.EmptyRgn(myregion): return Qd.RGBBackColor(self.bg_color) Qd.RGBForeColor((0, 0xffff, 0)) # DBG Qd.EraseRgn(visregion) self.ted.WEUpdate(myregion)
from Carbon import Qt
def newGIF(obj): handle = obj.WEGetObjectDataHandle() width, height, pixmap = _gifkeeper.get(handle.data) return width + 2 * IMAGEBORDER, height + 2 * IMAGEBORDER def drawGIF((l, t, r, b), obj): handle = obj.WEGetObjectDataHandle() width, height, pixmap = _gifkeeper.get(handle.data) srcrect = 0, 0, width, height dstrect = l + IMAGEBORDER, t + IMAGEBORDER, r - IMAGEBORDER, b - IMAGEBORDER port = Qd.GetPort() bg = port.rgbBkColor fg = port.rgbFgColor Qd.RGBBackColor((0xffff, 0xffff, 0xffff)) Qd.RGBForeColor((0, 0, 0)) ## Qd.CopyBits(pixmap, port.GetPortBitMapForCopyBits(), srcrect, dstrect, ## QuickDraw.srcCopy+QuickDraw.ditherCopy, None) Qd.CopyBits(pixmap, port.GetPortBitMapForCopyBits(), srcrect, dstrect, QuickDraw.srcCopy, None) Qd.RGBBackColor(bg) Qd.RGBForeColor(fg) # XXXX paste pixmap on screen return 0 def freeGIF(obj): handle = obj.WEGetObjectDataHandle() _gifkeeper.delete(handle.data) return 0
def _setblackwhitecolors(self): # For image draw Qd.RGBBackColor((0xffff, 0xffff, 0xffff)) Qd.RGBForeColor((0, 0, 0))
'''