hi,
i got now Notify Event LVN_GETDISPINFO and have Problem with next Structure NMLVDISPINFOx
i understand that i have to make a CLASS for every Structure but how when point to "Sub"-Structure ?
st:item point to LVITEM Structure so i need to call another CLASS ...
https://learn.microsoft.com/en-us/windows/win32/api/commctrl/ns-commctrl-nmlvdispinfoa
https://learn.microsoft.com/en-us/windows/win32/api/commctrl/ns-commctrl-nmlvdispinfow
it will be a long Way when i have to write a CLASS with Method and HB_FUNC() for each Structure
---
under Xbase++, using OT4XB, i can use OOP Style without write a CLASS and Method
OT4Xb does NOT use direct "Windows" Structure, you must define each Structure
OT4XB have already a lot "own" (WAPIST) Structure, made by Pablo Botella Navarro
btw.
i can use a "normal" String for "pszText" without using "cchTextMax" ( = LEN(cText) )
can we make in FiveWin something similar like OT4XB
it would reduce Work to define only Structure and than can use OOP insead of HB_FUNC()
i got now Notify Event LVN_GETDISPINFO and have Problem with next Structure NMLVDISPINFOx
i understand that i have to make a CLASS for every Structure but how when point to "Sub"-Structure ?
METHOD OnDISPINFO(nOption)
  st := NMLVDISPINFONEW():New()
  // use "Sub"-Structure
  st:item:pszText   := REPLICATE(CHR(0),255)
  st:item:cchTextMax  := 255
  // ZERO-based :iItem and :iSubItem
  nRec := st:item:iItem        // Array ZERO-based+1
  nSub := st:item:iSubItem+1st:item point to LVITEM Structure so i need to call another CLASS ...
https://learn.microsoft.com/en-us/windows/win32/api/commctrl/ns-commctrl-nmlvdispinfoa
typedef struct tagLVDISPINFO {
 NMHDR  hdr;
 LVITEMA item;
} NMLVDISPINFOA, *LPNMLVDISPINFOA;https://learn.microsoft.com/en-us/windows/win32/api/commctrl/ns-commctrl-nmlvdispinfow
typedef struct tagLVDISPINFOW {
 NMHDR  hdr;
 LVITEMW item;
} NMLVDISPINFOW, *LPNMLVDISPINFOW;it will be a long Way when i have to write a CLASS with Method and HB_FUNC() for each Structure
---
under Xbase++, using OT4XB, i can use OOP Style without write a CLASS and Method
OT4Xb does NOT use direct "Windows" Structure, you must define each Structure
OT4XB have already a lot "own" (WAPIST) Structure, made by Pablo Botella Navarro
g:\REIN\XBASE\Pablo\source\winapi_CommonStructures.cpp
#define _XBST_NMLVDISPINFO( name ) Â Â Â Â Â Â Â Â Â Â pc->Child( #name , "WAPIST_NMLVDISPINFO");
#define _XBST_NMHDR( name ) Â Â Â Â Â Â Â Â Â Â Â Â Â pc->Child( #name , "WAPIST_NMHDR");
#define _XBST_LVITEM( name ) Â Â Â Â Â Â Â Â Â Â Â Â Â pc->Child( #name , "WAPIST_LVITEM");
XB_BEGIN_STRUCTURE( NMLVDISPINFO )
  _XBST_NMHDR( hdr )
  _XBST_LVITEM( item )
XB_END_STRUCTURE
XB_BEGIN_STRUCTURE( NMRBAUTOSIZE Â Â Â )
  _XBST_NMHDR ( hdr    )
  _XBST_BOOL  ( fChanged )
  _XBST_RECT  ( rcTarget )
  _XBST_RECT  ( rcActual )
XB_END_STRUCTURE
XB_BEGIN_STRUCTURE( LVITEM )
  _XBST_UINT( mask )
  _XBST_int( iItem )
  _XBST_int( iSubItem )
  _XBST_UINT( state )
  _XBST_UINT( stateMask )
_XBST_LPSTR_DYNSZ( pszText , cText)
  _XBST_int( cchTextMax )
  _XBST_int( iImage )
  _XBST_LPARAM( lParam )
  _XBST_int( iIndent )
  _XBST_int( iGroupId )
  _XBST_UINT( cColumns )
  _XBST_POINTER32( puColumns )
  _XBST_POINTER32( piColFmt )
  _XBST_int( iGroup )
XB_END_STRUCTUREbtw.
_XBST_LPSTR_DYNSZ( pszText , cText)i can use a "normal" String for "pszText" without using "cchTextMax" ( = LEN(cText) )
can we make in FiveWin something similar like OT4XB
it would reduce Work to define only Structure and than can use OOP insead of HB_FUNC()
greeting,
Jimmy
Jimmy