Logo Search packages:      
Sourcecode: inkscape version File versions

javabind.cpp File Reference

Detailed Description

This is a simple mechanism to bind Inkscape to Java, and thence to all of the nice things that can be layered upon that.

Authors: Bob Jamison

Copyright (C) 2007-2008 Bob Jamison

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA

Definition in file javabind.cpp.

#include <stdio.h>
#include <stdlib.h>
#include <stdarg.h>
#include <string.h>
#include <jni.h>
#include <sys/types.h>
#include <dirent.h>
#include <dlfcn.h>
#include <errno.h>
#include "javabind.h"
#include "javabind-private.h"
#include <path-prefix.h>
#include <prefix.h>
#include <glib/gmessages.h>
#include <document.h>
#include <inkscape.h>
#include <xml/repr.h>

Go to the source code of this file.


namespace  Inkscape
namespace  Inkscape::Bind


#define DIR_SEPARATOR   "/"
#define PATH_SEPARATOR   ":"


typedef jint(* Inkscape::Bind::CreateVMFunc )(JavaVM **, JNIEnv **, void *)


jstring JNICALL Inkscape::Bind::documentGet (JNIEnv *env, jobject, jlong)
jboolean JNICALL Inkscape::Bind::documentSet (JNIEnv *, jobject, jlong, jstring)
void Inkscape::Bind::err (const char *fmt,...)
static bool Inkscape::Bind::findJVM (String &result)
static bool Inkscape::Bind::findJVMRecursive (const String &dirpath, std::vector< String > &results)
static CreateVMFunc Inkscape::Bind::getCreateVMFunc ()
String Inkscape::Bind::getExceptionString (JNIEnv *env)
static void Inkscape::Bind::getJavaRoot (String &javaroot)
jdouble Inkscape::Bind::getObjDouble (JNIEnv *env, jobject obj, const char *name)
jfloat Inkscape::Bind::getObjFloat (JNIEnv *env, jobject obj, const char *name)
jint Inkscape::Bind::getObjInt (JNIEnv *env, jobject obj, const char *name)
jlong Inkscape::Bind::getObjLong (JNIEnv *env, jobject obj, const char *name)
String Inkscape::Bind::getObjString (JNIEnv *env, jobject obj, const char *name)
String Inkscape::Bind::getString (JNIEnv *env, jstring jstr)
void JNICALL Inkscape::Bind::logWrite (JNIEnv *, jobject, jlong ptr, jint ch)
void Inkscape::Bind::msg (const char *fmt,...)
String Inkscape::Bind::normalizePath (const String &str)
static void Inkscape::Bind::populateClassPath (const String &javaroot, String &result)
void Inkscape::Bind::setObjDouble (JNIEnv *env, jobject obj, const char *name, jdouble val)
void Inkscape::Bind::setObjFloat (JNIEnv *env, jobject obj, const char *name, jfloat val)
void Inkscape::Bind::setObjInt (JNIEnv *env, jobject obj, const char *name, jint val)
void Inkscape::Bind::setObjLong (JNIEnv *env, jobject obj, const char *name, jlong val)
void Inkscape::Bind::setObjString (JNIEnv *env, jobject obj, const char *name, const String &val)
static int JNICALL Inkscape::Bind::vfprintfHook (FILE *, const char *fmt, va_list args)


static JavaBinderyImpl * Inkscape::Bind::_instance = NULL
static const char * Inkscape::Bind::commonJavaPaths []
static JNINativeMethod Inkscape::Bind::gatewayMethods []

Generated by  Doxygen 1.6.0   Back to index