/*
  NList.mcc (c) Copyright 1996-1997 by Gilles Masson
  Registered MUI class, Serial Number: 1d51           $9d510030 to $9d51009F
  *** use only YOUR OWN Serial Number for your public custom class ***
  NList_mcc.h

  AmigaE module for NList
  Converted from C includes by Piotr Pawlow (PP/UNION)

  Contact me at:
    Piotr Pawlow
    Lewartowskiego 12/46
    00-185 Warszawa
    Poland

  EMail: pp@cs.com.pl

  AmigaE module for NList
  Updated from C includes by Federico Pomi

  http://www.AmyResource.it/Fede
  Fede@AmyResource.it

*/

OPT MODULE
OPT EXPORT
OPT PREPROCESS

MODULE 'libraries/mui','utility/hooks','graphics/gfx'


/* MUI Prop and Scroller classes stuff which is still not in libraries/mui.h  (in MUI3.8) */
/* it gives to the prop object it's increment value */
#define MUIA_Prop_DeltaFactor $80427C5E


#define MUIC_NList 'NList.mcc'
#define NListObject Mui_NewObjectA(MUIC_NList,[TAG_IGNORE,0


/* Attributes */

#define MUIA_NList_TypeSelect               $9d510030
#define MUIA_NList_Prop_DeltaFactor         $9d510031
#define MUIA_NList_Horiz_DeltaFactor        $9d510032

#define MUIA_NList_Horiz_First              $9d510033
#define MUIA_NList_Horiz_Visible            $9d510034
#define MUIA_NList_Horiz_Entries            $9d510035

#define MUIA_NList_Prop_First               $9d510036
#define MUIA_NList_Prop_Visible             $9d510037
#define MUIA_NList_Prop_Entries             $9d510038

#define MUIA_NList_TitlePen                 $9d510039
#define MUIA_NList_ListPen                  $9d51003a
#define MUIA_NList_SelectPen                $9d51003b
#define MUIA_NList_CursorPen                $9d51003c
#define MUIA_NList_UnselCurPen              $9d51003d

#define MUIA_NList_ListBackground           $9d51003e
#define MUIA_NList_TitleBackground          $9d51003f
#define MUIA_NList_SelectBackground         $9d510040
#define MUIA_NList_CursorBackground         $9d510041
#define MUIA_NList_UnselCurBackground       $9d510042

#define MUIA_NList_MultiClick               $9d510043

#define MUIA_NList_DefaultObjectOnClick     $9d510044

#define MUIA_NList_ClickColumn              $9d510045
#define MUIA_NList_DefClickColumn           $9d510046
#define MUIA_NList_DoubleClick              $9d510047
#define MUIA_NList_DragType                 $9d510048
#define MUIA_NList_Input                    $9d510049
#define MUIA_NList_MultiSelect              $9d51004a
#define MUIA_NList_SelectChange             $9d51004b

