jdk/src/solaris/native/sun/awt/awt_Label.c
changeset 1203 3e5496df0d2b
parent 1202 5a725d2f0daa
parent 1201 e87f9c042699
child 1211 b659a7cee935
--- a/jdk/src/solaris/native/sun/awt/awt_Label.c	Thu Sep 11 11:25:48 2008 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,212 +0,0 @@
-/*
- * Copyright 1995-2001 Sun Microsystems, Inc.  All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation.  Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code 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 General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-#ifdef HEADLESS
-    #error This file should not be included in headless library
-#endif
-
-#include "awt_p.h"
-#include "java_awt_Color.h"
-#include "java_awt_Font.h"
-#include "java_awt_Label.h"
-#include "sun_awt_motif_MLabelPeer.h"
-#include "sun_awt_motif_MComponentPeer.h"
-
-#include "awt_Component.h"
-
-#include "multi_font.h"
-#include <jni.h>
-#include <jni_util.h>
-
-extern struct MComponentPeerIDs mComponentPeerIDs;
-extern AwtGraphicsConfigDataPtr
-    copyGraphicsConfigToPeer(JNIEnv *env, jobject this);
-
-static char emptyString[] = "";
-
-
-/*
- * Class:     sun_awt_motif_MLabelPeer
- * Method:    create
- * Signature: (Lsun/awt/motif/MComponentPeer;)V
- */
-JNIEXPORT void JNICALL Java_sun_awt_motif_MLabelPeer_create
-  (JNIEnv *env, jobject this, jobject parent)
-{
-    struct ComponentData *cdata;
-    struct ComponentData *wdata;
-    jobject target;
-    jobject globalRef = awtJNI_CreateAndSetGlobalRef(env, this);
-    AwtGraphicsConfigDataPtr adata;
-    AWT_LOCK();
-
-    if (JNU_IsNull(env, parent)) {
-        JNU_ThrowNullPointerException(env, "NullPointerException");
-        AWT_UNLOCK();
-
-        return;
-    }
-    target = (*env)->GetObjectField(env, this, mComponentPeerIDs.target);
-    wdata = (struct ComponentData *)
-        JNU_GetLongFieldAsPtr(env, parent, mComponentPeerIDs.pData);
-
-    if (JNU_IsNull(env, target) || wdata == NULL) {
-        JNU_ThrowNullPointerException(env, "NullPointerException");
-        AWT_UNLOCK();
-
-        return;
-    }
-    cdata = ZALLOC(ComponentData);
-    if (cdata == NULL) {
-        JNU_ThrowOutOfMemoryError(env, "OutOfMemoryError");
-        AWT_UNLOCK();
-        return;
-    }
-    JNU_SetLongFieldFromPtr(env, this, mComponentPeerIDs.pData,cdata);
-
-    adata = copyGraphicsConfigToPeer(env, this);
-
-    cdata->widget = XtVaCreateManagedWidget("",
-                                            xmLabelWidgetClass, wdata->widget,
-                                            XmNhighlightThickness, 0,
-                                            XmNalignment, XmALIGNMENT_BEGINNING,
-                                            XmNrecomputeSize, False,
-                                            XmNuserData, (XtPointer) globalRef,
-                                            XmNtraversalOn, True,
-                                            XmNscreen,
-                                            ScreenOfDisplay(awt_display,
-                                               adata->awt_visInfo.screen),
-                                            XmNfontList, getMotifFontList(),
-                                            NULL);
-    XtSetMappedWhenManaged(cdata->widget, False);
-    AWT_UNLOCK();
-}
-
-/*
- * Class:     sun_awt_motif_MLabelPeer
- * Method:    setText
- * Signature: (Ljava/lang/String;)V
- */
-JNIEXPORT void JNICALL Java_sun_awt_motif_MLabelPeer_setText
-  (JNIEnv *env, jobject this, jstring label)
-{
-    char *clabel = NULL;
-    char *clabelEnd;
-    struct ComponentData *cdata;
-    XmString xim = NULL;
-    jobject font;
-    Boolean isMultiFont;
-
-    AWT_LOCK();
-
-    font = awtJNI_GetFont(env, this);
-    isMultiFont = awtJNI_IsMultiFont(env, font);
-
-    cdata = (struct ComponentData *)
-        JNU_GetLongFieldAsPtr(env,this,mComponentPeerIDs.pData);
-    if (cdata == NULL || cdata->widget == NULL) {
-        JNU_ThrowNullPointerException(env, "NullPointerException");
-        AWT_UNLOCK();
-        return;
-    }
-    if (JNU_IsNull(env, label)) {
-        clabel = emptyString;
-    } else {
-        if (isMultiFont) {
-            if ((*env)->GetStringLength(env, label) <= 0) {
-                xim = XmStringCreateLocalized("");
-            } else {
-                xim = awtJNI_MakeMultiFontString(env, label, font);
-            }
-        } else {
-            clabel = (char *) JNU_GetStringPlatformChars(env, label, NULL);
-
-            /* scan for any \n's and terminate the string at that point */
-            clabelEnd = strchr(clabel, '\n');
-            if (clabelEnd != NULL) {
-                *clabelEnd = '\0';
-            }
-        }
-    }
-
-    if (!isMultiFont) {
-        xim = XmStringCreate(clabel, "labelFont");
-    }
-    XtVaSetValues(cdata->widget, XmNlabelString, xim, NULL);
-
-    if (!isMultiFont) {
-        /* Must test for "" too! */
-        if (clabel != NULL && (*clabel != '\0')) {
-            JNU_ReleaseStringPlatformChars(env, label, (const char *) clabel);
-        }
-    }
-    XmStringFree(xim);
-    AWT_FLUSH_UNLOCK();
-}
-
-/*
- * Class:     sun_awt_motif_MLabelPeer
- * Method:    setAlignment
- * Signature: (I)V
- */
-JNIEXPORT void JNICALL Java_sun_awt_motif_MLabelPeer_setAlignment
-  (JNIEnv *env, jobject this, jint alignment)
-{
-    struct ComponentData *cdata;
-
-    AWT_LOCK();
-
-    cdata = (struct ComponentData *)
-        JNU_GetLongFieldAsPtr(env,this,mComponentPeerIDs.pData);
-    if (cdata == NULL || cdata->widget == NULL) {
-        JNU_ThrowNullPointerException(env, "NullPointerException");
-        AWT_UNLOCK();
-        return;
-    }
-    switch (alignment) {
-        case java_awt_Label_LEFT:
-            XtVaSetValues(cdata->widget,
-                          XmNalignment, XmALIGNMENT_BEGINNING,
-                          NULL);
-            break;
-
-        case java_awt_Label_CENTER:
-            XtVaSetValues(cdata->widget,
-                          XmNalignment, XmALIGNMENT_CENTER,
-                          NULL);
-            break;
-
-        case java_awt_Label_RIGHT:
-            XtVaSetValues(cdata->widget,
-                          XmNalignment, XmALIGNMENT_END,
-                          NULL);
-            break;
-
-        default:
-            break;
-    }
-
-    AWT_FLUSH_UNLOCK();
-}