home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2009 June / maximum-cd-2009-06.iso / DiscContents / digsby_setup.exe / lib / gui / browser / mac_webkit.pyo (.txt) < prev   
Encoding:
Python Compiled Bytecode  |  2009-02-26  |  3.3 KB  |  91 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyo (Python 2.5)
  3.  
  4. from __future__ import with_statement
  5. import wx
  6. from random import randint
  7. import wx.webkit as webkit
  8. from logging import getLogger
  9. log = getLogger('iewindow')
  10. from collections import defaultdict
  11. from util import traceguard, try_this, Delegate
  12. from time import time
  13. import stdpaths
  14.  
  15. class WebKitWindow(webkit.WebKitCtrl):
  16.     
  17.     def __init__(self, parent, initialContents = '', url = None):
  18.         webkit.WebKitCtrl.__init__(self, parent, style = wx.NO_BORDER)
  19.         self.OnNav = Delegate()
  20.         self.OnDoc = Delegate()
  21.         if url is not None:
  22.             self.seturl = url
  23.             self.LoadUrl(url)
  24.         elif not initialContents:
  25.             pass
  26.         s = ''
  27.         if s:
  28.             self.SetPage(s)
  29.         
  30.         self.Bind(webkit.EVT_WEBKIT_BEFORE_LOAD, self.BeforeLoad)
  31.         self.Bind(webkit.EVT_WEBKIT_STATE_CHANGED, self.StateChanged)
  32.  
  33.     
  34.     def LoadUrl(self, url):
  35.         if isinstance(url, unicode):
  36.             import warnings
  37.             warnings.warn('LoadUrl called with a unicode: %r' % url)
  38.             url = str(url)
  39.         
  40.         if not isinstance(url, str):
  41.             raise TypeError('must pass a string to LoadUrl')
  42.         
  43.         return self.LoadURL(url)
  44.  
  45.     
  46.     def OnURL(self, url, callback):
  47.         if not callable(callback):
  48.             raise TypeError('callback must be callable')
  49.         
  50.         self.urltriggers[url] += [
  51.             callback]
  52.  
  53.     
  54.     def FileURL(self):
  55.         
  56.         try:
  57.             return 'file:///' + self.file.name.replace('\\', '/')
  58.         except AttributeError:
  59.             return self.seturl
  60.  
  61.  
  62.     FileURL = property(FileURL)
  63.     
  64.     def SetPage(self, content):
  65.         return self.SetPageSource(content)
  66.  
  67.     
  68.     def BeforeLoad(self, event):
  69.         self.OnNav(event.GetURL())
  70.  
  71.     
  72.     def StateChanged(self, event):
  73.         if event.GetState() == webkit.WEBKIT_STATE_STOP:
  74.             self.OnDoc(event.GetURL())
  75.         
  76.  
  77.  
  78. if __name__ == '__main__':
  79.     a = wx.PySimpleApp()
  80.     
  81.     _ = lambda s: s
  82.     fbSize = (646, 436)
  83.     url = 'http://www.google.com/'
  84.     from util import trace
  85.     trace(WebKitWindow)
  86.     f = wx.Frame(None, size = fbSize, title = _('ie test'))
  87.     wk = WebKitWindow(f, url = url)
  88.     f.Show()
  89.     a.MainLoop()
  90.  
  91.