Make Exported just be SquirrelJMEVendorApi.
[SquirrelJME.git] / modules / cldc-compact / src / main / java / cc / squirreljme / jvm / mle / constants / PencilCapabilities.java
blobce133328acc42ccfef25df67d3cb278c92a3895e
1 // -*- Mode: Java; indent-tabs-mode: t; tab-width: 4 -*-
2 // ---------------------------------------------------------------------------
3 // SquirrelJME
4 // Copyright (C) Stephanie Gawroriski <xer@multiphasicapps.net>
5 // ---------------------------------------------------------------------------
6 // SquirrelJME is under the GNU General Public License v3+, or later.
7 // See license.mkd for licensing and copyright information.
8 // ---------------------------------------------------------------------------
10 package cc.squirreljme.jvm.mle.constants;
12 /**
13 * Capabilities for the hardware accelerated pencil graphics drawing.
15 * This interface contains bit-fields.
17 * @since 2020/09/25
19 public interface PencilCapabilities
21 /**
22 * Minimum capabilities required by the implementation, this includes all
23 * of that state operations such as: transforms, clips, colors, styles,
24 * and otherwise.
26 * Capable of the following:
27 * - {@code clipRect}.
28 * - {@code getAlpha}.
29 * - {@code getAlphaColor}.
30 * - {@code getBlendingMode}.
31 * - {@code getBlueComponent}.
32 * - {@code getClipHeight}.
33 * - {@code getClipWidth}.
34 * - {@code getClipX}.
35 * - {@code getClipY}.
36 * - {@code getColor}.
37 * - {@code getDisplayColor}.
38 * - {@code getGrayScale}.
39 * - {@code getGreenComponent}.
40 * - {@code getRedComponent}.
41 * - {@code getStrokeStyle}.
42 * - {@code getTranslateX}.
43 * - {@code getTranslateY}.
44 * - {@code setAlpha}.
45 * - {@code setAlphaColor}.
46 * - {@code setBlendingMode}.
47 * - {@code setClip}.
48 * - {@code setColor}.
49 * - {@code setGrayScale}.
50 * - {@code setStrokeStyle}.
51 * - {@code translate}.
53 byte MINIMUM =
56 /**
57 * Capable of the following:
58 * - {@code copyArea}.
60 byte COPY_AREA =
63 /**
64 * Capable of the following:
65 * - {@code drawARGB16}.
66 * - {@code drawRGB16}.
68 byte DRAW_XRGB16_SIMPLE =
71 /**
72 * Reserved.
74 @Deprecated
75 byte RESERVED_8 =
78 /**
79 * Reserved.
81 @Deprecated
82 byte RESERVED_16 =
83 16;
85 /**
86 * Capable of the following:
87 * - {@code drawRGB}.
88 * - {@code drawImage}.
89 * - {@code drawRegion}.
91 byte DRAW_XRGB32_REGION =
92 32;
94 /**
95 * Capable of the following:
96 * - {@code drawArc}.
98 byte DRAW_ARC =
99 64;
102 * Capable of the following:
103 * - {@code drawLine}.
105 short DRAW_LINE =
106 128;
109 * Capable of the following:
110 * - {@code drawRect}.
112 short DRAW_RECT =
113 256;
116 * Capable of the following:
117 * - {@code drawRoundRect}.
119 short DRAW_ROUND_RECT =
120 512;
123 * Capable of the following:
124 * - {@code fillArc}.
126 short FILL_ARC =
127 1024;
130 * Capable of the following:
131 * - {@code fillRect}.
133 short FILL_RECT =
134 2048;
137 * Capable of the following:
138 * - {@code fillRoundRect}.
140 short FILL_ROUND_RECT =
141 4096;
144 * Capable of the following:
145 * - {@code fillTriangle}.
147 short FILL_TRIANGLE =
148 8192;
151 * Capable of the following:
152 * - {@code drawChar}.
153 * - {@code drawChars}.
154 * - {@code drawString}.
155 * - {@code drawSubstring}.
156 * - {@code drawText}.
157 * - {@code getFont}.
158 * - {@code setFont}.
160 short FONT_TEXT =
161 16384;