#ifndef NEDIT_HIGHLIGHT_H_INCLUDED
#define NEDIT_HIGHLIGHT_H_INCLUDED
#include "nedit.h"
#include <X11/Intrinsic.h>
#define PARSE_SUBPATS_FROM_START 1
#define DEFER_PARSING 2
#define COLOR_ONLY 4
#define ASCII_A ((
char)
65)
typedef struct {
char *name;
char *startRE;
char *endRE;
char *errorRE;
char *style;
char *subPatternOf;
int flags;
} highlightPattern;
typedef struct {
char *languageMode;
int lineContext;
int charContext;
int nPatterns;
highlightPattern *patterns;
} patternSet;
void SyntaxHighlightModifyCB(
int pos,
int nInserted,
int nDeleted,
int nRestyled,
const char *deletedText,
void *cbArg);
void StartHighlighting(WindowInfo *window,
int warn);
void StopHighlighting(WindowInfo *window);
void AttachHighlightToWidget(Widget widget, WindowInfo *window);
void FreeHighlightingData(WindowInfo *window);
void RemoveWidgetHighlight(Widget widget);
void UpdateHighlightStyles(WindowInfo *window, Boolean redisplay);
int TestHighlightPatterns(patternSet *patSet);
Pixel AllocateColor(Widget w,
const char *colorName);
void SetParseColorError(
int value);
XftColor ParseXftColor(Display *display, Colormap colormap, Pixel foreground,
int depth,
const char *colorName);
Pixel AllocColor(Widget w,
const char *colorName,
int *r,
int *g,
int *b);
XftColor AllocXftColor(Widget w,
const char *colorName);
void* GetHighlightInfo(WindowInfo *window,
int pos);
highlightPattern *FindPatternOfWindow(WindowInfo *window,
char *name);
int HighlightCodeOfPos(WindowInfo *window,
int pos);
int HighlightLengthOfCodeFromPos(WindowInfo *window,
int pos,
int *checkCode);
int StyleLengthOfCodeFromPos(WindowInfo *window,
int pos,
const char **checkStyleName);
char *HighlightNameOfCode(WindowInfo *window,
int hCode);
char *HighlightStyleOfCode(WindowInfo *window,
int hCode);
XftColor HighlightColorValueOfCode(WindowInfo *window,
int hCode,
int *r,
int *g,
int *b);
XftColor GetHighlightBGColorOfCode(WindowInfo *window,
int hCode,
int *r,
int *g,
int *b);
XftColor LightenColor(XftColor color);
#endif