00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00031 #ifndef SCIMBRIDGEATTRIBUTE_H_
00032 #define SCIMBRIDGEATTRIBUTE_H_
00033
00034 #include "scim-bridge.h"
00035
00036 enum _scim_bridge_attribute_type_t
00037 {
00038 ATTRIBUTE_NONE,
00039 ATTRIBUTE_DECORATE,
00040 ATTRIBUTE_FOREGROUND,
00041 ATTRIBUTE_BACKGROUND
00042 };
00043
00047 typedef enum _scim_bridge_attribute_type_t scim_bridge_attribute_type_t;
00048
00052 typedef unsigned int scim_bridge_attribute_value_t;
00053
00057 typedef struct _ScimBridgeAttribute ScimBridgeAttribute;
00058
00062 static const scim_bridge_attribute_value_t SCIM_BRIDGE_ATTRIBUTE_DECORATE_NONE = 0x1000000;
00063
00067 static const scim_bridge_attribute_value_t SCIM_BRIDGE_ATTRIBUTE_DECORATE_UNDERLINE = 0x2000000;
00068
00072 static const scim_bridge_attribute_value_t SCIM_BRIDGE_ATTRIBUTE_DECORATE_HIGHLIGHT = 0x4000000;
00073
00077 static const scim_bridge_attribute_value_t SCIM_BRIDGE_ATTRIBUTE_DECORATE_REVERSE = 0x8000000;
00078
00079 #ifdef __cplusplus
00080 extern "C"
00081 {
00082 #endif
00083
00089 ScimBridgeAttribute *scim_bridge_alloc_attribute ();
00090
00097 void scim_bridge_free_attribute (ScimBridgeAttribute *attribute);
00098
00105 void scim_bridge_copy_attribute (ScimBridgeAttribute *dst, const ScimBridgeAttribute *src);
00106
00113 scim_bridge_attribute_type_t scim_bridge_attribute_get_type (const ScimBridgeAttribute *attribute);
00114
00120 void scim_bridge_attribute_set_type (ScimBridgeAttribute *attribute, scim_bridge_attribute_type_t type);
00121
00128 size_t scim_bridge_attribute_get_begin (const ScimBridgeAttribute *attribute);
00129
00136 void scim_bridge_attribute_set_begin (ScimBridgeAttribute *attribute, size_t begin);
00137
00144 size_t scim_bridge_attribute_get_end (const ScimBridgeAttribute *attribute);
00145
00152 void scim_bridge_attribute_set_end (ScimBridgeAttribute *attribute, size_t end);
00153
00160 scim_bridge_attribute_type_t scim_bridge_attribute_get_type (const ScimBridgeAttribute *attribute);
00161
00168 void scim_bridge_attribute_set_type (ScimBridgeAttribute *attribute, scim_bridge_attribute_type_t type);
00169
00178 scim_bridge_attribute_value_t scim_bridge_attribute_get_value (const ScimBridgeAttribute *attribute);
00179
00188 void scim_bridge_attribute_set_value (ScimBridgeAttribute *attribute, scim_bridge_attribute_value_t value);
00189
00200 void scim_bridge_attribute_set_color (ScimBridgeAttribute *attribute, unsigned int red, unsigned int green, unsigned int blue);
00201
00210 unsigned int scim_bridge_attribute_get_red (const ScimBridgeAttribute *attribute);
00211
00220 void scim_bridge_attribute_set_red (ScimBridgeAttribute *attribute, unsigned int red);
00221
00230 unsigned int scim_bridge_attribute_get_green (const ScimBridgeAttribute *attribute);
00231
00240 void scim_bridge_attribute_set_green (ScimBridgeAttribute *attribute, unsigned int green);
00241
00250 unsigned int scim_bridge_attribute_get_blue (const ScimBridgeAttribute *attribute);
00251
00260 void scim_bridge_attribute_set_blue (ScimBridgeAttribute *attribute, unsigned int blue);
00261
00262 #ifdef __cplusplus
00263 }
00264 #endif
00265 #endif