#define MUIA_NList_Active                   $9d51004c
#define MUIA_NList_AdjustHeight             $9d51004d
#define MUIA_NList_AdjustWidth              $9d51004e
#define MUIA_NList_AutoVisible              $9d51004f
#define MUIA_NList_CompareHook              $9d510050
#define MUIA_NList_ConstructHook            $9d510051
#define MUIA_NList_DestructHook             $9d510052
#define MUIA_NList_DisplayHook              $9d510053
#define MUIA_NList_DragSortable             $9d510054
#define MUIA_NList_DropMark                 $9d510055
#define MUIA_NList_Entries                  $9d510056
#define MUIA_NList_First                    $9d510057
#define MUIA_NList_Format                   $9d510058
#define MUIA_NList_InsertPosition           $9d510059
#define MUIA_NList_MinLineHeight            $9d51005a
#define MUIA_NList_MultiTestHook            $9d51005b
#define MUIA_NList_Pool                     $9d51005c
#define MUIA_NList_PoolPuddleSize           $9d51005d
#define MUIA_NList_PoolThreshSize           $9d51005e
#define MUIA_NList_Quiet                    $9d51005f
#define MUIA_NList_ShowDropMarks            $9d510060
#define MUIA_NList_SourceArray              $9d510061
#define MUIA_NList_Title                    $9d510062
#define MUIA_NList_Columns                  $9d5100F6
#define MUIA_NList_Visible                  $9d510063
#define MUIA_NList_CopyEntryToClipHook      $9d510064
#define MUIA_NList_KeepActive               $9d510065
#define MUIA_NList_MakeActive               $9d510066
#define MUIA_NList_SourceString             $9d510067
#define MUIA_NList_CopyColumnToClipHook     $9d510068
#define MUIA_NList_ListCompatibility        $9d510069
#define MUIA_NList_AutoCopyToClip           $9d51006A
#define MUIA_NList_TabSize                  $9d51006B
#define MUIA_NList_SkipChars                $9d51006C
#define MUIA_NList_DisplayRecall            $9d51006D
#define MUIA_NList_PrivateData              $9d51006E
#define MUIA_NList_EntryValueDependent      $9d51006F
#define MUIA_NList_StackCheck               $9d510097
#define MUIA_NList_WordSelectChars          $9d510098
#define MUIA_NList_EntryClick               $9d510099
#define MUIA_NList_DragColOnly              $9d51009A
#define MUIA_NList_TitleClick               $9d51009B
#define MUIA_NList_DropType                 $9d51009C
#define MUIA_NList_ForcePen                 $9d51009D
#define MUIA_NList_SourceInsert             $9d51009E
#define MUIA_NList_TitleSeparator           $9d51009F
#define MUIA_NList_LineHeight               $9d5100F7
#define MUIA_NList_ButtonClick              $9d5100F8
#define MUIA_NList_CopyEntryToClipHook2     $9d5100F9
#define MUIA_NList_CopyColumnToClipHook2    $9d5100FA
#define MUIA_NList_CompareHook2             $9d5100FB
#define MUIA_NList_ConstructHook2           $9d5100FC
#define MUIA_NList_DestructHook2            $9d5100FD
#define MUIA_NList_DisplayHook2             $9d5100FE
#define MUIA_NList_SortType                 $9d5100FF

#define MUIA_NLIMG_EntryCurrent             $9d510057
#define MUIA_NLIMG_EntryHeight              $9d510063


/* obsolete tag names */

#define MUIA_NList_VertDeltaFactor          $9d510031
#define MUIA_NList_HorizDeltaFactor         $9d510032


/* Attributes special datas */

#define MUIV_NList_TypeSelect_Line        0
#define MUIV_NList_TypeSelect_Char        1

#define MUIV_NList_Font                 -20
#define MUIV_NList_Font_Little          -21
#define MUIV_NList_Font_Fixed           -22

#define MUIV_NList_ConstructHook_String  -1
#define MUIV_NList_DestructHook_String   -1

#define MUIV_NList_Active_Off            -1
#define MUIV_NList_Active_Top            -2
#define MUIV_NList_Active_Bottom         -3
#define MUIV_NList_Active_Up             -4
#define MUIV_NList_Active_Down           -5
#define MUIV_NList_Active_PageUp         -6
#define MUIV_NList_Active_PageDown       -7

#define MUIV_NList_First_Top             -2
#define MUIV_NList_First_Bottom          -3
#define MUIV_NList_First_Up              -4
#define MUIV_NList_First_Down            -5
#define MUIV_NList_First_PageUp          -6
#define MUIV_NList_First_PageDown        -7
#define MUIV_NList_First_Up2             -8
#define MUIV_NList_First_Down2           -9
#define MUIV_NList_First_Up4            -10
#define MUIV_NList_First_Down4          -11

#define MUIV_NList_Horiz_First_Start     -2
#define MUIV_NList_Horiz_First_End       -3
#define MUIV_NList_Horiz_First_Left      -4
#define MUIV_NList_Horiz_First_Right     -5
#define MUIV_NList_Horiz_First_PageLeft  -6
#define MUIV_NList_Horiz_First_PageRight -7
#define MUIV_NList_Horiz_First_Left2     -8
#define MUIV_NList_Horiz_First_Right2    -9
#define MUIV_NList_Horiz_First_Left4    -10
#define MUIV_NList_Horiz_First_Right4   -11

#define MUIV_NList_MultiSelect_None       0
#define MUIV_NList_MultiSelect_Default    1
#define MUIV_NList_MultiSelect_Shifted    2
#define MUIV_NList_MultiSelect_Always     3

#define MUIV_NList_Insert_Top             0
#define MUIV_NList_Insert_Active         -1
#define MUIV_NList_Insert_Sorted         -2
#define MUIV_NList_Insert_Bottom         -3

#define MUIV_NList_Remove_First           0
#define MUIV_NList_Remove_Active         -1
#define MUIV_NList_Remove_Last           -2
#define MUIV_NList_Remove_Selected       -3

