summaryrefslogtreecommitdiff
path: root/plugins/Pascal_Headers/m_fontservice.inc
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/Pascal_Headers/m_fontservice.inc')
-rw-r--r--plugins/Pascal_Headers/m_fontservice.inc258
1 files changed, 0 insertions, 258 deletions
diff --git a/plugins/Pascal_Headers/m_fontservice.inc b/plugins/Pascal_Headers/m_fontservice.inc
deleted file mode 100644
index f13173ac03..0000000000
--- a/plugins/Pascal_Headers/m_fontservice.inc
+++ /dev/null
@@ -1,258 +0,0 @@
-// Copyright Scott Ellis (mail@scottellis.com.au) 2005
-// This software is licenced under the GPL (General Public Licence)
-// available at http://www.gnu.org/copyleft/gpl.html
-{$IFNDEF FONT_SERVICE_API}
-{$DEFINE FONT_SERVICE_API}
-
-const
-// style flags
- DBFONTF_BOLD = 1;
- DBFONTF_ITALIC = 2;
- DBFONTF_UNDERLINE = 4;
- DBFONTF_STRIKEOUT = 8;
-// flags for compatibility
- FIDF_APPENDNAME = 1; // append 'Name' to the setting used to store
- // font face (as CLC settings require)
- FIDF_NOAS = 2; // disable the <prefix>As setting to prevent
- // 'same as' behaviour
- FIDF_SAVEACTUALHEIGHT = 4; // write the actual height of a test string to the db
- FIDF_SAVEPOINTSIZE = 8; // write the font point size to the db
-// additional flags
- FIDF_DEFAULTVALID = 32; // the default font settings are valid - else,
- // just use generic default
- FIDF_NEEDRESTART = 64; // setting changes will not take effect until
- // miranda is restarted
- FIDF_ALLOWREREGISTER = 128; // allow plugins to register this font again
- // (i.e. override already registered settings
- // such as flags)
- FIDF_ALLOWEFFECTS = 256; // allow setting of font effects
- // (i.e. underline and strikeout)
- FIDF_DISABLESTYLES = 512; // don't allow to select font attributes (bold/underline/italics)
- // FIDF_ALLOWEFFECTS has priority and will override this flag!
-
-const
-// font class
- FIDF_CLASSMASK = $70000000;
- FIDF_CLASSHEADER = $10000000;
- FIDF_CLASSGENERAL = $20000000;
- FIDF_CLASSSMALL = $30000000;
-
-type
-// settings to be used for the value of 'deffontsettings' in the FontID
-// structure below - i.e. defaults
- PFontSettings_tag = ^TFontSettings_tag;
- TFontSettings_tag = record
- colour : TCOLORREF;
- size : BYTE;
- style : BYTE; // see the DBFONTF_* flags above
- charset : BYTE;
- szFace : array[0..(LF_FACESIZE)-1] of AnsiChar;
- end;
- TFontSettings = TFontSettings_tag;
- PFontSettings = ^TFontSettings;
-
- PFontSettingsW_tag = ^TFontSettingsW_tag;
- TFontSettingsW_tag = record
- colour : TCOLORREF;
- size : BYTE;
- style : BYTE; // see the DBFONTF_* flags above
- charset : BYTE;
- szFace : array[0..(LF_FACESIZE)-1] of WideChar;
- end;
- TFontSettingsW = TFontSettingsW_tag;
- PFontSettingsW = ^TFontSettingsW;
-
-type
-// a font identifier structire - used for registering a font,
-// and getting one out again
- PFontID_tag = ^TFontID_tag;
- TFontID_tag = record
- cbSize : int;
- // [TRANSLATED-BY-CORE] group the font belongs to - this is the 'Font Group' list in the options page
- group : array[0..63] of AnsiChar;
- // [TRANSLATED-BY-CORE] the name of the font setting e.g. 'contacts' in the 'contact list' group
- name : array[0..63] of AnsiChar;
- // the 'module' in the database where the font data is stored
- dbSettingsGroup: array[0..31] of AnsiChar;
- // prepended to the settings used to store this font's data in the db
- prefix : array[0..31] of AnsiChar;
- // bitwise OR of the FIDF_* flags above
- flags : DWORD;
- deffontsettings: TFontSettings; // defaults, if flags & FIDF_DEFAULTVALID
- // controls the order in the font group in which the fonts are listed in the
- // UI (if order fields are equal, they will be ordered alphabetically by name)
- order : int;
- backgroundGroup:array [0..63] of AnsiChar;
- backgroundName: array [0..63] of AnsiChar;
- end;
- TFontID = TFontID_tag;
- PFontID = ^TFontID;
-
- PFontIDW_tag = ^TFontIDW_tag;
- TFontIDW_tag = record
- cbSize : int;
- // [TRANSLATED-BY-CORE] group the font belongs to - this is the 'Font Group' list in the options page
- group : array[0..63] of WideChar;
- // [TRANSLATED-BY-CORE] the name of the font setting e.g. 'contacts' in the 'contact list' group
- name : array[0..63] of WideChar;
- // the 'module' in the database where the font data is stored
- dbSettingsGroup: array[0..31] of AnsiChar;
- // prepended to the settings used to store this font's data in the db
- prefix : array[0..31] of AnsiChar;
- // bitwise OR of the FIDF_* flags above
- flags : DWORD;
- deffontsettings: TFontSettingsW; // defaults, if flags & FIDF_DEFAULTVALID
- // controls the order in the font group in which the fonts are listed in the
- // UI (if order fields are equal, they will be ordered alphabetically by name)
- order : int;
- backgroundGroup:array [0..63] of WideChar;
- backgroundName: array [0..63] of WideChar;
- end;
- TFontIDW = TFontIDW_tag;
- PFontIDW = ^TFontIDW;
-
-const
- {$IFNDEF WIN64}
- FontID_SIZEOF_V2 = 372;
- FontID_SIZEOF_V2A = 372;
- FontID_SIZEOF_V2U = 660;
- FontIDW_SIZEOF_V2 = 660;
- {$ELSE}
- FontID_SIZEOF_V2 = SizeOf(TFontID);
- FontID_SIZEOF_V2A = SizeOf(TFontID);
- FontID_SIZEOF_V2U = SizeOf(TFontIDW);
- FontIDW_SIZEOF_V2 = SizeOf(TFontIDW);
- {$ENDIF}
-
-const
- { register a font }
- { wparam = pointer to FontID structure}
- { lparam = hLangpack }
- MS_FONT_REGISTERA:PAnsiChar = 'Font/Register';
- MS_FONT_REGISTERW:PAnsiChar = 'Font/RegisterW';
-
- { get a font }
- { wparam = pointer to FontID structure (only name and group matter) }
- { lParam = pointer to LOGFONT structure }
- { returns the font's colour }
- MS_FONT_GETA:PAnsiChar = 'Font/Get';
- MS_FONT_GETW:PAnsiChar = 'Font/GetW';
-
- { fired when a user modifies font settings, so reget your fonts }
- ME_FONT_RELOAD:PAnsiChar = 'Font/Reload';
-
-type
- PColourID_tag = ^TColourID_tag;
- TColourID_tag = record
- cbSize : int;
- group : array[0..63] of AnsiChar;
- name : array[0..63] of AnsiChar;
- dbSettingsGroup : array[0..31] of AnsiChar;
- setting : array[0..31] of AnsiChar;
- flags : DWORD; // not used
- defcolour : TCOLORREF; // default value
- order : int;
- end;
- TColourID = TColourID_tag;
- PColourID = ^TColourID;
-
- PColourIDW_tag = ^TColourIDW_tag;
- TColourIDW_tag = record
- cbSize : int;
- group : array[0..63] of WideChar;
- name : array[0..63] of WideChar;
- dbSettingsGroup : array[0..31] of AnsiChar;
- setting : array[0..31] of AnsiChar;
- flags : DWORD; // not used
- defcolour : TCOLORREF; // default value
- order : int;
- end;
- TColourIDW = TColourIDW_tag;
- PColourIDW = ^TColourIDW;
-
-const
- { register a colour (this should be used for everything except actual text colour for registered fonts) }
- { [note - a colour with name 'Background' has special meaning and will be used as the background colour of }
- { the font list box in the options, for the given group] }
- { wparam = pointer to ColourID structure }
- { lparam = hLangpack }
- MS_COLOUR_REGISTERA:PAnsiChar = 'Colour/Register';
- MS_COLOUR_REGISTERW:PAnsiChar = 'Colour/RegisterW';
-
- { get a colour }
- { wparam = pointer to ColourID structure (only name and group matter) }
- { returns the colour (as COLORREF), or -1 if not found }
- MS_COLOUR_GETA:PAnsiChar = 'Colour/Get';
- MS_COLOUR_GETW:PAnsiChar = 'Colour/GetW';
-
- { fired when a user modifies font settings, so reget your fonts and colours }
- ME_COLOUR_RELOAD:PAnsiChar = 'Colour/Reload';
-
-var
- MS_FONT_REGISTER :PAnsiChar absolute MS_FONT_REGISTERW;
- MS_FONT_GET :PAnsiChar absolute MS_FONT_GETW;
- MS_COLOUR_REGISTER:PAnsiChar absolute MS_COLOUR_REGISTERW;
- MS_COLOUR_GET :PAnsiChar absolute MS_COLOUR_GETW;
-
-
-//////////////////////////////////////////////////////////////////////////
-//
-// EFFECTS
-//
-type
- FONTEFFECT_tag = record
- effectIndex :byte;
- baseColour :dword; // ARGB
- secondaryColour:dword; // ARGB
- end;
- TFONTEFFECT = FONTEFFECT_tag;
-
-type
- EffectID_tag = record
- cbSize :int;
- group :array [0..63] of AnsiChar;
- name :array [0..63] of AnsiChar;
- dbSettingsGroup:array [0..31] of AnsiChar;
- setting :array [0..31] of AnsiChar;
- flags :dword;
- defeffect :TFONTEFFECT;
- order :int;
- value :TFONTEFFECT;
- end;
- PEffectID = ^TEffectID;
- TEffectID = EffectID_tag;
-
-type
- EffectIDW_tag = record
- cbSize :int;
- group :array [0..63] of WideChar;
- name :array [0..63] of WideChar;
- dbSettingsGroup:array [0..31] of AnsiChar;
- setting :array [0..31] of AnsiChar;
- flags :dword;
- defeffect :TFONTEFFECT;
- order :int;
- value :TFONTEFFECT;
- end;
- PEffectIDW = ^TEffectIDW;
- TEffectIDW = EffectIDW_tag;
-
-const
-// register an effect
-// wparam = (EffectID *)&effect_id
-// lparam = hLangpack
- MS_EFFECT_REGISTER :pAnsiChar = 'Effect/Register';
- MS_EFFECT_REGISTERW:pAnsiChar = 'Effect/RegisterW';
-
-// get a effect
-// wparam = (EffectID *)&effect_id (only name and group matter)
-// lparam = (FONTEFFECT *)&effect
-// rerturns 0, or -1 if not found
- MS_EFFECT_GET :pAnsiChar = 'Effect/Get';
- MS_EFFECT_GETW:pAnsiChar = 'Effect/GetW';
-
-// fired when a user modifies font settings, so reget your fonts and colours
-// wparam = lparam = 0
- ME_EFFECT_RELOAD:pAnsiChar = 'Effect/Reload';
-
-{$ENDIF}