----------------------------------------------- Kde scons template quickstart Author: Thomas Nagy Date: 2005-04-04 ----------------------------------------------- This README file explains basic concepts necessary for starting with this application template. ** Building and installing ** * To configure the application run "scons configure" In some rare cases you may need to add flags: scons configure qtincludes=/usr/include/qt3/include kdeincludes=/usr/lib/trinity/include * After building, launch the application and test the dcop interface by using the command (search a bit) : dcop dcop appname-... dcop appname-... instancenumber dcop appname-... instancenumber switch_colors dcop appname switch_colors Or launch kdcop and search in the menus for your program name and double-click on 'switch_colors()' * The usual targets call the following scons commands : make -> scons make clean -> scons -c make install -> scons install make uninstall -> scons -c install make dist -> scons dist * To build apps, use TDEprogram, TDEshlib, etc. these functions are documented at the bottom of kde.py More information can be found in the QUICKSTART * The scons scripts for building kde applications originate from the 'bksys' distribution. It contains several other examples that detail the kpart building and the dcop interface processing : http://www.kde-apps.org/content/show.php?content=19243 * Extending the scons scripts for building the application : The scons scripts are actually python scripts, so all the usual tricks apply : 'for' and 'while' loops, 'if', 'else' .. consult : http://www.python.org for more information about python http://www.scons.org for more informationabout scons * Simplify your life : install the project in your home directory for testing purposes. scons configure prefix=/home/user/dummyfolder/ In the end when you finished the development you can rm -rf /home/user/dummyfolder/ without fear. ** Technologies ** * Build the menus of your application easily kde applications now use an xml file (*ui.rc file) to build the menus. This allow a great customization of the application. However, when programming the menu is shown only after a "make install" For more details, consult : http://devel-home.kde.org/~larrosa/tutorial/p9.html http://developer.kde.org/documentation/tutorials/xmlui/preface.html * Use TDEConfig XT to create your configuration dialogs and make them more maintainable. For that, you will need to write two simple configuration files in the src directory : .kcfg and a .kcfgc The configure.in.in will need to be modified : change the line #MIN_CONFIG(3.0.0) into #MIN_CONFIG(3.2.0) Take an example on the many apps found in the tdegames source package and consult : http://developer.kde.org/documentation/tutorials/tdeconfigxt/tdeconfigxt.html * With KParts, you can embed other kde components in your program, or make your program embeddable in other apps. For example, the kmplayer kpart can be called to play videos in your app. For more details, consult : http://www-106.ibm.com/developerworks/library/l-tdeparts/ http://developer.kde.org/documentation/tutorials/dot/writing-plugins.html http://developer.kde.org/documentation/tutorials/developing-a-plugin-structure/index.html * With dcop, you can control your app from other applications Make sure to include K_DCOP and a kdcop: section in your .h file http://developer.kde.org/documentation/tutorials/dot/dcopiface/dcop-interface.html ** Documentation ** * For the translations : refer to the file po/SConscript and po/messages.sh 1. Download a patched gettext which can be found at: http://public.kde.planetmirror.com/pub/kde/devel/gettext-kde/ 2. Install that gettext in ~/bin/ 3. cd ~/yourproject, export PATH=~/bin:$PATH, export TDEDIR=/where_your_TDE3_is 4. make -f admin/Makefile.common package-messages 5. make package-messages 6. Translate the po files (not the pot!!) with kbabel or xemacs * Do not forget to write the documentation for your kde app edit the documentation template index.docbook in doc/