This repository has been archived on 2024-07-04. You can view files and clone it, but cannot push or open issues or pull requests.
laydi/bin/fluents
einarr ba7d8fc34f Changed the way workflows are handled. You now specify a workflow by naming the
containing python module. The module must be in python's path.
2007-12-14 11:48:21 +00:00

86 lines
2.0 KiB
Python
Executable File

#!/usr/bin/python
from getopt import getopt
import os
import sys
from fluents import fluents, project, workflow, main
#import workflows
import cfgparse, optparse
PROGRAM_NAME = 'fluents'
VERSION = '0.1.0'
def list_workflows():
print 'fluents %s' % VERSION
print
print 'Available workflows:'
wfs = workflow.workflow_list()
for wf in wfs:
print ' %s (%s)' % (wf.ident, wf.name)
print
def parse_options():
conf_files = ['/etc/fluentsrc',
os.path.join(os.environ['HOME'], '.fluents')]
cp = cfgparse.ConfigParser()
cp.add_option('home', type='string',
default=os.environ['HOME'])
cp.add_option('datadir', type='string',
default=os.environ['HOME'])
cp.parse()
op = optparse.OptionParser()
op.add_option('-l', '--list-workflows',
action='store_true',
default=False,
help='List available workflows.')
op.add_option('-w', '--workflow',
default='emptyview',
help='Start with selected workflow')
for cf in conf_files:
if os.path.isfile(cf):
cp.add_file(cf)
return cp.parse(op)
if __name__ == '__main__':
import gtk
import gnome
foo = gnome.program_init(PROGRAM_NAME, VERSION)
print foo
options, params = parse_options()
if options.list_workflows:
list_workflows()
sys.exit(0)
selected_wf = workflow.find_workflow(options.workflow)
print selected_wf
if selected_wf == None: selected_wf = workflow.EmptyWorkflow
# workflow_list = workflow.workflow_list()
# for wf in workflow_list:
# if wf.ident == options.workflow:
# selected_wf = wf
main.set_workflow(selected_wf())
main.set_options(options)
app = fluents.FluentApp()
main.set_application(app)
main.set_project(project.Project())
app.set_project(main.project)
app.show()
gtk.main()