def _receive_response(self, task, response): """ Called by the delegate when a response has been received. This call is expected only on background threads, and thus may not do anything that is not Python-thread-safe. This means that, for example, it is safe to grab things from the _tasks dictionary, but it is not safe to make other method calls on this object unless they explicitly state that they are safe in background threads. """ queue, request = self._tasks[task] resp = Response() resp.status_code = getKey(response, 'statusCode') resp.reason = '' # TODO: Why do I have to do this? raw_headers = getKey(response, 'allHeaderFields') resp.headers = CaseInsensitiveDict(raw_headers) resp.encoding = get_encoding_from_headers(resp.headers) # TODO: This needs to point to an object that we can use to provide # the various raw things that requests needs. resp.raw = None if isinstance(request.url, bytes): resp.url = request.url.decode('utf-8') else: resp.url = request.url resp.request = request resp.connection = self # Put this response on the queue. queue.put_nowait(resp)
def changeTextFont_(self, sender): "The user changed the current font selection, so update the default font" # Get font name and size from user defaults defaults = NSUserDefaultsController.sharedUserDefaultsController().values() fontName = getKey(defaults, 'FontName') fontSize = getKey(defaults, 'FontSize') # Create font from name and size; initialize font panel font = NSFont.fontWithName_size_(fontName, fontSize) if font is None: font = NSFont.systemFontOfSize_(NSFont.systemFontSize()) NSFontManager.sharedFontManager().setSelectedFont_isMultiple_(font, False) NSFontManager.sharedFontManager().orderFrontFontPanel_(self) # Set window as firstResponder so we get changeFont: messages self.window().makeFirstResponder_(self.window())
def changeTextFont_(self, sender): "The user changed the current font selection, so update the default font" # Get font name and size from user defaults defaults = NSUserDefaultsController.sharedUserDefaultsController( ).values() fontName = getKey(defaults, "FontName") fontSize = getKey(defaults, "FontSize") # Create font from name and size; initialize font panel font = NSFont.fontWithName_size_(fontName, fontSize) if font is None: font = NSFont.systemFontOfSize_(NSFont.systemFontSize()) NSFontManager.sharedFontManager().setSelectedFont_isMultiple_( font, False) NSFontManager.sharedFontManager().orderFrontFontPanel_(self) # Set window as firstResponder so we get changeFont: messages self.window().makeFirstResponder_(self.window())
def drawRect_(self, rect): defaults = NSUserDefaultsController.sharedUserDefaultsController().values() favoriteColor = NSUnarchiver.unarchiveObjectWithData_(getKey(defaults, 'FavoriteColor')) fontName = getKey(defaults, 'FontName') fontSize = getKey(defaults, 'FontSize') favoriteFont = NSFont.fontWithName_size_(fontName, fontSize) wordOfTheDay = getKey(defaults, 'WordOfTheDay') # Do the actual drawing myBounds = self.bounds() # = (x, y), (bw, bh) NSDrawLightBezel(myBounds, myBounds) favoriteColor.set() NSRectFill(NSInsetRect(myBounds, 2, 2)) attrsDictionary = {NSFontAttributeName: favoriteFont} attrString = NSAttributedString.alloc().initWithString_attributes_(wordOfTheDay, attrsDictionary) attrSize = attrString.size() # = (bw, bh) attrString.drawAtPoint_( NSMakePoint( (attrSize.width / -2) + (myBounds.size.width / 2), (attrSize.height / -2) + (myBounds.size.height / 2), ), )