summaryrefslogtreecommitdiffstats
path: root/src/inkview-application.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/inkview-application.cpp')
-rw-r--r--src/inkview-application.cpp20
1 files changed, 13 insertions, 7 deletions
diff --git a/src/inkview-application.cpp b/src/inkview-application.cpp
index 983c4287a..fbec132a1 100644
--- a/src/inkview-application.cpp
+++ b/src/inkview-application.cpp
@@ -65,12 +65,12 @@ InkviewApplication::InkviewApplication()
// Will automatically handle character conversions.
// Note: OPTION_TYPE_FILENAME => std::string, OPTION_TYPE_STRING => Glib::ustring.
- add_main_option_entry(OPTION_TYPE_BOOL, "version", 'V', N_("Print: Inkview version."), "");
- add_main_option_entry(OPTION_TYPE_BOOL, "fullscreen", 'f', N_("Launch in fullscreen mode"), "");
- add_main_option_entry(OPTION_TYPE_BOOL, "recursive", 'r', N_("Search folders recursively"), "");
- add_main_option_entry(OPTION_TYPE_INT, "timer", 't', N_("Change image every NUMBER seconds"), N_("NUMBER"));
- add_main_option_entry(OPTION_TYPE_DOUBLE, "scale", 's', N_("Scale image by factor NUMBER"), N_("NUMBER"));
- add_main_option_entry(OPTION_TYPE_BOOL, "preload", 'p', N_("Preload files"), "");
+ add_main_option_entry(OPTION_TYPE_BOOL, "version", 'V', N_("Print: Inkview version."), "");
+ add_main_option_entry(OPTION_TYPE_BOOL, "fullscreen", 'f', N_("Launch in fullscreen mode"), "");
+ add_main_option_entry(OPTION_TYPE_BOOL, "recursive", 'r', N_("Search folders recursively"), "");
+ add_main_option_entry(OPTION_TYPE_INT, "timer", 't', N_("Change image every NUMBER seconds"), N_("NUMBER"));
+ add_main_option_entry(OPTION_TYPE_DOUBLE, "scale", 's', N_("Scale image by factor NUMBER"), N_("NUMBER"));
+ add_main_option_entry(OPTION_TYPE_BOOL, "preload", 'p', N_("Preload files"), "");
signal_handle_local_options().connect(sigc::mem_fun(*this, &InkviewApplication::on_handle_local_options));
@@ -125,7 +125,13 @@ InkviewApplication::on_activate()
void
InkviewApplication::on_open(const Gio::Application::type_vec_files& files, const Glib::ustring& hint)
{
- window = new InkviewWindow(files, fullscreen, recursive, timer, scale, preload);
+ try {
+ window = new InkviewWindow(files, fullscreen, recursive, timer, scale, preload);
+ } catch (const InkviewWindow::NoValidFilesException&) {
+ std::cerr << _("Error") << ": " << _("No (valid) files to open.") << std::endl;
+ exit(1);
+ }
+
window->show_all();
add_window(*window);
}