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

  1. # Source Generated with Decompyle++
  2. # File: in.pyo (Python 2.6)
  3.  
  4. from __future__ import with_statement
  5. import wx
  6. from gui.addcontactdialog import AddContactDialog
  7. from gui import skin
  8. from util import traceguard
  9. LEFTLESS = wx.ALL & ~(wx.LEFT)
  10.  
  11. try:
  12.     _
  13. except NameError:
  14.     
  15.     def _(s):
  16.         return s
  17.  
  18.  
  19. authdialog_style = wx.DEFAULT_FRAME_STYLE | wx.STAY_ON_TOP
  20.  
  21. class AuthorizationDialog(wx.Frame):
  22.     
  23.     def __init__(self, protocol, buddy, message, username_added, callback = None):
  24.         wx.Frame.__init__(self, None, -1, _('Authorize Contact'), style = authdialog_style)
  25.         traceguard.__enter__()
  26.         
  27.         try:
  28.             self.SetFrameIcon(skin.get('appdefaults.taskbaricon'))
  29.         finally:
  30.             pass
  31.  
  32.         p = wx.Panel(self)
  33.         self.Sizer = wx.BoxSizer(wx.VERTICAL)
  34.         self.Sizer.Add(p, 1, wx.EXPAND)
  35.         self.protocol = protocol
  36.         self.buddy = buddy
  37.         self.username_added = username_added
  38.         self.callback = callback
  39.         bitmap = wx.ArtProvider.GetBitmap(wx.ART_QUESTION)
  40.         bitmap.SetMaskColour(wx.BLACK)
  41.         sbitmap = wx.StaticBitmap(p, -1, bitmap)
  42.         text = wx.StaticText(p, -1, message)
  43.         addbutton = wx.Button(p, wx.YES, _('Authorize and Add'))
  44.         authbutton = wx.Button(p, wx.OK, _('Authorize'))
  45.         denybutton = wx.Button(p, wx.NO, _('Deny'))
  46.         topSizer = wx.BoxSizer(wx.HORIZONTAL)
  47.         buttonSizer = wx.BoxSizer(wx.HORIZONTAL)
  48.         topSizer.Add(sbitmap, 0, wx.ALIGN_CENTER_VERTICAL | wx.ALIGN_LEFT | wx.RIGHT, 8)
  49.         topSizer.Add(text, 0, wx.ALIGN_CENTER_VERTICAL | wx.ALIGN_LEFT)
  50.         buttonSizer.AddStretchSpacer()
  51.         add_flags = wx.ALIGN_CENTER_VERTICAL | wx.ALIGN_RIGHT | LEFTLESS
  52.         buttonSizer.AddMany([
  53.             (addbutton, 0, add_flags, 8),
  54.             (authbutton, 0, add_flags, 8),
  55.             (denybutton, 0, add_flags, 8)])
  56.         selfSizer.Add(topSizer, 1, wx.ALIGN_CENTER_HORIZONTAL)
  57.         selfSizer.Add(buttonSizer, 0, wx.EXPAND)
  58.         self.Fit()
  59.         self.Size += (40, 30)
  60.         self.Bind(wx.EVT_BUTTON, self.OnButton)
  61.         self.Bind(wx.EVT_CLOSE, self.OnClose)
  62.  
  63.     
  64.     def OnButton(self, event):
  65.         if event.Id == wx.YES:
  66.             AddContactDialog.MakeOrShow(service = self.protocol.service, name = unicode(self.buddy))
  67.             self.callback(self.buddy, True, self.username_added)
  68.         elif event.Id == wx.OK:
  69.             self.callback(self.buddy, True, self.username_added)
  70.         elif event.Id == wx.NO:
  71.             self.callback(self.buddy, False, self.username_added)
  72.         
  73.         self.Close()
  74.  
  75.     
  76.     def OnClose(self, event):
  77.         self.Hide()
  78.         self.Destroy()
  79.  
  80.  
  81. if __name__ == '__main__':
  82.     from tests.testapp import testapp
  83.     app = testapp()
  84.     ad = AuthorizationDialog(None, None, 'Allow SomeBuddy to add you as a buddy as YourNick on Protocol?', 'protoname')
  85.     ad.Show()
  86.     app.MainLoop()
  87.  
  88.