Changeset 244 for trunk/src


Ignore:
Timestamp:
Jan 8, 2010, 4:24:34 PM (16 years ago)
Author:
lpino
Message:
  • More structs needed are implemented in the JNI code
Location:
trunk/src/plugins
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/plugins/org.eclipse.swt.pm/classes.inc

    r241 r244  
    208208org\eclipse\swt\internal\pm\RECORDCORE.java
    209209org\eclipse\swt\internal\pm\RECORDINSERT.java
     210org\eclipse\swt\internal\pm\SIZEL.java
     211org\eclipse\swt\internal\pm\CNRINFO.java
    210212
    211213# SWT PI (+)
  • trunk/src/plugins/org.eclipse.swt/Eclipse SWT PI/pm/library/structs.c

    r243 r244  
    179179TREEITEMDESC_FID_CACHE TREEITEMDESCFc;
    180180RECORDINSERT_FID_CACHE RECORDINSERTFc;
     181SIZEL_FID_CACHE SIZELFc;
     182CNRINFO_FID_CACHE CNRINFOFc;
    181183
    182184/*@@TODO (dmik): remove
     
    18941896}
    18951897
     1898/* SIZEL struct */
     1899
     1900void cacheSIZELFids(JNIEnv *env, jobject lpObject, PSIZEL_FID_CACHE lpCache)
     1901{
     1902    if (lpCache->cached) return;
     1903    lpCache->clazz = (*env)->GetObjectClass(env, lpObject);
     1904    lpCache->cx = (*env)->GetFieldID(env, lpCache->clazz, "cx", "I");
     1905    lpCache->cy = (*env)->GetFieldID(env, lpCache->clazz, "cy", "I");
     1906    lpCache->cached = 1;
     1907}
     1908
     1909PSIZEL getSIZELFields(JNIEnv *env, jobject lpObject, PSIZEL lpStruct, PSIZEL_FID_CACHE lpCache)
     1910{
     1911    if (!lpCache->cached) cacheSIZELFids(env, lpObject, lpCache);
     1912    lpStruct->cx = (*env)->GetIntField(env, lpObject, lpCache->cx);
     1913    lpStruct->cy = (*env)->GetIntField(env, lpObject, lpCache->cy);
     1914    return lpStruct;
     1915}
     1916
     1917void setSIZELFields(JNIEnv *env, jobject lpObject, PSIZEL lpStruct, PSIZEL_FID_CACHE lpCache)
     1918{
     1919    if (!lpCache->cached) cacheSIZELFids(env, lpObject, lpCache);
     1920    (*env)->SetIntField(env, lpObject, lpCache->cx, lpStruct->cx);
     1921    (*env)->SetIntField(env, lpObject, lpCache->cy, lpStruct->cy);
     1922}
     1923
     1924/* CNRINFO struct */
     1925
     1926void cacheCNRINFOFids(JNIEnv *env, jobject lpObject, PCNRINFO_FID_CACHE lpCache)
     1927{
     1928    if (lpCache->cached) return;
     1929    lpCache->clazz = (*env)->GetObjectClass(env, lpObject);
     1930    lpCache->cb = (*env)->GetFieldID(env, lpCache->clazz, "cb", "I");
     1931    lpCache->pSortRecord = (*env)->GetFieldID(env, lpCache->clazz, "pSortRecord", "I");
     1932    lpCache->pFieldInfoLast = (*env)->GetFieldID(env, lpCache->clazz, "pFieldInfoLast", "I");
     1933    lpCache->pFieldInfoObject = (*env)->GetFieldID(env, lpCache->clazz, "pFieldInfoObject", "I");
     1934    lpCache->pszCnrTitle = (*env)->GetFieldID(env, lpCache->clazz, "pszCnrTitle", "Lorg/eclipse/swt/internal/pm/PSZ;");
     1935    lpCache->flWindowAttr = (*env)->GetFieldID(env, lpCache->clazz, "flWindowAttr", "I");
     1936    lpCache->ptlOrigin = (*env)->GetFieldID(env, lpCache->clazz, "ptlOrigin", "Lorg/eclipse/swt/internal/pm/POINTL;");
     1937    lpCache->cDelta  = (*env)->GetFieldID(env, lpCache->clazz, "cDelta ", "I");
     1938    lpCache->cRecords = (*env)->GetFieldID(env, lpCache->clazz, "cRecords", "I");
     1939    lpCache->slBitmapOrIcon = (*env)->GetFieldID(env, lpCache->clazz, "slBitmapOrIcon", "Lorg/eclipse/swt/internal/pm/SIZEL;");
     1940    lpCache->slTreeBitmapOrIcon = (*env)->GetFieldID(env, lpCache->clazz, "slTreeBitmapOrIcon", "Lorg/eclipse/swt/internal/pm/SIZEL;");
     1941    lpCache->hbmExpanded = (*env)->GetFieldID(env, lpCache->clazz, "hbmExpanded", "I");
     1942    lpCache->hbmCollapsed = (*env)->GetFieldID(env, lpCache->clazz, "hbmCollapsed", "I");
     1943    lpCache->hptrExpanded = (*env)->GetFieldID(env, lpCache->clazz, "hptrExpanded", "I");
     1944    lpCache->hptrCollapsed = (*env)->GetFieldID(env, lpCache->clazz, "hptrCollapsed", "I");
     1945    lpCache->cyLineSpacing = (*env)->GetFieldID(env, lpCache->clazz, "cyLineSpacing", "I");
     1946    lpCache->cxTreeIndent = (*env)->GetFieldID(env, lpCache->clazz, "cxTreeIndent", "I");
     1947    lpCache->cxTreeLine = (*env)->GetFieldID(env, lpCache->clazz, "cxTreeLine", "I");
     1948    lpCache->cFields = (*env)->GetFieldID(env, lpCache->clazz, "cFields", "I");
     1949    lpCache->xVertSplitbar = (*env)->GetFieldID(env, lpCache->clazz, "xVertSplitbar", "I");
     1950    lpCache->cached = 1;
     1951}
     1952
     1953PCNRINFO getCNRINFOFields(JNIEnv *env, jobject lpObject, PCNRINFO lpStruct, PCNRINFO_FID_CACHE lpCache)
     1954{
     1955    if (!lpCache->cached) cacheCNRINFOFids(env, lpObject, lpCache);
     1956    lpStruct->cb = (*env)->GetIntField(env, lpObject, lpCache->cb);
     1957    lpStruct->pSortRecord = (PVOID)(*env)->GetIntField(env, lpObject, lpCache->pSortRecord);
     1958    lpStruct->pFieldInfoLast = (PFIELDINFO)(*env)->GetIntField(env, lpObject, lpCache->pFieldInfoLast);
     1959    lpStruct->pFieldInfoObject = (PFIELDINFO)(*env)->GetIntField(env, lpObject, lpCache->pFieldInfoObject);
     1960   {
     1961        jobject psz = (*env)->GetObjectField(env, lpObject, lpCache->pszCnrTitle);
     1962        if(psz)
     1963            lpStruct->pszCnrTitle = getPSZBytes(env,psz);
     1964    }
     1965    lpStruct->flWindowAttr = (*env)->GetIntField(env, lpObject, lpCache->flWindowAttr);
     1966    {
     1967        jobject pptlOrigin = (*env)->GetObjectField(env, lpObject, lpCache->ptlOrigin);
     1968        if (pptlOrigin && &(lpStruct->ptlOrigin)) getPOINTLFields(env, pptlOrigin, &(lpStruct->ptlOrigin), &PGLOB(POINTLFc));
     1969    }
     1970    lpStruct->cDelta = (*env)->GetIntField(env, lpObject, lpCache->cDelta);
     1971    lpStruct->cRecords = (*env)->GetIntField(env, lpObject, lpCache->cRecords);
     1972    {
     1973        jobject sizel = (*env)->GetObjectField(env, lpObject, lpCache->slBitmapOrIcon);
     1974        if (sizel && &(lpStruct->slBitmapOrIcon)) getSIZELFields(env, sizel, &(lpStruct->slBitmapOrIcon), &PGLOB(SIZELFc));
     1975    }
     1976    {
     1977        jobject sizel = (*env)->GetObjectField(env, lpObject, lpCache->slTreeBitmapOrIcon);
     1978        if (sizel && &(lpStruct->slTreeBitmapOrIcon)) getSIZELFields(env, sizel, &(lpStruct->slTreeBitmapOrIcon), &PGLOB(SIZELFc));
     1979    }
     1980    lpStruct->hbmExpanded = (*env)->GetIntField(env, lpObject, lpCache->hbmExpanded);
     1981    lpStruct->hbmCollapsed = (*env)->GetIntField(env, lpObject, lpCache->hbmCollapsed);
     1982    lpStruct->hptrExpanded = (*env)->GetIntField(env, lpObject, lpCache->hptrExpanded);
     1983    lpStruct->hptrCollapsed = (*env)->GetIntField(env, lpObject, lpCache->hptrCollapsed);
     1984    lpStruct->cyLineSpacing = (*env)->GetIntField(env, lpObject, lpCache->cyLineSpacing);
     1985    lpStruct->cxTreeIndent = (*env)->GetIntField(env, lpObject, lpCache->cxTreeIndent);
     1986    lpStruct->cxTreeLine = (*env)->GetIntField(env, lpObject, lpCache->cxTreeLine);
     1987    lpStruct->cFields = (*env)->GetIntField(env, lpObject, lpCache->cFields);
     1988    lpStruct->xVertSplitbar = (*env)->GetIntField(env, lpObject, lpCache->xVertSplitbar);
     1989    return lpStruct;
     1990}
     1991
     1992void setCNRINFOFields(JNIEnv *env, jobject lpObject, PCNRINFO lpStruct, PCNRINFO_FID_CACHE lpCache)
     1993{
     1994    if (!lpCache->cached) cacheCNRINFOFids(env, lpObject, lpCache);
     1995    (*env)->SetIntField(env, lpObject, lpCache->cb, lpStruct->cb);
     1996    (*env)->SetIntField(env, lpObject, lpCache->pSortRecord, (LONG)lpStruct->pSortRecord);
     1997    (*env)->SetIntField(env, lpObject, lpCache->pFieldInfoLast, (LONG)lpStruct->pFieldInfoLast);
     1998    (*env)->SetIntField(env, lpObject, lpCache->pFieldInfoObject, lpStruct->pFieldInfoObject);
     1999    {
     2000        jobject psz = (*env)->GetObjectField(env, lpObject, lpCache->pszCnrTitle);
     2001        if (psz)
     2002            releasePSZBytes(env, psz, lpStruct->pszCnrTitle);
     2003    }
     2004    (*env)->SetIntField(env, lpObject, lpCache->flWindowAttr, lpStruct->flWindowAttr);
     2005    {
     2006        jobject pptlOrigin = (*env)->GetObjectField(env, lpObject, lpCache->ptlOrigin);
     2007        if (pptlOrigin && &(lpStruct->ptlOrigin)) setPOINTLFields(env, pptlOrigin, &(lpStruct->ptlOrigin), &PGLOB(POINTLFc));
     2008    }
     2009    (*env)->SetIntField(env, lpObject, lpCache->cDelta, lpStruct->cDelta);
     2010    (*env)->SetIntField(env, lpObject, lpCache->cRecords, lpStruct->cRecords);
     2011    {
     2012        jobject sizel = (*env)->GetObjectField(env, lpObject, lpCache->slBitmapOrIcon);
     2013        if (sizel && &(lpStruct->slBitmapOrIcon)) setSIZELFields(env, sizel, &(lpStruct->slBitmapOrIcon), &PGLOB(SIZELFc));
     2014    }
     2015    {
     2016        jobject sizel = (*env)->GetObjectField(env, lpObject, lpCache->slTreeBitmapOrIcon);
     2017        if (sizel && &(lpStruct->slTreeBitmapOrIcon)) setSIZELFields(env, sizel, &(lpStruct->slTreeBitmapOrIcon), &PGLOB(SIZELFc));
     2018    }
     2019    (*env)->SetIntField(env, lpObject, lpCache->hbmExpanded, lpStruct->hbmExpanded);
     2020    (*env)->SetIntField(env, lpObject, lpCache->hbmCollapsed, lpStruct->hbmCollapsed);
     2021    (*env)->SetIntField(env, lpObject, lpCache->hptrExpanded, lpStruct->hptrExpanded);
     2022    (*env)->SetIntField(env, lpObject, lpCache->hptrCollapsed, lpStruct->hptrCollapsed);
     2023    (*env)->SetIntField(env, lpObject, lpCache->cyLineSpacing, lpStruct->cyLineSpacing);
     2024    (*env)->SetIntField(env, lpObject, lpCache->cxTreeIndent, lpStruct->cxTreeIndent);
     2025    (*env)->SetIntField(env, lpObject, lpCache->cxTreeLine, lpStruct->cxTreeLine);
     2026    (*env)->SetIntField(env, lpObject, lpCache->cFields, lpStruct->cFields);
     2027    (*env)->SetIntField(env, lpObject, lpCache->xVertSplitbar, lpStruct->xVertSplitbar);
     2028}
     2029
    18962030/*@@TODO (dmik): don't need, remove!
    18972031void cacheFACENAMEDESCFids(JNIEnv *env, jobject lpObject, PFACENAMEDESC_FID_CACHE lpCache)
  • trunk/src/plugins/org.eclipse.swt/Eclipse SWT PI/pm/library/structs.h

    r243 r244  
    674674void setRECORDCOREFields(JNIEnv *env, jobject lpObject, PRECORDCORE lpStruct, PRECORDCORE_FID_CACHE lpCache);
    675675
     676/* SIZEL struct */
     677typedef struct SIZEL_FID_CACHE {
     678    int cached;
     679    jclass clazz;
     680    jfieldID
     681        cx,       
     682        cy;       
     683} SIZEL_FID_CACHE;
     684typedef SIZEL_FID_CACHE *PSIZEL_FID_CACHE;
     685
     686void cacheSIZELFids(JNIEnv *env, jobject lpObject, PSIZEL_FID_CACHE lpCache);
     687PSIZEL getSIZELFields(JNIEnv *env, jobject lpObject, PSIZEL lpStruct, PSIZEL_FID_CACHE lpCache);
     688void setSIZELFields(JNIEnv *env, jobject lpObject, PSIZEL lpStruct, PSIZEL_FID_CACHE lpCache);
     689
     690/* CNRINFO struct */
     691typedef struct CNRINFO_FID_CACHE {
     692    int cached;
     693    jclass clazz;
     694    jfieldID
     695        cb,
     696        pSortRecord,
     697        pFieldInfoLast,
     698        pFieldInfoObject,
     699        pszCnrTitle,
     700        flWindowAttr,
     701        ptlOrigin,
     702        cDelta,
     703        cRecords,
     704        slBitmapOrIcon,
     705        slTreeBitmapOrIcon,
     706        hbmExpanded,
     707        hbmCollapsed,
     708        hptrExpanded,
     709        hptrCollapsed,
     710        cyLineSpacing,
     711        cxTreeIndent,
     712        cxTreeLine,
     713        cFields,
     714        xVertSplitbar;
     715} CNRINFO_FID_CACHE;
     716typedef CNRINFO_FID_CACHE *PCNRINFO_FID_CACHE;
     717
     718void cacheCNRINFOFids(JNIEnv *env, jobject lpObject, PCNRINFO_FID_CACHE lpCache);
     719PCNRINFO getCNRINFOFields(JNIEnv *env, jobject lpObject, PCNRINFO lpStruct, PCNRINFO_FID_CACHE lpCache);
     720void setCNRINFOFields(JNIEnv *env, jobject lpObject, PCNRINFO lpStruct, PCNRINFO_FID_CACHE lpCache);
     721
    676722/* FACENAMEDESC struct */
    677723/*@@TODO (dmik): remove!
     
    725771extern RECORDINSERT_FID_CACHE RECORDINSERTFc;
    726772extern RECORDCORE_FID_CACHE RECORDCOREFc;
     773extern SIZEL_FID_CACHE SIZELFc;
     774extern CNRINFO_FID_CACHE CNRINFOFc;
    727775/*@@TODO (dmik): remove!
    728776extern FACENAMEDESC_FID_CACHE FACENAMEDESCFc;
Note: See TracChangeset for help on using the changeset viewer.