home *** CD-ROM | disk | FTP | other *** search
/ Enigma Amiga Life 106 / EnigmaAmiga106CD.iso / software / on-line / cmanager / docs / developer / example.c < prev   
Encoding:
Text File  |  1998-09-25  |  1.7 KB  |  75 lines

  1.  
  2. // using multiselection:
  3.  
  4.     if(( MoreFlags & USE_CMANAGER ) && CManagerBase ) {
  5.         APTR    handle;
  6.  
  7.         if( handle = CM_StartManager( NULL, NULL )) {
  8.             struct MinList *list;
  9.  
  10.             if( list = CM_GetEntry( handle, CMGE_USER | CMGE_MULTISELECT )) {
  11.                 struct CMUser  *user;
  12.                 TEXT            buffer[1024];
  13.                 ULONG           i;
  14.  
  15.                 buffer[0] = '\0';
  16.  
  17.                 for( i = 0, user = (struct CMUser *)list->mlh_Head; user->Succ; user = user->Succ ) {
  18.  
  19.                     if( i++ )
  20.                         strcat( buffer, ";" );
  21.  
  22.                     strcat( buffer, user->Fax );
  23.                 }
  24.  
  25.                 set( data->Number, MUIA_String_Contents, buffer );
  26.  
  27.                 CM_FreeList( list );
  28.             }
  29.  
  30.             CM_FreeHandle( handle, TRUE );
  31.         }
  32.  
  33.     }
  34.  
  35.  
  36. // single selection:
  37.  
  38.     if(( MoreFlags & USE_CMANAGER ) && CManagerBase ) {
  39.         APTR    handle;
  40.  
  41.         if( handle = CM_StartManager( NULL, NULL )) {
  42.             struct CMUser  *user;
  43.  
  44.             if( user = CM_GetEntry( handle, CMGE_USER )) {
  45.                 TEXT    buffer[1024];
  46.  
  47.                 set( data->Number, MUIA_String_Contents, user->Fax );
  48.  
  49.                 sprintf( buffer, "%s %s", user->Name, user->LastName );
  50.  
  51.                 strcpy( data->FData.Name, buffer );
  52.                 strcpy( data->FData.Attn, buffer );
  53.  
  54.                 CM_FreeEntry( user );
  55.             }
  56.  
  57.             CM_FreeHandle( handle, TRUE );
  58.         }
  59.  
  60.     }
  61.  
  62.  
  63. // adding entries to the database:
  64.  
  65.     struct CMUser *user;
  66.  
  67.     if( user = CM_AllocEntry( CME_USER )) {
  68.  
  69.         // fill the entry fields
  70.  
  71.         CM_AddEntry( user );
  72.  
  73.         CM_FreeEntry( user );
  74.     }
  75.