diff options
Diffstat (limited to 'bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/swt-memmove.c')
-rw-r--r-- | bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/swt-memmove.c | 261 |
1 files changed, 261 insertions, 0 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/swt-memmove.c b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/swt-memmove.c new file mode 100644 index 0000000000..e89f082ee2 --- /dev/null +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/swt-memmove.c @@ -0,0 +1,261 @@ +/* + * Copyright (c) IBM Corp. 2000, 2002. All rights reserved. + * + * The contents of this file are made available under the terms + * of the GNU Lesser General Public License (LGPL) Version 2.1 that + * accompanies this distribution (lgpl-v21.txt). The LGPL is also + * available at http://www.gnu.org/licenses/lgpl.html. If the version + * of the LGPL at http://www.gnu.org is different to the version of + * the LGPL accompanying this distribution and there is any conflict + * between the two license versions, the terms of the LGPL accompanying + * this distribution shall govern. + */ + +/** + * SWT OS natives implementation: OS.memmove(...) + */ + +#include "swt.h" +#include "structs.h" + +#include <stdio.h> +#include <assert.h> + +/* Read */ +/* GDK */ + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove__Lorg_eclipse_swt_internal_gtk_GdkColor_2I + (JNIEnv *env, jclass that, jobject dest, jint src) +{ + DECL_GLOB(pGlob) + if (dest) { + cacheGdkColorFids(env, dest, &PGLOB(GdkColorFc)); + setGdkColorFields(env, dest, src, &PGLOB(GdkColorFc)); + } +} + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove__Lorg_eclipse_swt_internal_gtk_GdkEventExpose_2I + (JNIEnv *env, jclass that, jobject dest, jint src) +{ + DECL_GLOB(pGlob) + if (dest) { + cacheGdkEventExposeFids(env, dest, &PGLOB(GdkEventExposeFc)); + setGdkEventExposeFields(env, dest, src, &PGLOB(GdkEventExposeFc)); + } +} + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove__Lorg_eclipse_swt_internal_gtk_GdkVisual_2I + (JNIEnv *env, jclass that, jobject dest, jint src, jint count) +{ + DECL_GLOB(pGlob) + if (dest) { + cacheGdkVisualFids(env, dest, &PGLOB(GdkVisualFc)); + setGdkVisualFields(env, dest, src, &PGLOB(GdkVisualFc)); + } +} + +/* GTK */ + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove__Lorg_eclipse_swt_internal_gtk_GtkStyleClass_2I + (JNIEnv *env, jclass that, jobject dest, jint src) +{ + DECL_GLOB(pGlob) + if (dest) { + cacheGtkStyleClassFids(env, dest, &PGLOB(GtkStyleClassFc)); + setGtkStyleClassFields(env, dest, src, &PGLOB(GtkStyleClassFc)); + } +} + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove__Lorg_eclipse_swt_internal_gtk_GtkAllocation_2I + (JNIEnv *env, jclass that, jobject dest, jint src) +{ + DECL_GLOB(pGlob) + if (dest) { + cacheGtkAllocationFids(env, dest, &PGLOB(GtkAllocationFc)); + setGtkAllocationFields(env, dest, src, &PGLOB(GtkAllocationFc)); + } +} + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove__Lorg_eclipse_swt_internal_gtk_GtkCombo_2I + (JNIEnv *env, jclass that, jobject dest, jint src) +{ + DECL_GLOB(pGlob) + if (dest) { + cacheGtkComboFids(env, dest, &PGLOB(GtkComboFc)); + setGtkComboFields(env, dest, src, &PGLOB(GtkComboFc)); + } +} + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove__Lorg_eclipse_swt_internal_gtk_GtkCList_2I + (JNIEnv *env, jclass that, jobject dest, jint src) +{ + DECL_GLOB(pGlob) + if (dest) { + cacheGtkCListFids(env, dest, &PGLOB(GtkCListFc)); + setGtkCListFields(env, dest, src, &PGLOB(GtkCListFc)); + } +} + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove__Lorg_eclipse_swt_internal_gtk_GtkCTree_2I + (JNIEnv *env, jclass that, jobject dest, jint src) +{ + DECL_GLOB(pGlob) + if (dest) { + cacheGtkCTreeFids(env, dest, &PGLOB(GtkCTreeFc)); + setGtkCTreeFields(env, dest, src, &PGLOB(GtkCTreeFc)); + } +} + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove__Lorg_eclipse_swt_internal_gtk_GtkRequisition_2I + (JNIEnv *env, jclass that, jobject dest, jint src) +{ + DECL_GLOB(pGlob) + if (dest) { + cacheGtkRequisitionFids(env, dest, &PGLOB(GtkRequisitionFc)); + setGtkRequisitionFields(env, dest, src, &PGLOB(GtkRequisitionFc)); + } +} + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove__Lorg_eclipse_swt_internal_gtk_GtkStyle_2I + (JNIEnv *env, jclass that, jobject dest, jint src) +{ + DECL_GLOB(pGlob) + if (dest) { + cacheGtkStyleFids(env, dest, &PGLOB(GtkStyleFc)); + setGtkStyleFields(env, dest, src, &PGLOB(GtkStyleFc)); + } +} + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove__Lorg_eclipse_swt_internal_gtk_GtkAdjustment_2I + (JNIEnv *env, jclass that, jobject dest, jint src) +{ + DECL_GLOB(pGlob) + if (dest) { + cacheGtkAdjustmentFids(env, dest, &PGLOB(GtkAdjustmentFc)); + setGtkAdjustmentFields(env, dest, src, &PGLOB(GtkAdjustmentFc)); + } +} + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove__Lorg_eclipse_swt_internal_gtk_GtkCListRow_2I + (JNIEnv *env, jclass that, jobject dest, jint src) +{ + DECL_GLOB(pGlob) + if (dest) { + cacheGtkCListRowFids(env, dest, &PGLOB(GtkCListRowFc)); + setGtkCListRowFields(env, dest, src, &PGLOB(GtkCListRowFc)); + } +} + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove__Lorg_eclipse_swt_internal_gtk_GtkCListColumn_2I + (JNIEnv *env, jclass that, jobject dest, jint src) +{ + DECL_GLOB(pGlob) + if (dest) { + cacheGtkCListColumnFids(env, dest, &PGLOB(GtkCListColumnFc)); + setGtkCListColumnFields(env, dest, src, &PGLOB(GtkCListColumnFc)); + } +} + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove__Lorg_eclipse_swt_internal_gtk_GtkCTreeRow_2I + (JNIEnv *env, jclass that, jobject dest, jint src) +{ + DECL_GLOB(pGlob) + if (dest) { + cacheGtkCTreeRowFids(env, dest, &PGLOB(GtkCTreeRowFc)); + setGtkCTreeRowFields(env, dest, src, &PGLOB(GtkCTreeRowFc)); + } +} + +/* Write */ + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove__ILorg_eclipse_swt_internal_gtk_GtkAdjustment_2 + (JNIEnv *env, jclass that, jint dest, jobject src) +{ + DECL_GLOB(pGlob) + if (src) { + cacheGtkAdjustmentFids(env, src, &PGLOB(GtkAdjustmentFc)); + getGtkAdjustmentFields(env, src, dest, &PGLOB(GtkAdjustmentFc)); + } +} + + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove__ILorg_eclipse_swt_internal_gtk_GtkCListColumn_2 + (JNIEnv *env, jclass that, jint dest, jobject src) +{ + DECL_GLOB(pGlob) + if (src) { + cacheGtkCListColumnFids(env, src, &PGLOB(GtkCListColumnFc)); + getGtkCListColumnFields(env, src, dest, &PGLOB(GtkCListColumnFc)); + } +} + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove__ILorg_eclipse_swt_internal_gtk_GtkStyle_2 + (JNIEnv *env, jclass that, jint dest, jobject src) +{ + DECL_GLOB(pGlob) + if (src) { + cacheGtkStyleFids(env, src, &PGLOB(GtkStyleFc)); + getGtkStyleFields(env, src, dest, &PGLOB(GtkStyleFc)); + } +} + + +/* Primitive memmoves */ + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove__I_3BI + (JNIEnv *env, jclass that, jint dest, jbyteArray src, jint count) +{ + jbyte *src1; + if (src) { + src1 = (*env)->GetByteArrayElements(env, src, NULL); + memmove((void*)dest, (void*)src1, count); + (*env)->ReleaseByteArrayElements(env, src, src1, 0); + } +} + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove__I_3II + (JNIEnv *env, jclass that, jint dest, jintArray src, jint count) +{ + jint *src1; + if (src) { + src1 = (*env)->GetIntArrayElements(env, src, NULL); + memmove((void*)dest, (void*)src1, count); + (*env)->ReleaseIntArrayElements(env, src, src1, 0); + } +} + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove___3III + (JNIEnv *env, jclass that, jintArray dest, jint src, jint count) +{ + jint *dest1; + if (dest) { + dest1 = (*env)->GetIntArrayElements(env, dest, NULL); + memmove((void*)dest1, (void*)src, count); + (*env)->ReleaseIntArrayElements(env, dest, dest1, 0); + } +} + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove___3BII + (JNIEnv *env, jclass that, jbyteArray dest, jint src, jint count) +{ + jbyte *dest1; + if (dest) { + dest1 = (*env)->GetByteArrayElements(env, dest, NULL); + memmove((void*)dest1, (void*)src, count); + (*env)->ReleaseByteArrayElements(env, dest, dest1, 0); + } +} + +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_gtk_OS_memmove___3I_3BI + (JNIEnv *env, jclass that, jintArray dest, jbyteArray src, jint count) +{ + jint *dest1; + jbyte *src1; + if (src && dest) { + dest1 = (*env)->GetIntArrayElements(env, dest, NULL); + src1 = (*env)->GetByteArrayElements(env, dest, NULL); + memmove((void*)dest1, (void*)src1, count); + (*env)->ReleaseIntArrayElements(env, dest, dest1, 0); + (*env)->ReleaseByteArrayElements(env, src, src1, 0); + } +} |