#!/usr/pkg/bin/python3.11

import findrox; findrox.version(1, 9, 12)
import sys, os, formats

import rox
from rox import g, saving
__builtins__._ = rox.i18n.translation(os.path.join(rox.app_dir, 'Messages'))

if len(sys.argv) != 2:
	rox.info(_("Drag a file or directory onto Archive to archive it. "
		   "Drag an archive onto it to extract."))
	sys.exit(0)

from box import ArchiveBox
		
path = sys.argv[1]

if path != '-':
	path = rox.get_local_path(path)
	if not path:
		rox.croak(_('Sorry, I can only extract/archive local files.'))
	path = os.path.abspath(path)

# Show the savebox, so at least the user knows something is happening...

savebox = ArchiveBox()
savebox.show()
g.gdk.flush()

if os.path.isdir(path):
	data = formats.DirData(path)
else:
	data = formats.FileData(path)
savebox.set_data(data)
	
rox.mainloop()
