14 #ifndef T3_WIDGET_INTERNAL_H
15 #define T3_WIDGET_INTERNAL_H
17 #ifndef _T3_WIDGET_INTERNAL
18 #error This header file is for internal use _only_!!
22 #include <sigc++/sigc++.h>
23 #include <t3widget/key.h>
26 #include <sys/select.h>
29 #include <sys/types.h>
33 #include "widget_api.h"
38 #define _t3_widget_strdup strdup
40 T3_WIDGET_LOCAL
char *_t3_widget_strdup(
const char *str);
45 T3_WIDGET_LOCAL
extern init_parameters_t *init_params;
47 T3_WIDGET_LOCAL
void stop_clipboard(
void);
49 #ifdef _T3_WIDGET_DEBUG
50 #define ASSERT(_x) do { if (!(_x)) { \
51 fprintf(stderr, "%s:%d: libt3widget: Assertion failed: %s\n", __FILE__, __LINE__, #_x); abort(); \
58 #define ESCAPE_UNICODE (1<<29)
60 #define ESCAPE_REPLACEMENT (1<<30)
71 T3_WIDGET_LOCAL
int parse_escape(
const std::string &str,
const char **error_message,
size_t &read_position,
72 bool replacements =
false);
78 T3_WIDGET_LOCAL
bool parse_escapes(std::string &str,
const char **error_message,
bool replacements =
false);
81 class complex_error_t;
83 T3_WIDGET_LOCAL complex_error_t
init_keys(
const char *term,
bool separate_keypad);
97 extern char char_buffer[32];
98 extern int char_buffer_fill;
126 T3_WIDGET_LOCAL
int get_class(
const std::string *str,
int pos);