コード例 #1
0
ファイル: main.py プロジェクト: trailblazing/lightlang
def main():
	
	# Process command line
	try:
		opts, args = getopt.getopt(sys.argv[1:], "hvr:", ["help", "version", "remote="])
	except getopt.GetoptError:
		self.print_usage()
		sys.exit(1)

	if opts != []:
		for o, a in opts:
			if o in ("-h", "--help"):
				print_usage()
			elif o in ("-v", "--version"):
				print_version()
			elif o in ("-r", "--remote"):
				try:
					remote = Remote()
					remote.execute(a)
				except dbus.DBusException, err:
					print >> sys.stderr, err
					sys.exit(1)
		sys.exit()
コード例 #2
0
ファイル: main.py プロジェクト: trailblazing/lightlang
				try:
					remote = Remote()
					remote.execute(a)
				except dbus.DBusException, err:
					print >> sys.stderr, err
					sys.exit(1)
		sys.exit()

	try:
		dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
		bus = dbus.SessionBus()
	
		#Check double running	
		retval = bus.request_name("org.LightLang.SLog", dbus_bindings.NAME_FLAG_DO_NOT_QUEUE)
		if retval in (dbus_bindings.REQUEST_NAME_REPLY_PRIMARY_OWNER, dbus_bindings.REQUEST_NAME_REPLY_ALREADY_OWNER):
			pass
		elif retval in (dbus_bindings.REQUEST_NAME_REPLY_EXISTS, dbus_bindings.REQUEST_NAME_REPLY_IN_QUEUE):
			remote = Remote()
			remote.execute("show")
			sys.exit()
		
		app = MainWindow()
	except SystemExit:
		sys.exit()

	try:
		app.run()
	except KeyboardInterrupt:
		pass