/[classpath]/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
ViewVC logotype

Diff of /classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.7 by cbj, Fri May 2 02:55:07 2003 UTC revision 1.8 by jewel, Mon Jun 9 19:40:34 2003 UTC
# Line 40  exception statement from your version. * Line 40  exception statement from your version. *
40  #include "gnu_java_awt_peer_gtk_GtkComponentPeer.h"  #include "gnu_java_awt_peer_gtk_GtkComponentPeer.h"
41  #include <gtk/gtkprivate.h>  #include <gtk/gtkprivate.h>
42    
 #define GTK_OBJECT_SETV(ptr, arg)                \  
   gdk_threads_enter ();                          \  
   {                                              \  
     char *error;                                 \  
     GtkArg test_arg;                             \  
                                                  \  
     gtk_object_get (GTK_OBJECT_TYPE (ptr), arg.name, GTK_VALUE_POINTER (test_arg)); \  
     if (GTK_VALUE_POINTER (test_arg) == NULL)                               \  
       {                                          \  
         /* assume the argument is destined for the container's only child */ \  
         ptr = gtk_container_children (GTK_CONTAINER (ptr))->data;            \  
       }                                          \  
     switch (arg.type)                                                       \  
     {                                                                       \  
     case GTK_TYPE_CHAR:                                                     \  
       gtk_object_set (GTK_OBJECT (ptr), arg.name, GTK_VALUE_CHAR (arg));    \  
       break;                                                                \  
     case GTK_TYPE_UCHAR:                                                    \  
       gtk_object_set (GTK_OBJECT (ptr), arg.name, GTK_VALUE_UCHAR (arg));   \  
       break;                                                                \  
     case GTK_TYPE_BOOL:                                                     \  
       gtk_object_set (GTK_OBJECT (ptr), arg.name, GTK_VALUE_BOOL (arg));    \  
       break;                                                                \  
     case GTK_TYPE_INT:                                                      \  
       gtk_object_set (GTK_OBJECT (ptr), arg.name, GTK_VALUE_INT (arg));     \  
       break;                                                                \  
     case GTK_TYPE_UINT:                                                     \  
       gtk_object_set (GTK_OBJECT (ptr), arg.name, GTK_VALUE_UINT (arg));    \  
       break;                                                                \  
     case GTK_TYPE_LONG:                                                     \  
       gtk_object_set (GTK_OBJECT (ptr), arg.name, GTK_VALUE_LONG (arg));    \  
       break;                                                                \  
     case GTK_TYPE_ULONG:                                                    \  
       gtk_object_set (GTK_OBJECT (ptr), arg.name, GTK_VALUE_ULONG (arg));   \  
       break;                                                                \  
     case GTK_TYPE_FLOAT:                                                    \  
       gtk_object_set (GTK_OBJECT (ptr), arg.name, GTK_VALUE_FLOAT (arg));   \  
       break;                                                                \  
     case GTK_TYPE_DOUBLE:                                                   \  
       gtk_object_set (GTK_OBJECT (ptr), arg.name, GTK_VALUE_DOUBLE (arg));  \  
       break;                                                                \  
     case GTK_TYPE_STRING:                                                   \  
       gtk_object_set (GTK_OBJECT (ptr), arg.name, GTK_VALUE_STRING (arg));  \  
       break;                                                                \  
     case GTK_TYPE_BOXED:                                                    \  
       gtk_object_set (GTK_OBJECT (ptr), arg.name, GTK_VALUE_BOXED (arg));   \  
       break;                                                                \  
     case GTK_TYPE_POINTER:                                                  \  
       gtk_object_set (GTK_OBJECT (ptr), arg.name, GTK_VALUE_POINTER (arg)); \  
       break;                                                                \  
     }                                                                       \  
   }                                                                         \  
   gdk_threads_leave (); \  
   
   
