1// Example for use of GNU gettext. 2// Copyright (C) 2003 Free Software Foundation, Inc. 3// This file is published under the GNU General Public License. 4 5// Source code of the C++ program. 6 7#if HAVE_CONFIG_H 8# include <config.h> 9#endif 10 11#include <stdlib.h> 12/* Declare KCmdLineArgs, KCmdLineOptions. */ 13#include <kcmdlineargs.h> 14/* Declare KApplication. */ 15#include <kapplication.h> 16/* Declare KAboutData. */ 17#include <kaboutdata.h> 18/* Declare main window widget. */ 19#include "hellowindow.h" 20 21// Comment line options. 22 23static KCmdLineOptions options[] = 24{ 25 { 0, 0, 0 } // End of options. 26}; 27 28int 29main (int argc, char *argv[]) 30{ 31 // Initializations. 32 33 { 34 // Add our installation directory to KDE's search list for message 35 // catalogs. By default it looks only in $KDEHOME/share/locale and 36 // $KDEDIR/share/locale. 37 QString kdedirs = getenv ("KDEDIRS"); 38 if (kdedirs.isEmpty ()) 39 kdedirs = PREFIX; 40 else 41 kdedirs = kdedirs + ":" + PREFIX; 42 setenv ("KDEDIRS", (const char *) kdedirs.local8Bit(), true); 43 } 44 45 KAboutData aboutData ("hello-c++-kde", 46 I18N_NOOP ("Hello example"), 47 VERSION, 48 I18N_NOOP ("Hello world example"), 49 KAboutData::License_GPL, 50 "(C) 2003 Free Software Foundation", 51 NULL, 52 NULL, 53 "bug-gnu-gettext@gnu.org"); 54 KCmdLineArgs::init (argc, argv, &aboutData); 55 KCmdLineArgs::addCmdLineOptions (options); 56 KApplication application; 57 58 // Create the GUI elements. 59 60 HelloMainWindow *window = new HelloMainWindow (); 61 QObject::connect (window->button, SIGNAL (clicked ()), 62 &application, SLOT (quit ())); 63 64 application.setMainWidget (window); 65 66 // Make the GUI elements visible. 67 68 window->show (); 69 70 // Start the event loop. 71 72 return application.exec (); 73} 74