Changeset 241 for trunk/src/plugins


Ignore:
Timestamp:
Dec 22, 2009, 2:49:09 PM (16 years ago)
Author:
lpino
Message:
  • New structures needed to work with containers (tree view)
Location:
trunk/src/plugins
Files:
4 edited

Legend:

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

    r240 r241  
    204204org\eclipse\swt\internal\pm\SLDCDATA.java
    205205org\eclipse\swt\internal\pm\POINTS.java
     206org\eclipse\swt\internal\pm\MINIRECORDCORE.java
     207org\eclipse\swt\internal\pm\TREEITEMDESC.java
     208org\eclipse\swt\internal\pm\RECORDCORE.java
     209org\eclipse\swt\internal\pm\RECORDINSERT.java
    206210
    207211# SWT PI (+)
  • trunk/src/plugins/org.eclipse.swt/Eclipse SWT PI/pm/library/structs.c

    r174 r241  
    176176SLDCDATA_FID_CACHE SLDCDATAFc;
    177177POINTS_FID_CACHE POINTSFc;
     178MINIRECORDCORE_FID_CACHE MINIRECORDCOREFc;
     179TREEITEMDESC_FID_CACHE TREEITEMDESCFc;
    178180
    179181/*@@TODO (dmik): remove
     
    997999            lpStruct->pszPtSizeList = getPSZBytes(env, pszS);
    9981000    }
    999     lpStruct->pfnDlgProc = (*env)->GetIntField(env, lpObject, lpCache->pfnDlgProc);
     1001    lpStruct->pfnDlgProc = (PFNWP)((*env)->GetIntField(env, lpObject, lpCache->pfnDlgProc));
    10001002    {
    10011003        jobject pszF = (*env)->GetObjectField(env, lpObject, lpCache->pszFamilyname);
     
    10651067    }
    10661068
    1067     (*env)->SetIntField(env, lpObject, lpCache->pfnDlgProc, lpStruct->pfnDlgProc);
     1069    (*env)->SetIntField(env, lpObject, lpCache->pfnDlgProc, (ULONG)lpStruct->pfnDlgProc);
    10681070
    10691071    {
     
    14861488        jobjectArray aaccel = (*env)->GetObjectField(env, lpObject, lpCache->aaccel);
    14871489        jsize length = (*env)->GetArrayLength(env, aaccel);
    1488 
     1490       
    14891491        if (aaccel) {
    14901492            DEBUG_CALL("getACCELTABLEFields:aaccel array.\n")
    1491             jint ulAccelLen = sizeof( sizeof(ACCEL )*length) + sizeof( ACCELTABLE );
    1492             PACCELTABLE pacctAccelTable = (PACCELTABLE) malloc ( ulAccelLen );
     1493//            jint ulAccelLen = sizeof( sizeof(ACCEL )*length) + sizeof( ACCELTABLE );
     1494//            PACCELTABLE pacctAccelTable = (PACCELTABLE) malloc ( ulAccelLen );
    14931495
    14941496            ACCEL c_pacctAccel, *c_ppacctAccel = NULL;
     
    14961498            for(i=0; i<length;i++){
    14971499                jobject jaccel = (*env)->GetObjectArrayElement(env, aaccel, i);
    1498                 if (pacctAccelTable) c_ppacctAccel = getACCELFields(env, jaccel, &c_pacctAccel, &PGLOB(ACCELFc));
     1500//                if (pacctAccelTable)
     1501                        c_ppacctAccel = getACCELFields(env, jaccel, &c_pacctAccel, &PGLOB(ACCELFc));
    14991502                lpStruct->aaccel[i] = *c_ppacctAccel;
    15001503            }
     
    15091512    (*env)->SetShortField(env, lpObject, lpCache->cAccel, lpStruct->cAccel);
    15101513    (*env)->SetShortField(env, lpObject, lpCache->codepage, lpStruct->codepage);
     1514       
    15111515    {
    15121516        jobjectArray aaccel = (*env)->GetObjectField(env, lpObject, lpCache->aaccel);
    1513         (*env)->SetObjectField(env, lpObject, lpCache->aaccel, aaccel);
    1514     }
     1517        jsize length = (*env)->GetArrayLength(env, aaccel);
     1518
     1519        ACCEL *c_ppacctAccel = NULL;   
     1520        int i=0;
     1521        for(i=0; i<length;i++){
     1522                jobject jaccel = (*env)->GetObjectArrayElement(env, aaccel, i);
     1523                setACCELFields(env, jaccel, c_ppacctAccel, &PGLOB(ACCELFc));
     1524                lpStruct->aaccel[i] = *c_ppacctAccel;
     1525        }
     1526 
     1527        (*env)->SetObjectField(env, lpObject, lpCache->aaccel, aaccel);
     1528    }
     1529        printf("setACCELTABLEFields \n");
    15151530}
    15161531
     
    16541669}
    16551670
    1656 /***************************************** FACENAMEDESC struct ********************************************/
     1671/***************************************** MINIRECORDCORE struct ********************************************/
     1672void cacheMINIRECORDCOREFids(JNIEnv *env, jobject lpObject, PMINIRECORDCORE_FID_CACHE lpCache)
     1673{
     1674    if (lpCache->cached) return;
     1675    lpCache->clazz = (*env)->GetObjectClass(env, lpObject);
     1676    lpCache->cb = (*env)->GetFieldID(env, lpCache->clazz, "cb", "I");
     1677    lpCache->flRecordAttr = (*env)->GetFieldID(env, lpCache->clazz, "flRecordAttr", "I");
     1678    lpCache->ptlIcon = (*env)->GetFieldID(env, lpCache->clazz, "ptlIcon", "Lorg/eclipse/swt/internal/pm/POINTL;");
     1679    lpCache->preccNextRecord = (*env)->GetFieldID(env, lpCache->clazz, "preccNextRecord", "I");
     1680    lpCache->pszIcon = (*env)->GetFieldID(env, lpCache->clazz, "pszIcon", "Lorg/eclipse/swt/internal/pm/PSZ;");
     1681    lpCache->hptrIcon = (*env)->GetFieldID(env, lpCache->clazz, "hptrIcon", "I");
     1682    lpCache->cached = 1;
     1683}
     1684
     1685PMINIRECORDCORE getMINIRECORDCOREFields(JNIEnv *env, jobject lpObject, PMINIRECORDCORE lpStruct, PMINIRECORDCORE_FID_CACHE lpCache)
     1686{
     1687    if (!lpCache->cached) cacheMINIRECORDCOREFids(env, lpObject, lpCache);
     1688    lpStruct->cb = (*env)->GetIntField(env, lpObject, lpCache->cb);
     1689    lpStruct->flRecordAttr = (*env)->GetIntField(env, lpObject, lpCache->flRecordAttr);
     1690    {
     1691        jobject pptlIcon = (*env)->GetObjectField(env, lpObject, lpCache->ptlIcon);
     1692        if (pptlIcon && &(lpStruct->ptlIcon)) getPOINTLFields(env, pptlIcon, &(lpStruct->ptlIcon), &PGLOB(POINTLFc));
     1693    }
     1694    lpStruct->preccNextRecord = (PMINIRECORDCORE)((*env)->GetIntField(env, lpObject, lpCache->preccNextRecord));
     1695   {
     1696        jobject psz = (*env)->GetObjectField(env, lpObject, lpCache->pszIcon);
     1697        if(psz)
     1698            lpStruct->pszIcon = getPSZBytes(env,psz);
     1699    }
     1700    lpStruct->hptrIcon = (*env)->GetIntField(env, lpObject, lpCache->hptrIcon);
     1701    return lpStruct;
     1702}
     1703
     1704void setMINIRECORDCOREFields(JNIEnv *env, jobject lpObject, PMINIRECORDCORE lpStruct, PMINIRECORDCORE_FID_CACHE lpCache)
     1705{
     1706    if (!lpCache->cached) cacheMINIRECORDCOREFids(env, lpObject, lpCache);
     1707    (*env)->SetIntField(env, lpObject, lpCache->cb, lpStruct->cb);
     1708    (*env)->SetIntField(env, lpObject, lpCache->flRecordAttr, lpStruct->flRecordAttr);
     1709    {
     1710        jobject pptlIcon = (*env)->GetObjectField(env, lpObject, lpCache->ptlIcon);
     1711        if (pptlIcon && &(lpStruct->ptlIcon)) setPOINTLFields(env, pptlIcon, &(lpStruct->ptlIcon), &PGLOB(POINTLFc));
     1712    }
     1713    (*env)->SetIntField(env, lpObject, lpCache->preccNextRecord, (ULONG)lpStruct->preccNextRecord);
     1714    {
     1715        jobject psz = (*env)->GetObjectField(env, lpObject, lpCache->pszIcon);
     1716        if (psz)
     1717            releasePSZBytes(env, psz, lpStruct->pszIcon);
     1718    }
     1719    (*env)->SetIntField(env, lpObject, lpCache->hptrIcon, lpStruct->hptrIcon);
     1720}
     1721
     1722/***************************************** TREEITEMDESC struct ********************************************/
     1723
     1724void cacheTREEITEMDESCFids(JNIEnv *env, jobject lpObject, PTREEITEMDESC_FID_CACHE lpCache)
     1725{
     1726    if (lpCache->cached) return;
     1727    lpCache->clazz = (*env)->GetObjectClass(env, lpObject);
     1728    lpCache->hbmExpanded = (*env)->GetFieldID(env, lpCache->clazz, "hbmExpanded", "I");
     1729    lpCache->hbmCollapsed = (*env)->GetFieldID(env, lpCache->clazz, "hbmCollapsed", "I");
     1730    lpCache->hptrExpanded = (*env)->GetFieldID(env, lpCache->clazz, "hptrExpanded", "I");
     1731    lpCache->hptrCollapsed = (*env)->GetFieldID(env, lpCache->clazz, "hptrCollapsed", "I");
     1732    lpCache->cached = 1;
     1733}
     1734
     1735PTREEITEMDESC getTREEITEMDESCFields(JNIEnv *env, jobject lpObject, PTREEITEMDESC lpStruct, PTREEITEMDESC_FID_CACHE lpCache)
     1736{
     1737    if (!lpCache->cached) cacheTREEITEMDESCFids(env, lpObject, lpCache);
     1738    lpStruct->hbmExpanded = (*env)->GetIntField(env, lpObject, lpCache->hbmExpanded);
     1739    lpStruct->hbmCollapsed = (*env)->GetIntField(env, lpObject, lpCache->hbmCollapsed);
     1740    lpStruct->hptrExpanded= (*env)->GetIntField(env, lpObject, lpCache->hptrExpanded);
     1741    lpStruct->hptrCollapsed= (*env)->GetIntField(env, lpObject, lpCache->hptrCollapsed);
     1742    return lpStruct;
     1743}
     1744
     1745void setTREEITEMDESCFields(JNIEnv *env, jobject lpObject, PTREEITEMDESC lpStruct, PTREEITEMDESC_FID_CACHE lpCache)
     1746{
     1747    if (!lpCache->cached) cacheTREEITEMDESCFids(env, lpObject, lpCache);
     1748    (*env)->SetIntField(env, lpObject, lpCache->hbmExpanded, lpStruct->hbmExpanded);
     1749    (*env)->SetIntField(env, lpObject, lpCache->hbmCollapsed, lpStruct->hbmCollapsed);
     1750    (*env)->SetIntField(env, lpObject, lpCache->hptrExpanded, lpStruct->hptrExpanded);
     1751    (*env)->SetIntField(env, lpObject, lpCache->hptrCollapsed, lpStruct->hptrCollapsed);
     1752}
     1753
    16571754/*@@TODO (dmik): don't need, remove!
    16581755void cacheFACENAMEDESCFids(JNIEnv *env, jobject lpObject, PFACENAMEDESC_FID_CACHE lpCache)
  • trunk/src/plugins/org.eclipse.swt/Eclipse SWT PI/pm/library/structs.h

    r174 r241  
    597597void setPOINTSFields(JNIEnv *env, jobject lpObject, PPOINTS lpStruct, PPOINTS_FID_CACHE lpCache);
    598598
     599/* MINIRECORDCORE struct */
     600typedef struct MINIRECORDCORE_FID_CACHE {
     601    int cached;
     602    jclass clazz;
     603    jfieldID
     604        cb,       
     605        flRecordAttr,
     606        ptlIcon,
     607        preccNextRecord,
     608        pszIcon,
     609        hptrIcon;       
     610} MINIRECORDCORE_FID_CACHE;
     611typedef MINIRECORDCORE_FID_CACHE *PMINIRECORDCORE_FID_CACHE;
     612
     613void cacheMINIRECORDCOREFids(JNIEnv *env, jobject lpObject, PMINIRECORDCORE_FID_CACHE lpCache);
     614PMINIRECORDCORE getMINIRECORDCOREFields(JNIEnv *env, jobject lpObject, PMINIRECORDCORE lpStruct, PMINIRECORDCORE_FID_CACHE lpCache);
     615void setMINIRECORDCOREFields(JNIEnv *env, jobject lpObject, PMINIRECORDCORE lpStruct, PMINIRECORDCORE_FID_CACHE lpCache);
     616
     617/* TREEITEMDESC struct */
     618typedef struct TREEITEMDESC_FID_CACHE {
     619    int cached;
     620    jclass clazz;
     621    jfieldID
     622        hbmExpanded,       
     623        hbmCollapsed,
     624        hptrExpanded,
     625        hptrCollapsed;
     626       
     627} TREEITEMDESC_FID_CACHE;
     628typedef TREEITEMDESC_FID_CACHE *PTREEITEMDESC_FID_CACHE;
     629
     630void cacheTREEITEMDESCFids(JNIEnv *env, jobject lpObject, PTREEITEMDESC_FID_CACHE lpCache);
     631PTREEITEMDESC getTREEITEMDESCFields(JNIEnv *env, jobject lpObject, PTREEITEMDESC lpStruct, PTREEITEMDESC_FID_CACHE lpCache);
     632void setTREEITEMDESCFields(JNIEnv *env, jobject lpObject, PTREEITEMDESC lpStruct, PTREEITEMDESC_FID_CACHE lpCache);
     633
    599634/* FACENAMEDESC struct */
    600635/*@@TODO (dmik): remove!
     
    644679extern SLDCDATA_FID_CACHE SLDCDATAFc;
    645680extern POINTS_FID_CACHE POINTSFc;
     681extern MINIRECORDCORE_FID_CACHE MINIRECORDCOREFc;
     682extern TREEITEMDESC_FID_CACHE TREEITEMDESCFc;
    646683/*@@TODO (dmik): remove!
    647684extern FACENAMEDESC_FID_CACHE FACENAMEDESCFc;
  • trunk/src/plugins/org.eclipse.swt/Eclipse SWT PI/pm/library/swt.c

    r235 r241  
    17121712    DEBUG_CALL("WinQueryClipbrdData\n")
    17131713
    1714     return (jint)WinQueryClipbrdData((HAB)hab, (MPARAM)fmt);
     1714    return (jint)WinQueryClipbrdData((HAB)hab, (ULONG)fmt);
    17151715}
    17161716
Note: See TracChangeset for help on using the changeset viewer.