//===============================================================================
// Xe UI toolkit
//
// XeProgressIndicator
//  Public header file
//
// AUTHOR:  Gabor Nagy
// DATE:    2026-Jun-17 19:46:57
//
// Copyright (C) 1996-2026 by Gabor Nagy. All rights reserved.
//===============================================================================
#ifndef _XeProgress_h
#define _XeProgress_h

#include <ETypes.h>
#include <stdarg.h>

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

#ifndef XeProgressIndicator_DEF
#define XeProgressIndicator_DEF
typedef struct XeProgressIndicator_S  XeProgressIndicator;
#endif

extern void  XeProgressIndicator_Set(XeProgressIndicator* PProgressIndicator, const float PValue, void (*PAbortCallback)(EPointer PClientData), EPointer PClientData);
extern void  XeProgressIndicator_SetMessage(XeProgressIndicator* PProgressIndicator, const char* PMessage, ...);
extern void  XeProgressIndicator_SetMessageVa(XeProgressIndicator* PProgressIndicator, const char* PMessage, va_list PArgList);


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

#endif // _XeProgress_h
