def main(argv):
    """ The main frontend program.
    Keyword arguments:
    argv -- The arguments passed to the script.
    """
    use_tray = True
    animate = True
    try:
        opts, args = getopt.getopt(sys.argv[1:], 'nha', ['help', 'no-tray',
                                                         'no-animate'])
    except getopt.GetoptError:
        usage()
        sys.exit(2)
    for opt, a in opts:
        if opt in ('-h', '--help'):
            usage()
            sys.exit(0)
        elif opt in ('-n', '--no-tray'):
            use_tray = False
        elif opt in ('-a', '--no-animate'):
            animate = False
        else:
            usage()
            sys.exit(2)
    print 'Loading...'
    setup_dbus()
    if not use_tray:
        the_gui = gui.appGui()
        the_gui.standalone = True
        mainloop = gobject.MainLoop()
        mainloop.run()
        sys.exit(0)
    tray_icon = TrayIcon(use_tray, animate)
    if daemon.GetNeedWiredProfileChooser():
        daemon.SetNeedWiredProfileChooser(False)
        tray_icon.icon_info.wired_profile_chooser()
    bus = dbus_manager.get_bus()
    bus.add_signal_receiver(tray_icon.icon_info.wired_profile_chooser,
                            'LaunchChooser', 'org.wicd.daemon')
    bus.add_signal_receiver(tray_icon.icon_info.update_tray_icon,
                            'StatusChanged', 'org.wicd.daemon')
    bus.add_signal_receiver(tray_icon.tr.tray_scan_ended, 'SendEndScanSignal',
                            'org.wicd.daemon.wireless')
    bus.add_signal_receiver(tray_icon.tr.tray_scan_started,
                            'SendStartScanSignal', 'org.wicd.daemon.wireless')
    print 'Done.'
    mainloop = gobject.MainLoop()
    mainloop.run()
 def toggle_wicd_gui(self):
     """ Toggles the wicd GUI. """
     if not self.gui_win:
         self.gui_win = gui.appGui()
         bus.add_signal_receiver(self.gui_win.dbus_scan_finished,
                                 'SendEndScanSignal',
                                 'org.wicd.daemon')
         bus.add_signal_receiver(self.gui_win.dbus_scan_started,
                                 'SendStartScanSignal',
                                 'org.wicd.daemon')
         bus.add_signal_receiver(self.gui_win.update_connect_buttons,
                                 'StatusChanged', 'org.wicd.daemon')
     elif not self.gui_win.is_visible:
         self.gui_win.show_win()
     else:
         self.gui_win.exit()
         return True
            loading_item = gtk.MenuItem(language['scanning'] + "...")
            loading_item.set_sensitive(False)
            loading_item.show()
            submenu.append(loading_item)
            net_menuitem.show()
        
		def _clear_menu(self, menu):
            """ Clear the right-click menu. """
            for item in menu.get_children():
                menu.remove(item)
                item.destroy()
        
		def toggle_wicd_gui(self):
            """ Toggles the wicd GUI. """
            if not self.gui_win:
                self.gui_win = gui.appGui(dbus_manager)
                bus = dbus_manager.get_bus()
                bus.add_signal_receiver(self.gui_win.dbus_scan_finished,                                        'SendEndScanSignal',                                        'org.wicd.daemon.wireless')
                bus.add_signal_receiver(self.gui_win.dbus_scan_started,                                        'SendStartScanSignal',                                        'org.wicd.daemon.wireless')
                bus.add_signal_receiver(self.gui_win.update_connect_buttons,                                        'StatusChanged', 'org.wicd.daemon')
            elif not self.gui_win.is_visible:
                self.gui_win.show_win()
            else:
                self.gui_win.exit()
                return True
    

	class  EggTrayIconGUI (TrayIconGUI) :
		""" Tray Icon for gtk < 2.10.
        Uses the deprecated egg.trayicon module to implement the tray icon.
        Since it relies on a deprecated module, this class is only used