1/*
2 * Copyright 2008, Andrej Spielmann <andrej.spielmann@seh.ox.ac.uk>.
3 * All rights reserved. Distributed under the terms of the MIT License.
4 */
5#ifndef GLOBAL_SUBPIXEL_SETTINGS_H
6#define GLOBAL_SUBPIXEL_SETTINGS_H
7
8#include <SupportDefs.h>
9
10// TODO: these global settings need to be removed - once we have more than one
11//	user, we also must support more than one setting. That's why there is a
12//	DesktopSettings class in the first place...
13
14enum {
15	HINTING_MODE_OFF = 0,
16	HINTING_MODE_ON,
17	HINTING_MODE_MONOSPACED_ONLY
18};
19
20//#define AVERAGE_BASED_SUBPIXEL_FILTERING
21
22extern bool gSubpixelAntialiasing;
23extern uint8 gDefaultHintingMode;
24
25// The weight with which the average of the subpixels is applied to counter
26// color fringes (0 = full sharpness ... 255 = grayscale anti-aliasing)
27extern uint8 gSubpixelAverageWeight;
28
29// There are two types of LCD displays in general - the more common have
30// sub - pixels physically ordered as RGB within a pixel, but some are BGR.
31// Sub - pixel antialiasing optimised for one ordering obviously doesn't work
32// on the other.
33extern bool gSubpixelOrderingRGB;
34
35#endif // GLOBAL_SUBPIXEL_SETTINGS_H
36