• Skip to content
  • Skip to link menu
KDE 4.0 API Reference
  • KDE API Reference
  • kdelibs
  • Sitemap
  • Contact Us
 

Kross

krossconfig.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  * krossconfig.h
00003  * This file is part of the KDE project
00004  * copyright (C)2004-2006 by Sebastian Sauer (mail@dipe.org)
00005  *
00006  * This program is free software; you can redistribute it and/or
00007  * modify it under the terms of the GNU Library General Public
00008  * License as published by the Free Software Foundation; either
00009  * version 2 of the License, or (at your option) any later version.
00010  * This program is distributed in the hope that it will be useful,
00011  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00013  * Library General Public License for more details.
00014  * You should have received a copy of the GNU Library General Public License
00015  * along with this program; see the file COPYING.  If not, write to
00016  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00017  * Boston, MA 02110-1301, USA.
00018  ***************************************************************************/
00019 
00020 #ifndef KROSS_MAIN_KROSSCONFIG_H
00021 #define KROSS_MAIN_KROSSCONFIG_H
00022 
00023 #include <kross/core/kross_export.h>
00024 
00025 
00026 #include <klocale.h>
00027 #include <kicon.h>
00028 
00029 namespace Kross {
00030 
00031     // Debugging enabled. Comment the line out to disable all kind of debugging.
00032     #define KROSS_DEBUG_ENABLED
00033 
00034     #ifdef KROSS_DEBUG_ENABLED
00035 
00039         KROSSCORE_EXPORT void krossdebug(const QString &s);
00040 
00044         KROSSCORE_EXPORT void krosswarning(const QString &s);
00045 
00046     #else
00047         // Define these to an empty statement if debugging is disabled.
00048         #define krossdebug(x)
00049         #define krosswarning(x)
00050     #endif
00051 
00052     // Some more debug switches.
00053     #define KROSS_OBJECT_METACALL_DEBUG
00054     //#define KROSS_METATYPE_DEBUG
00055     //#define KROSS_INTERPRETER_DEBUG
00056     //#define KROSS_ACTION_DEBUG
00057     //#define KROSS_ACTIONCOLLECTION_DEBUG
00058 
00059     // The version number of Kross. For example the interpreters use
00060     // it do be sure there are linked against the correct core version
00061     // and if the numbers don't match, the interpreter is not loaded.
00062     #define KROSS_VERSION 6
00063 
00064     // The export macro for interpreter plugins.
00065     #define KROSS_EXPORT_INTERPRETER( InterpreterImpl ) \
00066         extern "C" { \
00067             KDE_EXPORT void* krossinterpreter(int version, Kross::InterpreterInfo* info) { \
00068                 if(version != KROSS_VERSION) { \
00069                     Kross::krosswarning(QString("Interpreter skipped cause provided version %1 does not match expected version %2.").arg(version).arg(KROSS_VERSION)); \
00070                     return 0; \
00071                 } \
00072                 return new InterpreterImpl(info); \
00073             } \
00074         }
00075 
00076     // The name of the interpreter's library. Those library got loaded
00077     // dynamically during runtime. Comment out to disable compiling of
00078     // the interpreter-plugin or to hardcode the location of the lib
00079     // like I did at the following line.
00080     //#define KROSS_PYTHON_LIBRARY "/home/kde4/koffice/_build/lib/krosspython.la"
00081     #define KROSS_PYTHON_LIBRARY "krosspython"
00082     #define KROSS_RUBY_LIBRARY "krossruby"
00083     #define KROSS_KJS_LIBRARY "krosskjs"
00084     #define KROSS_JAVA_LIBRARY "libkrossjava"
00085     #define KROSS_FALCON_LIBRARY "krossfalcon"
00086 
00087 }
00088 
00089 #endif
00090 

Kross

Skip menu "Kross"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

kdelibs

Skip menu "kdelibs"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • Kate
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • KIO
  • KIOSlave
  • KJS
  •   WTF
  • KJSEmbed
  • KNewStuff
  • KParts
  • Kross
  • KUtils
  • Nepomuk
  •   core
  • Phonon
  •   Backend
  • Solid
  • Sonnet
  • ThreadWeaver
Generated for kdelibs by doxygen 1.5.4
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal