Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
Output
Winx64
Build
PublishedApi
DgnPlatform
ColorUtil.h
Go to the documentation of this file.
1
/*--------------------------------------------------------------------------------------+
2
|
3
| Supplied under applicable software license agreement.
4
|
5
| Copyright (c) 2018 Bentley Systems, Incorporated. All rights reserved.
6
|
7
+---------------------------------------------------------------------------------------*/
8
#pragma once
9
11
#include "
DgnPlatform.h
"
12
13
BENTLEY_TYPEDEFS
(RgbColorDef)
14
15
BEGIN_BENTLEY_DGNPLATFORM_NAMESPACE
16
17
enum
ColorDefConstants
18
{
19
MAX_COLOR_NAME_SIZE
= 30,
20
MAX_CMAPENTRIES
= 256,
21
MAX_CTBLBYTES
= (
MAX_CMAPENTRIES
* 3),
22
MAX_CTBLNAMESIZE
= 64,
23
MAX_ExtendedColorIndex
= 0x0fffff,
// Use 20 bits of high 24.
24
25
// Menu Color Indexes
26
BLACK_MENU_COLOR_INDEX
= 0,
27
BLUE_MENU_COLOR_INDEX
= 1,
28
GREEN_MENU_COLOR_INDEX
= 2,
29
CYAN_MENU_COLOR_INDEX
= 3,
30
RED_MENU_COLOR_INDEX
= 4,
31
MAGENTA_MENU_COLOR_INDEX
= 5,
32
YELLOW_MENU_COLOR_INDEX
= 6,
33
WHITE_MENU_COLOR_INDEX
= 7,
34
LGREY_MENU_COLOR_INDEX
= 8,
35
DGREY_MENU_COLOR_INDEX
= 9,
36
MGREY_MENU_COLOR_INDEX
= 10,
37
38
NUM_MENU_COLORS
= 12,
// number of menu colors
39
NUM_NEW_FIXED_COLORS
= 6,
40
NEW_NUM_MENU_COLORS
=
NUM_MENU_COLORS
+
NUM_NEW_FIXED_COLORS
,
41
42
// Method Ids for setting and querying color descriptors
43
COLORD_RGB
= 1,
// S/Q
44
COLORD_HSV
= 2,
// S/Q
45
COLORD_XCOLORID
= 3,
// S/Q
46
COLORD_XNAMEID
=
COLORD_XCOLORID
,
47
COLORD_XCOLORSTRING
= 4,
// S/Q
48
COLORD_XNAMESTR
=
COLORD_XCOLORSTRING
,
49
COLORD_ELEM_COLOR_NUMBER
= 5,
// S/Q
50
COLORD_MENUCOLORID
= 6,
// S/Q
51
COLORD_ATTRDATA
= 7,
// BSI-only
52
COLORD_RGBDITHERED
= 8,
// BSI-only
53
COLORD_VPAL_INDEX
= 9,
// Q-only
54
COLORD_ELEM_COLOR_REF
= 10,
// S-only
55
COLORD_DRAW_VALUE
= 20,
// S/Q
56
COLORD_DRAW_INDEX
=
COLORD_DRAW_VALUE
,
57
58
// Bit flags for "asetFlags" member of palette entry.
59
PALFLAG_MATCHLOADEDCOLORS
= 0x0,
60
PALFLAG_MATCHDGNCTBL
= 0x1,
61
62
// Palette Status flags
63
PALSTATUS_SYNCHABLE
= 0x01,
64
65
// Color matching flags
66
COLOR_STRESS_DEFAULT
= 0,
67
COLOR_STRESS_HUE
= 0x1,
68
COLOR_STRESS_SATURATION
= 0x2,
69
COLOR_STRESS_VALUE
= 0x4,
70
71
// Palette Synch flags
72
SYNCH_DUE_TO_LOAD_COLORS
= 1,
73
SYNCH_DUE_TO_CMAP_CHG
= 2,
74
};
75
76
77
//=======================================================================================
80
//=======================================================================================
81
union
IntColorDef
82
{
83
RgbColorDef
m_rgb
;
84
RgbaColorDef
m_rgba
;
85
UInt32
m_int
;
86
87
void
SetColors
(
Byte
r,
Byte
g,
Byte
b,
Byte
a) {m_rgba.red = r; m_rgba.green = g; m_rgba.blue = b; m_rgba.alpha = a;}
88
89
IntColorDef
() {m_int = 0;}
90
IntColorDef
(
RgbColorDef
rgb) {m_int = 0; m_rgb = rgb;}
91
IntColorDef
(
UInt32
intval) {m_int=intval;}
92
IntColorDef
(
Byte
red,
Byte
green,
Byte
blue) {SetColors (red,green,blue,0);}
93
IntColorDef
(
Byte
red,
Byte
green,
Byte
blue,
Byte
alpha) {SetColors (red,green,blue,alpha);}
94
};
95
96
97
END_BENTLEY_DGNPLATFORM_NAMESPACE
98
Bentley::DgnPlatform::SYNCH_DUE_TO_LOAD_COLORS
Definition:
ColorUtil.h:72
Bentley::DgnPlatform::NUM_MENU_COLORS
Definition:
ColorUtil.h:38
Bentley::DgnPlatform::PALFLAG_MATCHLOADEDCOLORS
Definition:
ColorUtil.h:59
Bentley::DgnPlatform::MAX_COLOR_NAME_SIZE
Definition:
ColorUtil.h:19
Bentley::DgnPlatform::IntColorDef::IntColorDef
IntColorDef(UInt32 intval)
Definition:
ColorUtil.h:91
END_BENTLEY_DGNPLATFORM_NAMESPACE
#define END_BENTLEY_DGNPLATFORM_NAMESPACE
Definition:
DgnPlatformBaseType.r.h:69
Bentley::DgnPlatform::BLACK_MENU_COLOR_INDEX
Definition:
ColorUtil.h:26
Bentley::DgnPlatform::MAX_CMAPENTRIES
Definition:
ColorUtil.h:20
Bentley::DgnPlatform::PALSTATUS_SYNCHABLE
Definition:
ColorUtil.h:63
Bentley::DgnPlatform::IntColorDef::IntColorDef
IntColorDef(Byte red, Byte green, Byte blue, Byte alpha)
Definition:
ColorUtil.h:93
Bentley::DgnPlatform::IntColorDef::IntColorDef
IntColorDef(Byte red, Byte green, Byte blue)
Definition:
ColorUtil.h:92
Bentley::DgnPlatform::COLORD_MENUCOLORID
Definition:
ColorUtil.h:50
Bentley::DgnPlatform::COLORD_XNAMESTR
Definition:
ColorUtil.h:48
Bentley::DgnPlatform::ColorDefConstants
ColorDefConstants
Definition:
ColorUtil.h:17
Bentley::DgnPlatform::COLOR_STRESS_HUE
Definition:
ColorUtil.h:67
Bentley::DgnPlatform::NEW_NUM_MENU_COLORS
Definition:
ColorUtil.h:40
Bentley::DgnPlatform::CYAN_MENU_COLOR_INDEX
Definition:
ColorUtil.h:29
Bentley::DgnPlatform::MAGENTA_MENU_COLOR_INDEX
Definition:
ColorUtil.h:31
Bentley::DgnPlatform::COLOR_STRESS_VALUE
Definition:
ColorUtil.h:69
Bentley::DgnPlatform::RED_MENU_COLOR_INDEX
Definition:
ColorUtil.h:30
UInt32
uint32_t UInt32
Definition:
Bentley.r.h:128
Bentley::DgnPlatform::COLOR_STRESS_DEFAULT
Definition:
ColorUtil.h:66
Bentley::DgnPlatform::MAX_ExtendedColorIndex
Definition:
ColorUtil.h:23
Bentley::DgnPlatform::SYNCH_DUE_TO_CMAP_CHG
Definition:
ColorUtil.h:73
Bentley::DgnPlatform::BLUE_MENU_COLOR_INDEX
Definition:
ColorUtil.h:27
Bentley::DgnPlatform::IntColorDef::IntColorDef
IntColorDef()
Definition:
ColorUtil.h:89
Bentley::DgnPlatform::COLORD_ATTRDATA
Definition:
ColorUtil.h:51
Bentley::DgnPlatform::IntColorDef::IntColorDef
IntColorDef(RgbColorDef rgb)
Definition:
ColorUtil.h:90
Bentley::DgnPlatform::WHITE_MENU_COLOR_INDEX
Definition:
ColorUtil.h:33
Bentley::DgnPlatform::COLORD_HSV
Definition:
ColorUtil.h:44
Bentley::DgnPlatform::PALFLAG_MATCHDGNCTBL
Definition:
ColorUtil.h:60
Bentley::DgnPlatform::IntColorDef::SetColors
void SetColors(Byte r, Byte g, Byte b, Byte a)
Definition:
ColorUtil.h:87
Bentley::DgnPlatform::YELLOW_MENU_COLOR_INDEX
Definition:
ColorUtil.h:32
DgnPlatform.h
Bentley::DgnPlatform::LGREY_MENU_COLOR_INDEX
Definition:
ColorUtil.h:34
Bentley::DgnPlatform::COLORD_DRAW_INDEX
Definition:
ColorUtil.h:56
Bentley::DgnPlatform::IntColorDef
Union that allows a color to be accessed as a UInt32 (in form TBGR), RgbColorDef, or RgbaColorDef...
Definition:
ColorUtil.h:81
BENTLEY_TYPEDEFS
#define BENTLEY_TYPEDEFS(_name_)
Definition:
Bentley.h:152
Bentley::DgnPlatform::DGREY_MENU_COLOR_INDEX
Definition:
ColorUtil.h:35
Bentley::DgnPlatform::NUM_NEW_FIXED_COLORS
Definition:
ColorUtil.h:39
BEGIN_BENTLEY_DGNPLATFORM_NAMESPACE
#define BEGIN_BENTLEY_DGNPLATFORM_NAMESPACE
Definition:
DgnPlatformBaseType.r.h:68
Bentley::DgnPlatform::COLOR_STRESS_SATURATION
Definition:
ColorUtil.h:68
Bentley::DgnPlatform::COLORD_XCOLORSTRING
Definition:
ColorUtil.h:47
Bentley::DgnPlatform::COLORD_XCOLORID
Definition:
ColorUtil.h:45
Bentley::DgnPlatform::COLORD_RGB
Definition:
ColorUtil.h:43
Bentley::DgnPlatform::MAX_CTBLBYTES
Definition:
ColorUtil.h:21
Bentley::DgnPlatform::IntColorDef::m_rgb
RgbColorDef m_rgb
Definition:
ColorUtil.h:83
Bentley::DgnPlatform::COLORD_ELEM_COLOR_NUMBER
Definition:
ColorUtil.h:49
Bentley::DgnPlatform::MGREY_MENU_COLOR_INDEX
Definition:
ColorUtil.h:36
Bentley::DgnPlatform::COLORD_RGBDITHERED
Definition:
ColorUtil.h:52
Byte
unsigned char Byte
Definition:
Bentley.r.h:143
Bentley::DgnPlatform::IntColorDef::m_rgba
RgbaColorDef m_rgba
Definition:
ColorUtil.h:84
Bentley::DgnPlatform::COLORD_VPAL_INDEX
Definition:
ColorUtil.h:53
Bentley::DgnPlatform::GREEN_MENU_COLOR_INDEX
Definition:
ColorUtil.h:28
Bentley::DgnPlatform::IntColorDef::m_int
UInt32 m_int
Definition:
ColorUtil.h:85
Bentley::RgbColorDef
Definition:
DgnPlatform.r.h:339
Bentley::DgnPlatform::COLORD_DRAW_VALUE
Definition:
ColorUtil.h:55
Bentley::DgnPlatform::COLORD_XNAMEID
Definition:
ColorUtil.h:46
Bentley::RgbaColorDef
Definition:
DgnPlatform.r.h:331
Bentley::DgnPlatform::MAX_CTBLNAMESIZE
Definition:
ColorUtil.h:22
Bentley::DgnPlatform::COLORD_ELEM_COLOR_REF
Definition:
ColorUtil.h:54
Copyright © 2017 Bentley Systems, Incorporated. All rights reserved.