#define MUIV_NList_Select_Off             0
#define MUIV_NList_Select_On              1
#define MUIV_NList_Select_Toggle          2
#define MUIV_NList_Select_Ask             3

#define MUIV_NList_GetEntry_Active       -1
#define MUIV_NList_GetEntryInfo_Line     -2

#define MUIV_NList_Select_Active         -1
#define MUIV_NList_Select_All            -2

#define MUIV_NList_Redraw_Active         -1
#define MUIV_NList_Redraw_All            -2
#define MUIV_NList_Redraw_Title          -3

#define MUIV_NList_Move_Top               0
#define MUIV_NList_Move_Active           -1
#define MUIV_NList_Move_Bottom           -2
#define MUIV_NList_Move_Next             -3
 /* only valid for second parameter (and not with Move_Selected) */
#define MUIV_NList_Move_Previous         -4
 /* only valid for second parameter (and not with Move_Selected) */
#define MUIV_NList_Move_Selected         -5
 /* only valid for first parameter */

#define MUIV_NList_Exchange_Top           0
#define MUIV_NList_Exchange_Active       -1
#define MUIV_NList_Exchange_Bottom       -2
#define MUIV_NList_Exchange_Next         -3
 /* only valid for second parameter */
#define MUIV_NList_Exchange_Previous     -4
 /* only valid for second parameter */

#define MUIV_NList_Jump_Top               0
#define MUIV_NList_Jump_Active           -1
#define MUIV_NList_Jump_Bottom           -2
#define MUIV_NList_Jump_Up               -4
#define MUIV_NList_Jump_Down             -3

#define MUIV_NList_NextSelected_Start    -1
#define MUIV_NList_NextSelected_End      -1

#define MUIV_NList_DragType_None          0
#define MUIV_NList_DragType_Default       1
#define MUIV_NList_DragType_Immediate     2
#define MUIV_NList_DragType_Borders       3
#define MUIV_NList_DragType_Qualifier     4

#define MUIV_NList_CopyToClip_Active     -1
#define MUIV_NList_CopyToClip_Selected   -2
#define MUIV_NList_CopyToClip_All        -3
#define MUIV_NList_CopyToClip_Entries    -4
#define MUIV_NList_CopyToClip_Entry      -5
#define MUIV_NList_CopyToClip_Strings    -6
#define MUIV_NList_CopyToClip_String     -7

#define MUIV_NLCT_Success                 0
#define MUIV_NLCT_OpenErr                 1
#define MUIV_NLCT_WriteErr                2
#define MUIV_NLCT_Failed                  3

#define MUIV_NList_ForcePen_On            1
#define MUIV_NList_ForcePen_Off           0
#define MUIV_NList_ForcePen_Default      -1

#define MUIV_NList_DropType_Mask          $00FF
#define MUIV_NList_DropType_None          0
#define MUIV_NList_DropType_Above         1
#define MUIV_NList_DropType_Below         2
#define MUIV_NList_DropType_Onto          3

#define MUIV_NList_DoMethod_Active       -1
#define MUIV_NList_DoMethod_Selected     -2
#define MUIV_NList_DoMethod_All          -3

#define MUIV_NList_DoMethod_Entry        -1
#define MUIV_NList_DoMethod_Self         -2
#define MUIV_NList_DoMethod_App          -3

#define MUIV_NList_EntryValue             $49893231
#define MUIV_NList_EntryPosValue          $49893233
#define MUIV_NList_SelfValue              $49893235
#define MUIV_NList_AppValue               $49893237

#define MUIV_NList_ColWidth_All          -1
#define MUIV_NList_ColWidth_Default      -1
#define MUIV_NList_ColWidth_Get          -2

#define MUIV_NList_ContextMenu_Default    $9d510031
#define MUIV_NList_ContextMenu_TopOnly    $9d510033
#define MUIV_NList_ContextMenu_BarOnly    $9d510035
#define MUIV_NList_ContextMenu_Bar_Top    $9d510037
#define MUIV_NList_ContextMenu_Always     $9d510039
#define MUIV_NList_ContextMenu_Never      $9d51003b

#define MUIV_NList_Menu_Default_This      $9d51003d
#define MUIV_NList_Menu_Default_All       $9d51003f

#define MUIV_NList_SortTypeAdd_None       $00000000
#define MUIV_NList_SortTypeAdd_2Values    $80000000
#define MUIV_NList_SortTypeAdd_4Values    $40000000
#define MUIV_NList_SortTypeAdd_Mask       $C0000000
#define MUIV_NList_SortTypeValue_Mask     $3FFFFFFF

#define MUIV_NList_Quiet_None             0
#define MUIV_NList_Quiet_Full            -1
#define MUIV_NList_Quiet_Visual          -2

#define MUIV_NList_Imports_Active         %1
#define MUIV_NList_Imports_Selected       %10
#define MUIV_NList_Imports_First          %100
#define MUIV_NList_Imports_ColWidth       %1000
#define MUIV_NList_Imports_ColOrder       %10000
#define MUIV_NList_Imports_Cols           $000000F8
#define MUIV_NList_Imports_All            $0000FFFF

#define MUIV_NList_Exports_Active         %1
#define MUIV_NList_Exports_Selected       %10
#define MUIV_NList_Exports_First          %100
#define MUIV_NList_Exports_ColWidth       %1000
#define MUIV_NList_Exports_ColOrder       %10000
#define MUIV_NList_Exports_Cols           $000000F8
#define MUIV_NList_Exports_All            $0000FFFF

#define MUIV_NList_TitleMark_ColMask      $0FFFFFFF
#define MUIV_NList_TitleMark_TypeMask     $F0000000
#define MUIV_NList_TitleMark_None         $F0000000
#define MUIV_NList_TitleMark_Down         $00000000
#define MUIV_NList_TitleMark_Up           $80000000
#define MUIV_NList_TitleMark_Box          $40000000
#define MUIV_NList_TitleMark_Circle       $C0000000

#define MUIV_NList_SetColumnCol_Default  -1

/* Structs */

OBJECT bitmapimage
  control:LONG   /* should be = to MUIM_NList_CreateImage for a valid BitMapImage struct */
  width:INT      /* if control == MUIA_Image_Spec then obtainpens is a pointer to an Object */
  height:INT
  obtainpens:PTR TO INT
  mask:PTR TO LONG
  imgbmp:bitmap
  flags:LONG
ENDOBJECT

OBJECT mui_nlist_testpos_result
  entry:LONG       /* number of entry, -1 if mouse not over valid entry */
  column:INT       /* numer of column, -1 if no valid column */
  flags:INT        /* not in the list, see below */
  xoffset:INT      /* x offset in column */
  yoffset:INT      /* y offset of mouse click from center of line */
  preparse:INT     /* 2 if in column preparse string, 1 if in entry preparse string, else 0 */
  char_number:INT  /* the number of the clicked char in column, -1 if no valid */
  char_xoffset:INT /* x offset of mouse clicked from left of char if positive */
                   /* and left of next char if negative. If there is no char there */
                   /* negative if from left of first char else from right of last one */
ENDOBJECT

CONST
  MUI_NLPR_ABOVE =1,
  MUI_NLPR_BELOW =2,
  MUI_NLPR_LEFT  =4,
  MUI_NLPR_RIGHT =8,
  MUI_NLPR_BAR   =16,
  MUI_NLPR_TITLE =32,
  MUI_NLPR_ONTOP =64

OBJECT mui_nlist_getentryinfo
  pos:LONG              /* number of entry you want info about */
  line:LONG             /* real line number */
  entry_pos:LONG        /* number of entry of returned entry ptr */
  entry:PTR TO LONG     /* entry pointer */
  wrapcol:LONG          /* NOWRAP, WRAPCOLx, or WRAPPED|WRAPCOLx */
  charpos:LONG          /* start char number in string (unused if NOWRAP) */
  charlen:LONG          /* string lenght (unused if NOWRAP) */
ENDOBJECT

#define NOWRAP          $00
#define WRAPCOL0        $01
#define WRAPCOL1        $02
#define WRAPCOL2        $04
#define WRAPCOL3        $08
#define WRAPCOL4        $10
#define WRAPCOL5        $20
#define WRAPCOL6        $40
#define WRAPPED         $80

OBJECT mui_nlist_getselectinfo
  start:LONG        /* num of first selected *REAL* entry/line (first of wrapped from which start is issued) */
  end:LONG          /* num of last selected *REAL* entry/line (first of wrapped from which start is issued) */
  num:LONG          /* not used */
  start_column:LONG /* column of start of selection in 'start' entry */
  end_column:LONG   /* column of end of selection in 'end' entry */
  start_pos:LONG    /* char pos of start of selection in 'start_column' entry */
  end_pos:LONG      /* char pos of end of selection in 'end_column' entry */
  vstart:LONG       /* num of first visually selected entry */
  vend:LONG         /* num of last visually selected entry */
  vnum:LONG         /* number of visually selected entries */
ENDOBJECT
/* NOTE that vstart==start, vend==end in all cases if no wrapping is used */

/* Methods */

#define MUIM_NList_Clear              $9d510070
#define MUIM_NList_CreateImage        $9d510071
#define MUIM_NList_DeleteImage        $9d510072
#define MUIM_NList_Exchange           $9d510073
#define MUIM_NList_GetEntry           $9d510074
#define MUIM_NList_Insert             $9d510075
#define MUIM_NList_InsertSingle       $9d510076
#define MUIM_NList_Jump               $9d510077
#define MUIM_NList_Move               $9d510078
#define MUIM_NList_NextSelected       $9d510079
#define MUIM_NList_Redraw             $9d51007a
#define MUIM_NList_Remove             $9d51007b
#define MUIM_NList_Select             $9d51007c
#define MUIM_NList_Sort               $9d51007d
#define MUIM_NList_TestPos            $9d51007e
#define MUIM_NList_CopyToClip         $9d51007f
#define MUIM_NList_UseImage           $9d510080
#define MUIM_NList_ReplaceSingle      $9d510081
#define MUIM_NList_InsertWrap         $9d510082
#define MUIM_NList_InsertSingleWrap   $9d510083
#define MUIM_NList_GetEntryInfo       $9d510084
#define MUIM_NList_QueryBeginning     $9d510085
#define MUIM_NList_GetSelectInfo      $9d510086
#define MUIM_NList_CopyTo             $9d510087
#define MUIM_NList_DropType           $9d510088
#define MUIM_NList_DropDraw           $9d510089
#define MUIM_NList_RedrawEntry        $9d51008a
#define MUIM_NList_DoMethod           $9d51008b
#define MUIM_NList_ColWidth           $9d51008c
#define MUIM_NList_ContextMenuBuild   $9d51008d
#define MUIM_NList_DropEntryDrawErase $9d51008e
#define MUIM_NList_ColToColumn        $9d51008f
#define MUIM_NList_ColumnToCol        $9d510091
#define MUIM_NList_Sort2              $9d510092
#define MUIM_NList_PrevSelected       $9d510093
#define MUIM_NList_SetColumnCol       $9d510094

OBJECT muip_nlist_clear
  methodid:LONG
ENDOBJECT

OBJECT muip_nlist_createimage
  methodid:LONG
  obj:PTR TO LONG
  flags:LONG
ENDOBJECT

OBJECT muip_nlist_deleteimage
  methodid:LONG
  listimg:PTR TO LONG
ENDOBJECT

OBJECT muip_nlist_exchange
  methodid:LONG
  pos1:LONG
  pos2:LONG
ENDOBJECT

OBJECT muip_nlist_getentry
  methodid:LONG
  pos:LONG
  entry:PTR TO LONG
ENDOBJECT

OBJECT muip_nlist_insert
  methodid:LONG
  entries:PTR TO LONG
  count:LONG
  pos:LONG
ENDOBJECT

OBJECT muip_nlist_insertsingle
  methodid:LONG
  entry:PTR TO LONG
  pos:LONG
ENDOBJECT

OBJECT muip_nlist_jump
  methodid:LONG
  pos:LONG
ENDOBJECT

OBJECT muip_nlist_move
  methodid:LONG
  from:LONG
  to:LONG
ENDOBJECT

OBJECT muip_nlist_nextselected
  methodid:LONG
  pos:PTR TO LONG
ENDOBJECT

OBJECT muip_nlist_redraw
  methodid:LONG
  pos:LONG
ENDOBJECT

OBJECT muip_nlist_remove
  methodid:LONG
  pos:LONG
ENDOBJECT

OBJECT muip_nlist_select
  methodid:LONG
  pos:LONG
  seltype:LONG
  state:PTR TO LONG
ENDOBJECT

OBJECT muip_nlist_sort
  methodid:LONG
ENDOBJECT

OBJECT muip_nlist_testpos
  methodid:LONG
  x:LONG
  y:LONG
  res:PTR TO mui_nlist_testpos_result
ENDOBJECT

OBJECT muip_nlist_copytoclip
  methodid:LONG
  pos:LONG
  clipnum:LONG
  entries:PTR TO LONG
  hook:PTR TO hook
ENDOBJECT

OBJECT muip_nlist_useimage
  methodid:LONG
  obj:PTR TO LONG
  imgnum:LONG
ENDOBJECT

OBJECT muip_nlist_replacesingle
  methodid:LONG
  entry:PTR TO LONG
  pos:LONG
  wrapcol:LONG
ENDOBJECT

OBJECT muip_nlist_insertwrap
  methodid:LONG
  entries:PTR TO LONG
  count:LONG
  pos:LONG
  wrapcol:LONG
  align:LONG
ENDOBJECT

OBJECT muip_nlist_insertsinglewrap
  methodid:LONG
  entry:PTR TO LONG
  pos:LONG
  wrapcol:LONG
  align:LONG
ENDOBJECT

OBJECT muip_nlist_getentryinfo
  methodid:LONG
  res:PTR TO mui_nlist_getentryinfo
ENDOBJECT

OBJECT muip_nlist_querybeginning
  methodid:LONG
ENDOBJECT

OBJECT muip_nlist_getselectinfo
  methodid:LONG
  res:PTR TO mui_nlist_getselectinfo
ENDOBJECT

OBJECT muip_nlist_copyto
  methodid:LONG
  pos:LONG
  filename:PTR TO CHAR
  result:PTR TO LONG
  entries:PTR TO LONG
ENDOBJECT


OBJECT muip_nlist_droptype
  methodid:LONG
  pos:PTR TO LONG
  type:PTR TO LONG
ENDOBJECT

OBJECT muip_nlist_dropdraw
  methodid:LONG
  pos:LONG
  type:LONG
  minx:LONG
  maxx:LONG
  miny:LONG
  maxy:LONG
ENDOBJECT

OBJECT muip_nlist_redrawentry
  methodid:LONG
  entry:PTR TO LONG
ENDOBJECT

OBJECT muip_nlist_domethod
  methodid:LONG
  pos:LONG
  destobj:PTR TO LONG
  followparams:LONG
ENDOBJECT

OBJECT muip_nlist_colwidth
  methodid:LONG
  col:LONG
  width:LONG
ENDOBJECT

OBJECT muip_nlist_contextmenubuild
  methodid:LONG
  mx:LONG
  my:LONG
  pos:LONG
  column:LONG
  flags:LONG
  ontop:LONG
ENDOBJECT

OBJECT muip_nlist_dropentrydrawerase
  methodid:LONG
  type:LONG
  drawpos:LONG
  erasepos:LONG
ENDOBJECT

OBJECT muip_nlist_coltocolumn
  methodid:LONG
  col:LONG
ENDOBJECT

OBJECT muip_nlist_columntocol
  methodid:LONG
  column:LONG
ENDOBJECT

OBJECT muip_nlist_sort2
  methodid:LONG
  sort_type:LONG
  sort_type_add:LONG
ENDOBJECT

OBJECT muip_nlist_prevselected
  methodid:LONG
  pos:PTR TO LONG
ENDOBJECT

OBJECT muip_nlist_setcolumncol
  methodid:LONG
  column:LONG
  col:LONG
ENDOBJECT


#define DISPLAY_ARRAY_MAX 64

#define ALIGN_LEFT      $0000
#define ALIGN_CENTER    $0100
#define ALIGN_RIGHT     $0200
#define ALIGN_JUSTIFY   $0400


OBJECT nlist_comparemessage
  entry1:PTR TO LONG
  entry2:PTR TO LONG
  sort_type:LONG
ENDOBJECT

OBJECT nlist_constructmessage
  entry:PTR TO LONG
  pool:PTR TO LONG
ENDOBJECT

OBJECT nlist_destructmessage
  entry:PTR TO LONG
  pool:PTR TO LONG
ENDOBJECT

OBJECT nlist_displaymessage
  entry:PTR TO LONG
  entry_pos:LONG
/*  strings:ARRAY OF 64 PTR TO CHAR*/
/*  preparses:ARRAY OF 64 PTR TO CHAR*/
ENDOBJECT

OBJECT nlist_copyentrytoclipmessage
  entry:PTR TO LONG
  entry_pos:LONG
  str_result:PTR TO CHAR
  column1:LONG
  column1_pos:LONG
  column2:LONG
  column2_pos:LONG
  column1_pos_type:LONG
  column2_pos_type:LONG
ENDOBJECT

OBJECT nlist_copycolumntoclipmessage
  string:PTR TO CHAR
  entry_pos:LONG
  str_result:PTR TO CHAR
  str_pos1:LONG
  str_pos2:LONG
ENDOBJECT


