File: ColorGCP.h

package info (click to toggle)
xfireworks 1.3-8
  • links: PTS
  • area: main
  • in suites: squeeze, wheezy
  • size: 460 kB
  • ctags: 498
  • sloc: ansic: 3,229; makefile: 204; sh: 40
file content (147 lines) | stat: -rw-r--r-- 5,987 bytes parent folder | download | duplicates (11)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
/*****************************************************************************/
/* ColorGC GCȿδ䤤碌ѤΥ饤֥                            */
/*****************************************************************************/

#ifndef _XFIREWORKS_ColorGCP_h_INCLUDED_
#define _XFIREWORKS_ColorGCP_h_INCLUDED_

#include "ColorGC.h"

#define RGB_MAX_VALUE 65535

/*===========================================================================*/
/* XFireworks ϡι®Τˡɬפʿ GC ϡư     */
/* ٤ƳݤΤǤ̵̤ X ФؤΥꥯȤȥϲ     */
/* 餹ˡäݤ GC ϥǡ١˵Ƥ      */
/* ƱɬפˤʤäȤˤϡͭ褦ˤޤ                      */
/* (ColorGCDatabase ϤΤΥ饹Ǥ)                                  */
/* ˤꡤXAllocColor() ˤ뿧䤤碌Ԥ뤿ᡤ            */
/* ưʤ˹®ˤʤޤ                                              */
/* ǡ١θˤϡϥå塤å塤ؽǽѤ뤳Ȥ    */
/* Ǥޤ                                                                */
/*===========================================================================*/

/*---------------------------------------------------------------------------*/
/* ʲͭˤȡƱGCɤ줯餤ͭƤ뤫Ĵ٤뤳Ȥ    */
/* Ǥޤ                                                                */
/*---------------------------------------------------------------------------*/

/* #define HIT_LIST */

/*---------------------------------------------------------------------------*/
/* ʲͭˤȡåΥҥåΨĴ٤뤳ȤǤޤ          */
/*---------------------------------------------------------------------------*/

/* #define HIT_CACHE */

/*===========================================================================*/
/* GC μΤ륯饹                                                 */
/*===========================================================================*/

typedef struct _ColorGCInstance * ColorGCInstance;

typedef struct _ColorGCInstance {
  Disp disp;
  GC gc;
  XColor color;
} _ColorGCInstance;

/*===========================================================================*/
/* GC μΤΥꥹȤ륯饹                                         */
/* ƱοGC϶ͭᡤGCμΤꥹȤǴGCμ׵    */
/* ФơŬڤ ColorGCInstance ֤                                   */
/* (Ǥ¸ߤΤʤ餽̵֤ Create )                    */
/*===========================================================================*/

typedef struct _ColorGCList * ColorGCList;

typedef struct _ColorGCList { /* GC δ */
  Disp disp;
  int studying_flag; /* ؽǽON/OFFΥե饰 */
  ObjList list; /* ColorGCInstance Υꥹ */
} _ColorGCList;

/*===========================================================================*/
/* å                                                                */
/*===========================================================================*/

typedef struct _ColorGCCacheBuffer * ColorGCCacheBuffer;
typedef struct _ColorGCCache * ColorGCCache;

/* åѥХåե */
typedef struct _ColorGCCacheBuffer {
  ColorGCInstance instance;
} _ColorGCCacheBuffer;

/* å */
typedef struct _ColorGCCache {
  int size; /* å奵 */
  ColorGCList color_gc_list;
  ObjList buffer_list;
} _ColorGCCache;

/*===========================================================================*/
/* ϥå                                                                  */
/*===========================================================================*/

typedef struct _ColorGCHash * ColorGCHash;

typedef struct _ColorGCHash {
  int number; /* ϥåθĿ */
  int cache_flag; /* åλѡ̤ѤΥե饰 */
  ColorGCCache * color_gc_cache;
  ColorGCList * color_gc_list;
} _ColorGCHash;

/*===========================================================================*/
/* ̾RGBͤб뤿Υ饹                               */
/*===========================================================================*/

typedef struct _ColorName * ColorName;
typedef struct _ColorNameList * ColorNameList;

typedef struct _ColorName {
  char * name;
  XColor color;
} _ColorName;

typedef struct _ColorNameList {
  Disp disp;
  ObjList list; /* ColorName Υꥹ */
} _ColorNameList;

/*===========================================================================*/
/*  GC Υǡ١                                                    */
/* GC θˤϡϥåѤ롥                                         */
/*===========================================================================*/

typedef struct _ColorGCDatabase { /* GC δ */
  Disp disp;
  ColorGCHash hash; /* ϥå */

  ColorNameList color_name_list; /* ̾  RGBͤѴ */

  /* طʿ̾"none"ꤹȡοѤ롥 */
  ColorGC background_color_gc;

  /* 16ĴˤȤˤ16 */
  /* 10Ĵ20Ĵǽ             */
  int gradation;

} _ColorGCDatabase;

/*===========================================================================*/
/* GC 륯饹                                                       */
/* Ʊ GC ʣʤѤˡColorGCList  GC ơ              */
/* ׵ˤϡColorGCList  GC 餦褦ˤ롥                  */
/*===========================================================================*/

typedef struct _ColorGC {
  ColorGCInstance instance;
} _ColorGC;

#endif

/*****************************************************************************/
/* End of File                                                               */
/*****************************************************************************/