#!/usr/bin/env python
# -*- coding: utf-8 -*-

""" wallpaperoptimizer start program

wallpaperoptimizer is multi wallpaper changer.
"""

# <singlerun>
#	wallpaperoptimiz  ../2560x1920.jpg ../1500x844.jpg -C
# <background>
#	wallpaperoptimiz -D -i 5
# <applet window mode>
#	wallpaperoptimiz -W
# <applet>
#	in GNOME panel

import sys
import logging

import os
if os.getenv('DISPLAY', None) == None:
	print "Please set to DISPLAY system environment."
	sys.exit(2)
from optparse import OptionValueError

import WallpaperOptimizer
from WallpaperOptimizer.Options import Options
from WallpaperOptimizer.StarterFactory import StarterFactory

def do_main():
	try:
		option = Options()
	except OptionValueError, msg:
		logging.error('** OptionValueError: %s. ' % msg)
		sys.exit(2)

	Verbose = option.getVerbose()
	if Verbose:
		loglevel = logging.DEBUG
	else:
		loglevel = logging.INFO

	logging.basicConfig(level=loglevel
						, format='%(asctime)s %(levelname)5s %(message)s'
						, filename='/tmp/wallopt.log'
						, filemode='a')
	logging.info('Starting ... wallpaperoptimizer.')

	starterfactory = StarterFactory()
	starter = starterfactory.create(WallpaperOptimizer.WINDOWMANAGER)
	starter.start(option, logging)

	logging.info('Quit ... wallpaperoptimizer.')

if __name__ == "__main__":
	do_main()
	sys.exit(0)