home *** CD-ROM | disk | FTP | other *** search
/ Tools / WinSN5.0Ver.iso / NETSCAP.50 / WIN1998.ZIP / ns / cmd / xfe / XfeWidgets / Xfe / ChromeP.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-04-08  |  5.1 KB  |  152 lines

  1. /* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
  2.  *
  3.  * The contents of this file are subject to the Netscape Public License
  4.  * Version 1.0 (the "NPL"); you may not use this file except in
  5.  * compliance with the NPL.  You may obtain a copy of the NPL at
  6.  * http://www.mozilla.org/NPL/
  7.  *
  8.  * Software distributed under the NPL is distributed on an "AS IS" basis,
  9.  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
  10.  * for the specific language governing rights and limitations under the
  11.  * NPL.
  12.  *
  13.  * The Initial Developer of this code under the NPL is Netscape
  14.  * Communications Corporation.  Portions created by Netscape are
  15.  * Copyright (C) 1998 Netscape Communications Corporation.  All Rights
  16.  * Reserved.
  17.  */
  18. /*-----------------------------------------*/
  19. /*                                                                        */
  20. /* Name:        <Xfe/ChromeP.h>                                            */
  21. /* Description:    XfeChrome widget private header file.                    */
  22. /* Author:        Ramiro Estrugo <ramiro@netscape.com>                    */
  23. /*                                                                        */
  24. /*----------------------------------------------------------------------*/
  25.  
  26.  
  27. #ifndef _XfeChromeP_h_                            /* start ChromeP.h        */
  28. #define _XfeChromeP_h_
  29.  
  30. #include <Xfe/Chrome.h>
  31. #include <Xfe/ManagerP.h>
  32.  
  33. #ifdef __cplusplus                                /* start C++            */
  34. extern "C" {
  35. #endif
  36.     
  37. /*----------------------------------------------------------------------*/
  38. /*                                                                        */
  39. /* XfeChromeClassPart                                                    */
  40. /*                                                                        */
  41. /*----------------------------------------------------------------------*/
  42. typedef struct
  43. {
  44.     XtPointer            extension;                    /* extension        */ 
  45. } XfeChromeClassPart;
  46.  
  47. /*----------------------------------------------------------------------*/
  48. /*                                                                        */
  49. /* XfeChromeClassRec                                                    */
  50. /*                                                                        */
  51. /*----------------------------------------------------------------------*/
  52. typedef struct _XfeChromeClassRec
  53. {
  54.     CoreClassPart                core_class;
  55.     CompositeClassPart            composite_class;
  56.     ConstraintClassPart            constraint_class;
  57.     XmManagerClassPart            manager_class;
  58.     XfeManagerClassPart            xfe_manager_class;
  59.     XfeChromeClassPart            xfe_chrome_class;
  60. } XfeChromeClassRec;
  61.  
  62. externalref XfeChromeClassRec xfeChromeClassRec;
  63.  
  64. /*----------------------------------------------------------------------*/
  65. /*                                                                        */
  66. /* XfeChromePart                                                        */
  67. /*                                                                        */
  68. /*----------------------------------------------------------------------*/
  69. typedef struct _XfeChromePart
  70. {
  71.     /* Components */
  72.     Widget                menu_bar;                /* Menu bar                */
  73.     Widget                tool_box;                /* Tool box                */
  74.     Widget                dash_board;                /* Dash board            */
  75.  
  76.     /* View components */
  77.     Widget                center_view;            /* Center view            */
  78.     Widget                top_view;                /* Top view                */
  79.     Widget                bottom_view;            /* Bottom view            */
  80.     Widget                left_view;                /* Left view            */
  81.     Widget                right_view;                /* Right view            */
  82.  
  83.     /* Spacing */
  84.     Dimension            spacing;                /* Spacing                */
  85.  
  86.     /* Private data -- Dont even look past this comment -- */
  87.  
  88. } XfeChromePart;
  89.  
  90. /*----------------------------------------------------------------------*/
  91. /*                                                                        */
  92. /* XfeChromeRec                                                            */
  93. /*                                                                        */
  94. /*----------------------------------------------------------------------*/
  95. typedef struct _XfeChromeRec
  96. {
  97.     CorePart            core;
  98.     CompositePart        composite;
  99.     ConstraintPart        constraint;
  100.     XmManagerPart        manager;
  101.     XfeManagerPart        xfe_manager;
  102.     XfeChromePart        xfe_chrome;
  103. } XfeChromeRec;
  104.  
  105. /*----------------------------------------------------------------------*/
  106. /*                                                                        */
  107. /* XfeChromeConstraintPart                                                */
  108. /*                                                                        */
  109. /*----------------------------------------------------------------------*/
  110. typedef struct _XfeChromeConstraintPart
  111. {
  112.     unsigned char            chrome_child_type;
  113. /*     Dimension            min_width; */
  114. /*     Dimension            min_height; */
  115. /*     Dimension            max_width; */
  116. /*     Dimension            max_height; */
  117. } XfeChromeConstraintPart;
  118.  
  119. /*----------------------------------------------------------------------*/
  120. /*                                                                        */
  121. /* XfeChromeConstraintRec                                                */
  122. /*                                                                        */
  123. /*----------------------------------------------------------------------*/
  124. typedef struct _XfeChromeConstraintRec
  125. {
  126.     XmManagerConstraintPart            manager;
  127.     XfeManagerConstraintPart        xfe_manager;
  128.     XfeChromeConstraintPart            xfe_chrome;
  129. } XfeChromeConstraintRec;
  130.  
  131. /*----------------------------------------------------------------------*/
  132. /*                                                                        */
  133. /* XfeChromePart Access Macro                                            */
  134. /*                                                                        */
  135. /*----------------------------------------------------------------------*/
  136. #define _XfeChromePart(w) &(((XfeChromeWidget) w) -> xfe_chrome)
  137.  
  138. /*----------------------------------------------------------------------*/
  139. /*                                                                        */
  140. /* XfeChromePart child constraint part access macro                        */
  141. /*                                                                        */
  142. /*----------------------------------------------------------------------*/
  143. #define _XfeChromeConstraintPart(w) \
  144. (&(((XfeChromeConstraintRec *) _XfeConstraints(w)) -> xfe_chrome))
  145.  
  146. #ifdef __cplusplus                                /* end C++                */
  147. }
  148. #endif
  149.  
  150. #endif                                            /* end ChromeP.h        */
  151.  
  152.