Author: damoxc
Revision: 5090
Log:
start new ui class
Diff:
Modified: trunk/deluge/ui/ui.py
===================================================================
--- trunk/deluge/ui/ui.py 2009-04-18 22:27:54 UTC (rev 5089)
+++ trunk/deluge/ui/ui.py 2009-04-19 13:46:11 UTC (rev 5090)
@@ -22,6 +22,8 @@
# Boston, MA 02110-1301, USA.
#
+from optparse import OptionParser, OptionGroup
+import deluge.common
import deluge.configmanager
from deluge.log import LOG as log
@@ -30,6 +32,48 @@
"default_ui": "gtk"
}
+class _UI(object):
+
+ def __init__(self, name="gtk"):
+ log.debug("NewUI init...")
+ self.__name = name
+
+ usage="%prog [options] [actions]",
+
+ self.__parser = OptionParser(version=deluge.common.get_version())
+
+ group = OptionGroup(self.parser, "Common Options")
+ group.add_option("-c", "--config", dest="config",
+ help="Set the config folder location", action="store", type="str")
+ group.add_option("-l", "--logfile", dest="logfile",
+ help="Output to designated logfile instead of stdout",
action="store", type="str")
+ group.add_option("-a", "--args", dest="args",
+ help="Arguments to pass to UI, -a '--option args'",
action="store", type="str")
+ group.add_option("-L", "--loglevel", dest="loglevel",
+ help="Set the log level: none, info, warning, error, critical,
debug", action="store", type="str")
+ group.add_option("-q", "--quiet", dest="quiet",
+ help="Sets the log level to 'none', this is the same as `-L
none`", action="store_true", default=False)
+ self.parser.add_option_group(group)
+
+ @property
+ def name(self):
+ return self.__name
+
+ @property
+ def parser(self):
+ return self.__parser
+
+ @property
+ def options(self):
+ return self.__options
+
+ @property
+ def args(self):
+ return self._args
+
+ def start(self):
+ (self.__options, self.__args) = self.parser.parse_args()
+
class UI:
def __init__(self, options, args, ui_args):
log.debug("UI init..")
Modified: trunk/deluge/ui/web/__init__.py
===================================================================
--- trunk/deluge/ui/web/__init__.py 2009-04-18 22:27:54 UTC (rev 5089)
+++ trunk/deluge/ui/web/__init__.py 2009-04-19 13:46:11 UTC (rev 5090)
@@ -0,0 +1 @@
+from webui import start
\ No newline at end of file
Modified: trunk/deluge/ui/web/webui.py
===================================================================
--- trunk/deluge/ui/web/webui.py 2009-04-18 22:27:54 UTC (rev 5089)
+++ trunk/deluge/ui/web/webui.py 2009-04-19 13:46:11 UTC (rev 5090)
@@ -22,9 +22,32 @@
# Boston, MA 02110-1301, USA.
#
+import server
+from deluge.ui.ui import _UI
+from optparse import OptionGroup
-class WebUI:
- def __init__(self, args):
- import server
- deluge_web = server.DelugeWeb()
- deluge_web.start()
\ No newline at end of file
+class Web(_UI):
+
+ help = """Starts the Deluge web interface"""
+
+ def __init__(self):
+ super(Web, self).__init__()
+ self.__server = server.DelugeWeb()
+
+ group = OptionGroup(self.parser, "Web Options")
+ group.add_option("-p", "--port", dest="port", type="int",
+ help="Sets the port to be used for the webserver",
+ action="store", default=None)
+ self.parser.add_option_group(group)
+
+ @property
+ def server(self):
+ return self.__server
+
+ def start(self):
+ super(Web, self).start()
+ if self.options.port: self.server.port = self.options.port
+ self.server.start()
+
+web = Web()
+start = web.start
\ No newline at end of file
Modified: trunk/setup.py
===================================================================
--- trunk/setup.py 2009-04-18 22:27:54 UTC (rev 5089)
+++ trunk/setup.py 2009-04-19 13:46:11 UTC (rev 5090)
@@ -361,6 +361,9 @@
entry_points = """
[console_scripts]
deluge = deluge.main:start_ui
+ deluge-console = deluge.ui.console:start
+ deluge-gtk = deluge.ui.gtkui:start
+ deluge-web = deluge.ui.web:start
deluged = deluge.main:start_daemon
""",
ext_package = "deluge",
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"deluge-commit" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/deluge-commit?hl=en
-~----------~----~----~----~------~----~------~--~---