OpenIndiana and Solaris port
[oweals/cde.git] / cde / programs / dtinfo / dtinfo / src / Basic / LibraryElement.hh
1 /*
2  * $XConsortium: LibraryElement.hh /main/3 1996/06/11 16:19:53 cde-hal $
3  *
4  * Copyright (c) 1992 HAL Computer Systems International, Ltd.
5  * All rights reserved.  Unpublished -- rights reserved under
6  * the Copyright Laws of the United States.  USE OF A COPYRIGHT
7  * NOTICE IS PRECAUTIONARY ONLY AND DOES NOT IMPLY PUBLICATION
8  * OR DISCLOSURE.
9  * 
10  * THIS SOFTWARE CONTAINS CONFIDENTIAL INFORMATION AND TRADE
11  * SECRETS OF HAL COMPUTER SYSTEMS INTERNATIONAL, LTD.  USE,
12  * DISCLOSURE, OR REPRODUCTION IS PROHIBITED WITHOUT THE
13  * PRIOR EXPRESS WRITTEN PERMISSION OF HAL COMPUTER SYSTEMS
14  * INTERNATIONAL, LTD.
15  * 
16  *                         RESTRICTED RIGHTS LEGEND
17  * Use, duplication, or disclosure by the Government is subject
18  * to the restrictions as set forth in subparagraph (c)(l)(ii)
19  * of the Rights in Technical Data and Computer Software clause
20  * at DFARS 252.227-7013.
21  *
22  *          HAL COMPUTER SYSTEMS INTERNATIONAL, LTD.
23  *                  1315 Dell Avenue
24  *                  Campbell, CA  95008
25  * 
26  */
27
28
29 // /////////////////////////////////////////////////////////////////
30 // LibraryElement - Abstract base class for things in the library
31 // /////////////////////////////////////////////////////////////////
32
33 class LibraryElement : public OutlineElement
34 {
35 public: // functions
36   LibraryElement (OutlineList *children = NULL)
37     : OutlineElement (children)
38     { }
39
40   virtual const char *display_as() = 0;
41   
42   virtual OutlineList *children();
43
44   // Can't set the children, since object will automatically generate. 
45   void set_children (OutlineList *)
46     { abort (); }
47
48 protected: // functions
49   virtual void create_children() = 0;
50
51 protected: // variables
52 };