My own implementation of file chooser