cdesktopenv/cde/programs/dtprintinfo/libUI/MotifUI/Icon.h

181 lines
5.8 KiB
C

/*
* CDE - Common Desktop Environment
*
* Copyright (c) 1993-2012, The Open Group. All rights reserved.
*
* These libraries and programs are free software; you can
* redistribute them and/or modify them under the terms of the GNU
* Lesser General Public License as published by the Free Software
* Foundation; either version 2 of the License, or (at your option)
* any later version.
*
* These libraries and programs are distributed in the hope that
* they will be useful, but WITHOUT ANY WARRANTY; without even the
* implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU Lesser General Public License for more
* details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with these libraries and programs; if not, write
* to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
* Floor, Boston, MA 02110-1301 USA
*/
/* $XConsortium: Icon.h /main/3 1995/11/06 09:41:27 rswiston $ */
/* *
* (c) Copyright 1993, 1994 Hewlett-Packard Company *
* (c) Copyright 1993, 1994 International Business Machines Corp. *
* (c) Copyright 1993, 1994 Sun Microsystems, Inc. *
* (c) Copyright 1993, 1994 Novell, Inc. *
*/
/*****************************************************************************
*
* Icon.h - widget public header file
*
******************************************************************************/
#ifndef _Icon_h
#define _Icon_h
#ifdef __cplusplus
extern "C" {
#endif
externalref WidgetClass iconWidgetClass;
typedef struct _IconClassRec *IconWidgetClass;
typedef struct _IconRec *IconWidget;
enum {
GuiSINGLE_CLICK,
GuiDOUBLE_CLICK
};
enum {
GuiPIXMAP_TOP,
GuiPIXMAP_BOTTOM,
GuiPIXMAP_LEFT,
GuiPIXMAP_RIGHT
};
enum {
GuiNORTHWEST_GRAVITY,
GuiNORTH_GRAVITY,
GuiNORTHEAST_GRAVITY,
GuiWEST_GRAVITY,
GuiCENTER_GRAVITY,
GuiEAST_GRAVITY,
GuiSOUTHWEST_GRAVITY,
GuiSOUTH_GRAVITY,
GuiSOUTHEAST_GRAVITY
};
typedef struct
{
int reason;
XEvent *event;
Boolean prev_selected;
XmString string;
int field_index;
XmString field_string;
} GuiIconCallbackStruct, *GuiIconCallback;
typedef struct
{
Boolean free_data;
Dimension name_width;
int n_fields;
int field_spacing;
XmString *fields;
Dimension *widths;
unsigned char *alignments;
Boolean *draw_fields;
Boolean *selected;
Boolean *active;
} GuiIconFieldsStruct, *GuiIconFields, **GuiIconFieldsList;
#define GuiIsIcon(w) XtIsSubclass((w), iconWidgetClass)
/* Icon Resources */
extern const char gui_icon_strings[];
#define GuiNtopLabelString ((char*)&gui_icon_strings[0])
#define GuiNbottomLabelString ((char*)&gui_icon_strings[15])
#define GuiNpixmapPlacement ((char*)&gui_icon_strings[33])
#define GuiCPixmapPlacement ((char*)&gui_icon_strings[49])
#define GuiRPixmapPlacement ((char*)&gui_icon_strings[65])
#define GuiNdoubleClickCallback ((char*)&gui_icon_strings[81])
#define GuiNsingleClickCallback ((char*)&gui_icon_strings[101])
#define GuiNselected ((char*)&gui_icon_strings[121])
#define GuiCSelected ((char*)&gui_icon_strings[130])
#define GuiNiconShadowType ((char*)&gui_icon_strings[139])
#define GuiCIconShadowType ((char*)&gui_icon_strings[154])
#define GuiNiconShadowThickness ((char*)&gui_icon_strings[169])
#define GuiCIconShadowThickness ((char*)&gui_icon_strings[189])
#define GuiNtextSelectColor ((char*)&gui_icon_strings[209])
#define GuiCTextSelectColor ((char*)&gui_icon_strings[225])
#define GuiNselectColor ((char*)&gui_icon_strings[241])
#define GuiCSelectColor ((char*)&gui_icon_strings[253])
#define GuiNselectColorPersistent ((char*)&gui_icon_strings[265])
#define GuiCSelectColorPersistent ((char*)&gui_icon_strings[287])
#define GuiNshowSelectedPixmap ((char*)&gui_icon_strings[309])
#define GuiCShowSelectedPixmap ((char*)&gui_icon_strings[328])
#define GuiNiconMarginThickness ((char*)&gui_icon_strings[347])
#define GuiCIconMarginThickness ((char*)&gui_icon_strings[367])
#define GuiNactive ((char*)&gui_icon_strings[387])
#define GuiCActive ((char*)&gui_icon_strings[394])
#define GuiNiconMask ((char*)&gui_icon_strings[401])
#define GuiCIconMask ((char*)&gui_icon_strings[410])
#define GuiNshrinkOutline ((char*)&gui_icon_strings[419])
#define GuiCShrinkOutline ((char*)&gui_icon_strings[433])
#define GuiNfields ((char *)&gui_icon_strings[447])
#define GuiCFields ((char *)&gui_icon_strings[454])
#define GuiNstatePixmap ((char *)&gui_icon_strings[461])
#define GuiNstateIconMask ((char *)&gui_icon_strings[473])
#define GuiCStateIconMask ((char *)&gui_icon_strings[487])
#define GuiNstateGravity ((char *)&gui_icon_strings[501])
#define GuiCStateGravity ((char *)&gui_icon_strings[514])
#define GuiRStateGravity ((char *)&gui_icon_strings[514])
/* Public functions */
extern void GuiIconSetFieldNameWidth(
Widget, /* GuiIconWidget */
Dimension name_width);
extern Dimension GuiIconGetFieldNameWidth(Widget);
extern void GuiIconSetField(
Widget, /* GuiIconWidget */
int index,
XmString new_string, /* NULL does not change value */
Dimension new_width, /* 0 does not change value */
unsigned char alignments,
Boolean draw_field,
Boolean selected,
Boolean active);
extern void GuiIconGetField(
Widget,
int index,
XmString *string,
Dimension *width,
unsigned char *alignments,
Boolean *draw_field,
Boolean *selected,
Boolean *active);
extern void GuiIconGetRects(
Widget, /* GuiIconWidget */
XRectangle *, /* Pixmap Rectangle Return */
XRectangle * /* Label Rectangle Return */
);
#ifdef __cplusplus
} /* Close scope of 'extern "C"' declaration which encloses file. */
#endif
#endif /* _Icon_h */
/* DON'T ADD ANYTHING AFTER THIS #endif */