//Author: Timothy Pearson <kb9vqf@pearsoncomputing.net>, (C) 2012
//Copyright: See COPYING file that comes with this distribution
# include "define.h"
# include <kaboutdata.h>
# include <kapplication.h>
# include <kinputdialog.h>
# include <kcmdlineargs.h>
# include <klocale.h>
# include <kurl.h>
# include <kconfig.h>
# include "remotemdi.h"
static const KCmdLineOptions options [ ] =
{
{ " +[server] " , I18N_NOOP ( " Connect to remote server 'server' " ) , 0 } ,
{ 0 , 0 , 0 }
} ;
static KAboutData about (
APP_NAME , I18N_NOOP ( APP_PRETTYNAME ) , APP_VERSION ,
I18N_NOOP ( " Graphical remote laboratory client " ) , KAboutData : : License_GPL_V2 ,
I18N_NOOP ( " (C) 2012 Timothy Pearson " ) , 0 ,
" http://remotefpga.pearsoncomputing.net/ " , " kb9vqf@pearsoncomputing.net " ) ;
int main ( int argc , char * argv [ ] )
{
about . addAuthor ( " Timothy Pearson " , I18N_NOOP ( " Author, maintainer " ) , " kb9vqf@pearsoncomputing.net " , " http://remotefpga.pearsoncomputing.net/ " ) ;
KCmdLineArgs : : init ( argc , argv , & about ) ;
KCmdLineArgs : : addCmdLineOptions ( options ) ;
KApplication app ;
// Read MDI settings (window positions, etc)
// FIXME
KConfig * c = app . config ( ) ;
// Create main window
RemoteMDI * mainWin = new RemoteMDI ( ) ;
app . setMainWidget ( mainWin ) ;
KCmdLineArgs * const args = KCmdLineArgs : : parsedArgs ( ) ;
if ( args - > count ( ) > 0 ) {
mainWin - > setServerHost ( args - > arg ( 0 ) ) ;
}
else {
bool accepted ;
TQString serverHost = KInputDialog : : getText ( i18n ( " Enter server FQDN " ) , i18n ( " Please enter the FQDN of the desired remote laboratory server below " ) , " " , & accepted ) ;
if ( accepted ) {
if ( serverHost ! = " " ) {
mainWin - > setServerHost ( serverHost ) ;
}
else {
return - 1 ;
}
}
else {
return - 1 ;
}
}
args - > clear ( ) ;
mainWin - > show ( ) ;
// mainWin has WDestructiveClose flag by default, so it will delete itself.
return app . exec ( ) ;
}