43  JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_GtkGenericPeer_dispose  JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_GtkGenericPeer_dispose
44    (JNIEnv *env, jobject obj)    (JNIEnv *env, jobject obj)
45  {  {
# Line 558  Java_gnu_java_awt_peer_gtk_GtkComponentP Line 503  Java_gnu_java_awt_peer_gtk_GtkComponentP
503    arg.type = GTK_TYPE_STRING;    arg.type = GTK_TYPE_STRING;
504    arg.name = (char *) name;    arg.name = (char *) name;
505    GTK_VALUE_STRING (arg) = (char *) value;    GTK_VALUE_STRING (arg) = (char *) value;
506      gdk_threads_enter();                          
507    GTK_OBJECT_SETV (ptr, arg);      g_object_set(ptr, name, value, NULL);
508      gdk_threads_leave();
509    
510    (*env)->ReleaseStringUTFChars (env, jname, name);    (*env)->ReleaseStringUTFChars (env, jname, name);
511    (*env)->ReleaseStringUTFChars (env, jvalue, value);    (*env)->ReleaseStringUTFChars (env, jvalue, value);
# Line 579  JNIEXPORT void JNICALL Java_gnu_java_awt Line 525  JNIEXPORT void JNICALL Java_gnu_java_awt
525    arg.name = (char *) name;    arg.name = (char *) name;
526    GTK_VALUE_BOOL (arg) = value;    GTK_VALUE_BOOL (arg) = value;
527    
528    GTK_OBJECT_SETV (ptr, arg);      gdk_threads_enter();                          
529      g_object_set(ptr, name, GTK_VALUE_BOOL(arg), NULL);
530      gdk_threads_leave();
531    
532    (*env)->ReleaseStringUTFChars (env, jname, name);    (*env)->ReleaseStringUTFChars (env, jname, name);
533  }  }
# Line 598  JNIEXPORT void JNICALL Java_gnu_java_awt Line 546  JNIEXPORT void JNICALL Java_gnu_java_awt
546    arg.name = (char *) name;    arg.name = (char *) name;
547    GTK_VALUE_INT (arg) = value;    GTK_VALUE_INT (arg) = value;
548        
549    GTK_OBJECT_SETV (ptr, arg);      gdk_threads_enter();                          
550      g_object_set(ptr, name, value, NULL);
551      gdk_threads_leave();
552    
553    (*env)->ReleaseStringUTFChars (env, jname, name);    (*env)->ReleaseStringUTFChars (env, jname, name);
554  }  }
# Line 616  JNIEXPORT void JNICALL Java_gnu_java_awt Line 566  JNIEXPORT void JNICALL Java_gnu_java_awt
566    arg.type = GTK_TYPE_FLOAT;    arg.type = GTK_TYPE_FLOAT;
567    arg.name = (char *) name;    arg.name = (char *) name;
568    GTK_VALUE_FLOAT (arg) = value;    GTK_VALUE_FLOAT (arg) = value;
569      
570    GTK_OBJECT_SETV (ptr, arg);      gdk_threads_enter();                          
571      g_object_set(ptr, name, value, NULL);
572      gdk_threads_leave();
573    
574    (*env)->ReleaseStringUTFChars (env, jname, name);    (*env)->ReleaseStringUTFChars (env, jname, name);
575  }  }
# Line 650  Java_gnu_java_awt_peer_gtk_GtkComponentP Line 602  Java_gnu_java_awt_peer_gtk_GtkComponentP
602    arg.name = (char *) name;    arg.name = (char *) name;
603    GTK_VALUE_OBJECT (arg) = GTK_OBJECT (ptr2);    GTK_VALUE_OBJECT (arg) = GTK_OBJECT (ptr2);
604        
605    GTK_OBJECT_SETV (ptr1, arg);      gdk_threads_enter();                          
606      g_object_set(ptr1, name, ptr2, NULL);
607      gdk_threads_leave();
608    
609    (*env)->ReleaseStringUTFChars (env, jname, name);    (*env)->ReleaseStringUTFChars (env, jname, name);
610  }  }

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.8

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26