|
|
|
/***************************************************************************
|
|
|
|
copyright : (C) 2001-2006 by Robby Stephenson
|
|
|
|
email : robby@periapsis.org
|
|
|
|
***************************************************************************/
|
|
|
|
|
|
|
|
/***************************************************************************
|
|
|
|
* *
|
|
|
|
* This program is free software; you can redistribute it and/or modify *
|
|
|
|
* it under the terms of version 2 of the GNU General Public License as *
|
|
|
|
* published by the Free Software Foundation; *
|
|
|
|
* *
|
|
|
|
***************************************************************************/
|
|
|
|
|
|
|
|
#include "mainwindow.h"
|
|
|
|
#include "translators/translators.h" // needed for file type enum
|
|
|
|
|
|
|
|
#include <tdeapplication.h>
|
|
|
|
#include <tdecmdlineargs.h>
|
|
|
|
#include <tdeaboutdata.h>
|
|
|
|
#include <tdelocale.h>
|
|
|
|
|
|
|
|
namespace {
|
|
|
|
static const char* description = I18N_NOOP("Tellico - a collection manager for TDE");
|
|
|
|
static const char* version = VERSION;
|
|
|
|
|
|
|
|
static TDECmdLineOptions options[] = {
|
|
|
|
{ "nofile", I18N_NOOP("Do not reopen the last open file"), 0 },
|
|
|
|
{ "bibtex", I18N_NOOP("Import <filename> as a bibtex file"), 0 },
|
|
|
|
{ "mods", I18N_NOOP("Import <filename> as a MODS file"), 0 },
|
|
|
|
{ "ris", I18N_NOOP("Import <filename> as a RIS file"), 0 },
|
|
|
|
{ "+[filename]", I18N_NOOP("File to open"), 0 },
|
|
|
|
TDECmdLineLastOption
|
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
int main(int argc, char* argv[]) {
|
|
|
|
TDEAboutData aboutData("tellico", "Tellico",
|
|
|
|
version, description, TDEAboutData::License_GPL,
|
|
|
|
"(c) 2001-2007, Robby Stephenson", 0,
|
|
|
|
"http://www.periapsis.org/tellico/", "tellico-users@forge.novell.com");
|
|
|
|
aboutData.addAuthor("Robby Stephenson", 0, "robby@periapsis.org");
|
|
|
|
aboutData.addCredit("Mathias Monnerville", I18N_NOOP("Data source scripts"),
|
|
|
|
0, 0);
|
|
|
|
aboutData.addCredit("Virginie Quesnay", I18N_NOOP("Icons"),
|
|
|
|
0, 0);
|
|
|
|
aboutData.addCredit("Greg Ward", I18N_NOOP("Author of btparse library"),
|
|
|
|
0, "http://www.gerg.ca");
|
|
|
|
aboutData.addCredit("Amarok", I18N_NOOP("Code examples and general inspiration"),
|
|
|
|
0, "http://amarok.kde.org");
|
|
|
|
aboutData.addCredit("Robert Gamble", I18N_NOOP("Author of libcsv library"),
|
|
|
|
0, 0);
|
|
|
|
aboutData.addCredit("Valentin Lavrinenko", I18N_NOOP("Author of rtf2html library"),
|
|
|
|
0, 0);
|
|
|
|
|
|
|
|
TDECmdLineArgs::init(argc, argv, &aboutData);
|
|
|
|
TDECmdLineArgs::addCmdLineOptions(options);
|
|
|
|
|
|
|
|
TDEApplication app;
|
|
|
|
|
|
|
|
if(app.isRestored()) {
|
|
|
|
RESTORE(Tellico::MainWindow);
|
|
|
|
} else {
|
|
|
|
Tellico::MainWindow* tellico = new Tellico::MainWindow();
|
|
|
|
tellico->show();
|
|
|
|
tellico->slotShowTipOfDay(false);
|
|
|
|
|
|
|
|
TDECmdLineArgs* args = TDECmdLineArgs::parsedArgs();
|
|
|
|
if(args->count() > 0) {
|
|
|
|
if(args->isSet("bibtex")) {
|
|
|
|
tellico->importFile(Tellico::Import::Bibtex, args->url(0), Tellico::Import::Replace);
|
|
|
|
} else if(args->isSet("mods")) {
|
|
|
|
tellico->importFile(Tellico::Import::MODS, args->url(0), Tellico::Import::Replace);
|
|
|
|
} else if(args->isSet("ris")) {
|
|
|
|
tellico->importFile(Tellico::Import::RIS, args->url(0), Tellico::Import::Replace);
|
|
|
|
} else {
|
|
|
|
tellico->slotFileOpen(args->url(0));
|
|
|
|
}
|
|
|
|
} else {
|
|
|
|
// bit of a hack, I just want the --nofile option
|
|
|
|
// if --nofile is NOT passed, then the file option is set
|
|
|
|
// is it's set, then go ahead and check for opening previous file
|
|
|
|
tellico->initFileOpen(!args->isSet("file"));
|
|
|
|
}
|
|
|
|
args->clear(); // some memory savings
|
|
|
|
}
|
|
|
|
|
|
|
|
return app.exec();
|
|
|
|
}
|