- Timestamp:
- Dec 23, 2009, 9:43:02 PM (16 years ago)
- Location:
- trunk/src/plugins/org.eclipse.swt/Eclipse SWT PI/pm/library
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/plugins/org.eclipse.swt/Eclipse SWT PI/pm/library/structs.c
r241 r243 178 178 MINIRECORDCORE_FID_CACHE MINIRECORDCOREFc; 179 179 TREEITEMDESC_FID_CACHE TREEITEMDESCFc; 180 RECORDINSERT_FID_CACHE RECORDINSERTFc; 180 181 181 182 /*@@TODO (dmik): remove … … 1752 1753 } 1753 1754 1755 /***************************************** RECORDINSERT struct ********************************************/ 1756 1757 void cacheRECORDINSERTFids(JNIEnv *env, jobject lpObject, PRECORDINSERT_FID_CACHE lpCache) 1758 { 1759 if (lpCache->cached) return; 1760 lpCache->clazz = (*env)->GetObjectClass(env, lpObject); 1761 lpCache->cb = (*env)->GetFieldID(env, lpCache->clazz, "cb", "I"); 1762 lpCache->pRecordOrder = (*env)->GetFieldID(env, lpCache->clazz, "pRecordOrder", "I"); 1763 lpCache->pRecordParent = (*env)->GetFieldID(env, lpCache->clazz, "pRecordParent", "I"); 1764 lpCache->fInvalidateRecord = (*env)->GetFieldID(env, lpCache->clazz, "fInvalidateRecord", "I"); 1765 lpCache->zOrder = (*env)->GetFieldID(env, lpCache->clazz, "zOrder", "I"); 1766 lpCache->cRecordsInsert = (*env)->GetFieldID(env, lpCache->clazz, "cRecordsInsert", "I"); 1767 lpCache->cached = 1; 1768 } 1769 1770 PRECORDINSERT getRECORDINSERTFields(JNIEnv *env, jobject lpObject, PRECORDINSERT lpStruct, PRECORDINSERT_FID_CACHE lpCache) 1771 { 1772 if (!lpCache->cached) cacheRECORDINSERTFids(env, lpObject, lpCache); 1773 lpStruct->cb = (*env)->GetIntField(env, lpObject, lpCache->cb); 1774 lpStruct->pRecordOrder = (PRECORDCORE)(*env)->GetIntField(env, lpObject, lpCache->pRecordOrder); 1775 lpStruct->pRecordParent= (PRECORDCORE)(*env)->GetIntField(env, lpObject, lpCache->pRecordParent); 1776 lpStruct->fInvalidateRecord= (*env)->GetIntField(env, lpObject, lpCache->fInvalidateRecord); 1777 lpStruct->zOrder= (*env)->GetIntField(env, lpObject, lpCache->zOrder); 1778 lpStruct->cRecordsInsert= (*env)->GetIntField(env, lpObject, lpCache->cRecordsInsert); 1779 return lpStruct; 1780 } 1781 1782 void setRECORDINSERTFields(JNIEnv *env, jobject lpObject, PRECORDINSERT lpStruct, PRECORDINSERT_FID_CACHE lpCache) 1783 { 1784 if (!lpCache->cached) cacheRECORDINSERTFids(env, lpObject, lpCache); 1785 (*env)->SetIntField(env, lpObject, lpCache->cb, lpStruct->cb); 1786 (*env)->SetIntField(env, lpObject, lpCache->pRecordOrder, (ULONG)lpStruct->pRecordOrder); 1787 (*env)->SetIntField(env, lpObject, lpCache->pRecordParent, (ULONG)lpStruct->pRecordParent); 1788 (*env)->SetIntField(env, lpObject, lpCache->fInvalidateRecord, lpStruct->fInvalidateRecord); 1789 (*env)->SetIntField(env, lpObject, lpCache->zOrder, lpStruct->zOrder); 1790 (*env)->SetIntField(env, lpObject, lpCache->cRecordsInsert, lpStruct->cRecordsInsert); 1791 } 1792 1793 /***************************************** RECORDCORE struct ********************************************/ 1794 1795 void cacheRECORDCOREFids(JNIEnv *env, jobject lpObject, PRECORDCORE_FID_CACHE lpCache) 1796 { 1797 if (lpCache->cached) return; 1798 lpCache->clazz = (*env)->GetObjectClass(env, lpObject); 1799 lpCache->cb = (*env)->GetFieldID(env, lpCache->clazz, "cb", "I"); 1800 lpCache->flRecordAttr = (*env)->GetFieldID(env, lpCache->clazz, "flRecordAttr", "I"); 1801 lpCache->ptlIcon = (*env)->GetFieldID(env, lpCache->clazz, "ptlIcon", "Lorg/eclipse/swt/internal/pm/POINTL;"); 1802 lpCache->preccNextRecord = (*env)->GetFieldID(env, lpCache->clazz, "preccNextRecord", "I"); 1803 lpCache->pszIcon = (*env)->GetFieldID(env, lpCache->clazz, "pszIcon", "Lorg/eclipse/swt/internal/pm/PSZ;"); 1804 lpCache->hptrIcon = (*env)->GetFieldID(env, lpCache->clazz, "hptrIcon", "I"); 1805 lpCache->hptrMiniIcon = (*env)->GetFieldID(env, lpCache->clazz, "hptrMiniIcon", "I"); 1806 lpCache->hbmBitmap = (*env)->GetFieldID(env, lpCache->clazz, "hbmBitmap", "I"); 1807 lpCache->hbmMiniBitmap = (*env)->GetFieldID(env, lpCache->clazz, "hbmMiniBitmap", "I"); 1808 lpCache->pTreeItemDesc = (*env)->GetFieldID(env, lpCache->clazz, "pTreeItemDesc", "Lorg/eclipse/swt/internal/pm/TREEITEMDESC;"); 1809 lpCache->pszText = (*env)->GetFieldID(env, lpCache->clazz, "pszText", "Lorg/eclipse/swt/internal/pm/PSZ;"); 1810 lpCache->pszName = (*env)->GetFieldID(env, lpCache->clazz, "pszName", "Lorg/eclipse/swt/internal/pm/PSZ;"); 1811 lpCache->pszTree = (*env)->GetFieldID(env, lpCache->clazz, "pszTree", "Lorg/eclipse/swt/internal/pm/PSZ;"); 1812 lpCache->cached = 1; 1813 } 1814 1815 PRECORDCORE getRECORDCOREFields(JNIEnv *env, jobject lpObject, PRECORDCORE lpStruct, PRECORDCORE_FID_CACHE lpCache) 1816 { 1817 if (!lpCache->cached) cacheRECORDCOREFids(env, lpObject, lpCache); 1818 lpStruct->cb = (*env)->GetIntField(env, lpObject, lpCache->cb); 1819 lpStruct->flRecordAttr = (*env)->GetIntField(env, lpObject, lpCache->flRecordAttr); 1820 { 1821 jobject pptlIcon = (*env)->GetObjectField(env, lpObject, lpCache->ptlIcon); 1822 if (pptlIcon && &(lpStruct->ptlIcon)) getPOINTLFields(env, pptlIcon, &(lpStruct->ptlIcon), &PGLOB(POINTLFc)); 1823 } 1824 lpStruct->preccNextRecord= (PRECORDCORE)(*env)->GetIntField(env, lpObject, lpCache->preccNextRecord); 1825 { 1826 jobject psz = (*env)->GetObjectField(env, lpObject, lpCache->pszIcon); 1827 if(psz) 1828 lpStruct->pszIcon = getPSZBytes(env,psz); 1829 } 1830 lpStruct->hptrIcon= (*env)->GetIntField(env, lpObject, lpCache->hptrIcon); 1831 lpStruct->hptrMiniIcon= (*env)->GetIntField(env, lpObject, lpCache->hptrMiniIcon); 1832 lpStruct->hbmBitmap= (*env)->GetIntField(env, lpObject, lpCache->hbmBitmap); 1833 lpStruct->hbmMiniBitmap= (*env)->GetIntField(env, lpObject, lpCache->hbmMiniBitmap); 1834 { 1835 jobject itemDesc = (*env)->GetObjectField(env, lpObject, lpCache->pTreeItemDesc); 1836 if (itemDesc && lpStruct->pTreeItemDesc) getTREEITEMDESCFields(env, itemDesc, lpStruct->pTreeItemDesc, &PGLOB(TREEITEMDESCFc)); 1837 } 1838 { 1839 jobject psz = (*env)->GetObjectField(env, lpObject, lpCache->pszText); 1840 if(psz) 1841 lpStruct->pszText = getPSZBytes(env,psz); 1842 } 1843 { 1844 jobject psz = (*env)->GetObjectField(env, lpObject, lpCache->pszName); 1845 if(psz) 1846 lpStruct->pszName = getPSZBytes(env,psz); 1847 } 1848 { 1849 jobject psz = (*env)->GetObjectField(env, lpObject, lpCache->pszTree); 1850 if(psz) 1851 lpStruct->pszTree = getPSZBytes(env,psz); 1852 } 1853 return lpStruct; 1854 } 1855 1856 void setRECORDCOREFields(JNIEnv *env, jobject lpObject, PRECORDCORE lpStruct, PRECORDCORE_FID_CACHE lpCache) 1857 { 1858 if (!lpCache->cached) cacheRECORDCOREFids(env, lpObject, lpCache); 1859 (*env)->SetIntField(env, lpObject, lpCache->cb, lpStruct->cb); 1860 (*env)->SetIntField(env, lpObject, lpCache->flRecordAttr, (ULONG)lpStruct->flRecordAttr); 1861 { 1862 jobject pptlIcon = (*env)->GetObjectField(env, lpObject, lpCache->ptlIcon); 1863 if (pptlIcon && &(lpStruct->ptlIcon)) setPOINTLFields(env, pptlIcon, &(lpStruct->ptlIcon), &PGLOB(POINTLFc)); 1864 } 1865 (*env)->SetIntField(env, lpObject, lpCache->preccNextRecord, (ULONG)lpStruct->preccNextRecord); 1866 { 1867 jobject psz = (*env)->GetObjectField(env, lpObject, lpCache->pszIcon); 1868 if (psz) 1869 releasePSZBytes(env, psz, lpStruct->pszIcon); 1870 } 1871 (*env)->SetIntField(env, lpObject, lpCache->hptrIcon, lpStruct->hptrIcon); 1872 (*env)->SetIntField(env, lpObject, lpCache->hptrMiniIcon, lpStruct->hptrMiniIcon); 1873 (*env)->SetIntField(env, lpObject, lpCache->hbmBitmap, lpStruct->hbmBitmap); 1874 (*env)->SetIntField(env, lpObject, lpCache->hbmMiniBitmap, lpStruct->hbmMiniBitmap); 1875 { 1876 jobject itemDesc = (*env)->GetObjectField(env, lpObject, lpCache->pTreeItemDesc); 1877 if (itemDesc && lpStruct->pTreeItemDesc) setTREEITEMDESCFields(env, itemDesc, lpStruct->pTreeItemDesc, &PGLOB(TREEITEMDESCFc)); 1878 } 1879 { 1880 jobject psz = (*env)->GetObjectField(env, lpObject, lpCache->pszText); 1881 if (psz) 1882 releasePSZBytes(env, psz, lpStruct->pszText); 1883 } 1884 { 1885 jobject psz = (*env)->GetObjectField(env, lpObject, lpCache->pszName); 1886 if (psz) 1887 releasePSZBytes(env, psz, lpStruct->pszName); 1888 } 1889 { 1890 jobject psz = (*env)->GetObjectField(env, lpObject, lpCache->pszTree); 1891 if (psz) 1892 releasePSZBytes(env, psz, lpStruct->pszTree); 1893 } 1894 } 1895 1754 1896 /*@@TODO (dmik): don't need, remove! 1755 1897 void cacheFACENAMEDESCFids(JNIEnv *env, jobject lpObject, PFACENAMEDESC_FID_CACHE lpCache) -
trunk/src/plugins/org.eclipse.swt/Eclipse SWT PI/pm/library/structs.h
r241 r243 623 623 hbmCollapsed, 624 624 hptrExpanded, 625 hptrCollapsed; 626 625 hptrCollapsed; 627 626 } TREEITEMDESC_FID_CACHE; 628 627 typedef TREEITEMDESC_FID_CACHE *PTREEITEMDESC_FID_CACHE; … … 631 630 PTREEITEMDESC getTREEITEMDESCFields(JNIEnv *env, jobject lpObject, PTREEITEMDESC lpStruct, PTREEITEMDESC_FID_CACHE lpCache); 632 631 void setTREEITEMDESCFields(JNIEnv *env, jobject lpObject, PTREEITEMDESC lpStruct, PTREEITEMDESC_FID_CACHE lpCache); 632 633 /* RECORDINSERT struct */ 634 typedef struct RECORDINSERT_FID_CACHE { 635 int cached; 636 jclass clazz; 637 jfieldID 638 cb, 639 pRecordOrder, 640 pRecordParent, 641 fInvalidateRecord, 642 zOrder, 643 cRecordsInsert; 644 } RECORDINSERT_FID_CACHE; 645 typedef RECORDINSERT_FID_CACHE *PRECORDINSERT_FID_CACHE; 646 647 void cacheRECORDINSERTFids(JNIEnv *env, jobject lpObject, PRECORDINSERT_FID_CACHE lpCache); 648 PRECORDINSERT getRECORDINSERTFields(JNIEnv *env, jobject lpObject, PRECORDINSERT lpStruct, PRECORDINSERT_FID_CACHE lpCache); 649 void setRECORDINSERTFields(JNIEnv *env, jobject lpObject, PRECORDINSERT lpStruct, PRECORDINSERT_FID_CACHE lpCache); 650 651 /* RECORDCORE struct */ 652 typedef struct RECORDCORE_FID_CACHE { 653 int cached; 654 jclass clazz; 655 jfieldID 656 cb, 657 flRecordAttr, 658 ptlIcon, 659 preccNextRecord, 660 pszIcon, 661 hptrIcon, 662 hptrMiniIcon, 663 hbmBitmap, 664 hbmMiniBitmap, 665 pTreeItemDesc, 666 pszText, 667 pszName, 668 pszTree; 669 } RECORDCORE_FID_CACHE; 670 typedef RECORDCORE_FID_CACHE *PRECORDCORE_FID_CACHE; 671 672 void cacheRECORDCOREFids(JNIEnv *env, jobject lpObject, PRECORDCORE_FID_CACHE lpCache); 673 PRECORDCORE getRECORDCOREFields(JNIEnv *env, jobject lpObject, PRECORDCORE lpStruct, PRECORDCORE_FID_CACHE lpCache); 674 void setRECORDCOREFields(JNIEnv *env, jobject lpObject, PRECORDCORE lpStruct, PRECORDCORE_FID_CACHE lpCache); 633 675 634 676 /* FACENAMEDESC struct */ … … 681 723 extern MINIRECORDCORE_FID_CACHE MINIRECORDCOREFc; 682 724 extern TREEITEMDESC_FID_CACHE TREEITEMDESCFc; 725 extern RECORDINSERT_FID_CACHE RECORDINSERTFc; 726 extern RECORDCORE_FID_CACHE RECORDCOREFc; 683 727 /*@@TODO (dmik): remove! 684 728 extern FACENAMEDESC_FID_CACHE FACENAMEDESCFc;
Note:
See TracChangeset
for help on using the changeset viewer.