home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / warphead.zip / H / DRAFPRIV.H < prev    next >
C/C++ Source or Header  |  1997-02-28  |  3KB  |  119 lines

  1. /* @(#)Z 1.4 com/src/bento/DrafPriv.h, odstorage, od96os2, odos29646d 96/11/15 15:29:28 (96/10/29 09:12:07) */
  2. /*====START_GENERATED_PROLOG======================================
  3.  */
  4. /*
  5.  *   COMPONENT_NAME: odstorage
  6.  *
  7.  *   CLASSES:   IDList
  8.  *        PreserveFocus
  9.  *
  10.  *   ORIGINS: 82,27
  11.  *
  12.  *
  13.  *   (C) COPYRIGHT International Business Machines Corp. 1995,1996
  14.  *   All Rights Reserved
  15.  *   Licensed Materials - Property of IBM
  16.  *   US Government Users Restricted Rights - Use, duplication or
  17.  *   disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  18.  *       
  19.  *   IBM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
  20.  *   ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  21.  *   PURPOSE. IN NO EVENT SHALL IBM BE LIABLE FOR ANY SPECIAL, INDIRECT OR
  22.  *   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
  23.  *   USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
  24.  *   OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE
  25.  *   OR PERFORMANCE OF THIS SOFTWARE.
  26.  */
  27. /*====END_GENERATED_PROLOG========================================
  28.  */
  29.  
  30. /*
  31.     File:        DrafPriv.h
  32.  
  33.     Contains:    Private class used by CMDraft.
  34.  
  35.     Owned by:    Vincent Lo
  36.  
  37.     Copyright:    ⌐ 1993 - 1995 by Apple Computer, Inc., all rights reserved.
  38.  
  39.     Change History (most recent first):
  40.  
  41.          <8>     6/16/95    VL        1244940: Removed fEV from PreserveFocus
  42.                                     class.
  43.          <7>     6/13/95    VL        1241352: Moved PreserveFocus from
  44.                                     CMDraft.cpp.
  45.          <6>     4/25/95    DM        1172791: Replace AEHashTable with
  46.                                     OpenHashTable
  47.          <5>     8/11/94    CC        Added #define _DRAFPRIV_.
  48.          <4>     6/20/94    CC        ODMemoryHeap* changed to ODMemoryHeapID.
  49.          <3>     6/15/94    RR        ODHeap -> ODMemoryHeap
  50.          <2>     5/27/94    VL        Changed ODAEHashTable to AEHashTable.
  51.          <1>     5/27/94    VL        first checked in
  52.  
  53.     To Do:
  54. */
  55.  
  56. #ifndef _DRAFPRIV_
  57. #define _DRAFPRIV_
  58.  
  59. #ifndef _ODTYPES_
  60. #include "ODTypes.h"
  61. #endif
  62.  
  63. #ifndef _PLFMDEF_
  64. #include "PlfmDef.h"
  65. #endif
  66.  
  67. #ifndef _ODMEMORY_
  68. #include "ODMemory.h"
  69. #endif
  70.  
  71. class OpenHashTable;
  72. class ODStorageUnit;
  73. class ODStorageUnitCursor;
  74.  
  75. class IDList {
  76.  
  77. public:
  78.  
  79.     IDList();
  80.     ODVMethod    ~IDList();
  81.     
  82.     ODMethod void Initialize();
  83.     
  84.     ODMethod void    Add(ODID id, void* object);
  85.     ODMethod ODID Add(void* object);
  86.     ODMethod void     Remove(ODID id);
  87.  
  88.     ODMethod void*    Get(ODID id);
  89.     ODMethod ODID    GetID(void* object);
  90.     
  91.     ODMethod ODBoolean    Exists(ODID id);
  92.     ODMethod ODBoolean    ObjectExists(void* object);
  93.  
  94. private:
  95.  
  96.     ODMemoryHeapID            GetHeap();
  97.     
  98.     OpenHashTable*    fIDToObj;
  99.     OpenHashTable*    fObjToID;
  100.     ODID            fCurrentID;
  101.     ODMemoryHeapID            fHeap;
  102. };
  103.  
  104. class PreserveFocus
  105. {
  106.  
  107. public:
  108.  
  109.     PreserveFocus(Environment* ev, ODStorageUnit* su);
  110.     ~PreserveFocus();
  111.         
  112. private:
  113.  
  114.     ODStorageUnit* fSU;
  115.     ODStorageUnitCursor* fSUCursor;
  116. };
  117.  
  118. #endif    // _DRAFPRIV_
  119.