//===============================================================================
// Xe UI toolkit
//
// XeSeparator
//  Private header file
//
// AUTHOR:  Gabor Nagy
// DATE:    2026-May-28 22:22:09
//
// Copyright (C) 1996-2026 by Gabor Nagy. All rights reserved.
//===============================================================================
#ifndef _XeSeparatorP_h
#define _XeSeparatorP_h

#include <Xe/PrimitiveP.h>
#include <Xe/Separator.h>

#if defined (__cplusplus) && (!(defined (__CPLUSLIBS)))
extern "C" {
#endif


//================================
// Class definition
//================================

#define XeSeparatorClassCore\
	XePrimitiveClassCore

typedef struct _XeSeparatorClassRec
{
	XeSeparatorClassCore;
} XeSeparatorClassRec;

extern XeSeparatorClassRec  _XeSeparator_class;


//================================
// Instance definition
//================================
// Instance part
//================================
typedef struct
{
// Resources
	uint16_t  ShadowType;
	char      Orientation;

// When a Separator is in a Matrix
//
	EBool     Movable;
} XeSeparatorPart;


//================================
// Instance record
//================================
typedef struct _XeSeparatorRec
{
	XeWidgetCore;
	XeBasePart       Base;
	XePrimitivePart  Primitive;
	XeSeparatorPart  xeSeparator;
} XeSeparatorRec;


#if defined (__cplusplus) && (!(defined (__CPLUSLIBS)))
} // Close scope of 'extern "C"' declaration
#endif

#endif // _XeSeparatorP_h
