/***************************************************************************************************
layerdef.h : layer options defines

Copyright © John Paul Chacha. All Rights Reserved.

This source code file, which has been provided by John Paul Chacha as part of his software product 
for use only by licensed users of that product, includes proprietary information of John Paul Chacha

USE OF THIS SOFTWARE IS GOVERNED BY THE TERMS AND CONDITIONS OF THE LICENSE AGREEMENT FURNISHED WITH
THE PRODUCT

IN PARTICULAR, JOHN PAUL CHACHA SHALL BE FREE FROM ANY CLAIMS OR LIABILITIES ARISING OUT OF THE USE
OR MISUSE OF THIS FILE AND/OR ITS CONTENTS
***************************************************************************************************/
#pragma once

//--------------------------------------------------------------------------------------------------

//==================================================================================================
#define LAYER_MAX_COUNT							1024
#define LAYER_MAX_NAME							32

//--------------------------------------------------------------------------------------------------

//==================================================================================================
#define LAYER_OPTION_xxx						0x0000ff00
#define LAYER_OPTION_HIDDEN						0x00000100 // not visible
#define LAYER_OPTION_LOCKED						0x00000200 // cannot be moved
#define LAYER_OPTION_EXCLUDED					0x00000400 // excluded from flattened render
#define LAYER_OPTION_PROTECTED					0x00000800 // alpha-protected
#define LAYER_OPTION_CLICKTHRU					0x00001000 // does not activate on click
#define LAYER_OPTION_FLOATING					0x00002000 // overlay, floats above other layers

//--------------------------------------------------------------------------------------------------

//==================================================================================================
#define LAYER_BLEND_xxx							0x000000ff
#define LAYER_BLEND_NONE						0x000000ff // None
#define LAYER_BLEND_USER						0x000000fe // User Defined
#define LAYER_BLEND_NORM						0x00000000 // Normal
#define LAYER_BLEND_ADD							0x00000001 // Add
#define LAYER_BLEND_SUB							0x00000002 // Subtract
#define LAYER_BLEND_MUL							0x00000003 // Multiply
#define LAYER_BLEND_OFF							0x00000004 // Offset
#define LAYER_BLEND_HUE 						0x00000005 // Hue
#define LAYER_BLEND_CLR 						0x00000006 // Chroma
#define LAYER_BLEND_LUM 						0x00000007 // Luma
#define LAYER_BLEND_SCRN						0x00000008 // Screen
#define LAYER_BLEND_MASK						0x00000009 // Mask
#define LAYER_BLEND_DIV 						0x0000000a // Divide
#define LAYER_BLEND_DIFF 						0x0000000b // Difference
#define LAYER_BLEND_MIN 						0x0000000c // Minimum
#define LAYER_BLEND_MAX 						0x0000000d // Maximum
#define LAYER_BLEND_SAT 						0x0000000e // Saturation
#define LAYER_BLEND_OVER						0x0000000f // Overlay
#define LAYER_BLEND_DODG						0x00000010 // Dodge
#define LAYER_BLEND_BURN						0x00000011 // Burn
#define LAYER_BLEND_VAL 						0x00000012 // Value
#define LAYER_BLEND_LIT 						0x00000013 // Lightness
#define LAYER_BLEND_AND 						0x00000014 // Logical AND
#define LAYER_BLEND_OR  						0x00000015 // Logical OR
#define LAYER_BLEND_XOR 						0x00000016 // Logical XOR
#define LAYER_BLEND_LMSK						0x00000017 // Luma Mask
#define LAYER_BLEND_BHND						0x00000018 // Behind
#define LAYER_BLEND_OPNT						0x00000019 // Overpaint

//--------------------------------------------------------------------------------------------------

//==================================================================================================
