home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2011 October / maximum-cd-2011-10.iso / DiscContents / digsby_setup.exe / lib / gui / browser / mac_webkit.pyo (.txt) < prev   
Encoding:
Python Compiled Bytecode  |  2011-06-22  |  3.1 KB  |  87 lines

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