summaryrefslogtreecommitdiff
path: root/docs/xml
diff options
context:
space:
mode:
Diffstat (limited to 'docs/xml')
-rw-r--r--docs/xml/corelib/fpg_base.xml273
-rw-r--r--docs/xml/corelib/fpg_main.xml39
2 files changed, 188 insertions, 124 deletions
diff --git a/docs/xml/corelib/fpg_base.xml b/docs/xml/corelib/fpg_base.xml
index 66c5c4e2..5fa891ba 100644
--- a/docs/xml/corelib/fpg_base.xml
+++ b/docs/xml/corelib/fpg_base.xml
@@ -1,28 +1,28 @@
<?xml version="1.0"?>
<fpdoc-descriptions>
<package name="CoreLib">
- <!--
- ====================================================================
- gfxbase
- ====================================================================
+ <!--
+ ====================================================================
+ gfxbase
+ ====================================================================
-->
<module name="fpg_base">
<short>The base unit and starting point of fpGUI</short>
<descr>
- <p>This unit contains all the abstract classes for the CoreLib code
-of fpGUI. It also defines many types and constants used throughout the toolkit.
+ <p>This unit contains all the abstract classes for the CoreLib code
+of fpGUI. It also defines many types and constants used throughout the toolkit.
</p>
- <p>When implementing support for a completely new windowing system
-(eg: Carbon used in Mac OS-X) you would implement all the abstract methods
-defined in this unit.
+ <p>When implementing support for a completely new windowing system
+(eg: Carbon used in Mac OS-X) you would implement all the abstract methods
+defined in this unit.
</p>
</descr>
<!-- alias type Visibility: default -->
<element name="TfpgCoord">
<short>A custom type used to represent X and Y coordinates.</short>
- <descr>Internally TfpgCoord is actually a Integer type. We created a custom
-alias type for use in fpGUI in the event that we might want to change the
-underlying type in the future. Example to floating points.
+ <descr>Internally TfpgCoord is actually a Integer type. We created a custom
+alias type for use in fpGUI in the event that we might want to change the
+underlying type in the future. Example to floating points.
</descr>
<seealso/>
</element>
@@ -30,15 +30,15 @@ underlying type in the future. Example to floating points.
<element name="TfpgColor">
<short>Represents a color in integer format.</short>
<descr>
- <p>TfpgColor is always in RRGGBB (Red, Green, Blue) format, no matter the
-operating system.
+ <p>TfpgColor is always in RRGGBB (Red, Green, Blue) format, no matter the
+operating system.
</p>
- <p>The <var>gfxbase</var> unit also contains definitions of many useful color
-constants. It defines the standard predefined Delphi colors (like clRed,
-clMagenta etc.), the 140 websafe colors using the defacto standard names as
-used by Netscape and Internet Explorer web browsers. As well as some internal
-color constants used by many GUI components (like clText, clWindowBackground
-etc.).
+ <p>The <var>gfxbase</var> unit also contains definitions of many useful color
+constants. It defines the standard predefined Delphi colors (like clRed,
+clMagenta etc.), the 140 websafe colors using the defacto standard names as
+used by Netscape and Internet Explorer web browsers. As well as some internal
+color constants used by many GUI components (like clText, clWindowBackground
+etc.).
</p>
</descr>
<seealso/>
@@ -46,7 +46,7 @@ etc.).
<!-- record type Visibility: default -->
<element name="TRGBTriple">
<short>A record structure holding the RGBA values of a color.</short>
- <descr/>
+ <descr>This is now marked as "deprecated". Please use TFPColor instead.</descr>
<seealso/>
</element>
<!-- variable Visibility: default -->
@@ -81,7 +81,7 @@ etc.).
</element>
<!-- enumeration value Visibility: default -->
<element name="TWindowType.wtChild">
- <short>The window being created is a child on another window. This normally
+ <short>The window being created is a child on another window. This normally
means no titlebar or window borders are going to be created.</short>
</element>
<!-- enumeration value Visibility: default -->
@@ -111,12 +111,12 @@ means no titlebar or window borders are going to be created.</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TWindowAttribute.waAutoPos">
- <short>If this attribute is set, the underlying window manager will decide where
+ <short>If this attribute is set, the underlying window manager will decide where
the window will be placed on the screen it it becomes visible for the first time.</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TWindowAttribute.waScreenCenterPos">
- <short>If this attribute is set, the window will be centred on the screen when
+ <short>If this attribute is set, the window will be centred on the screen when
it is shown for the first time.</short>
</element>
<!-- set type Visibility: default -->
@@ -194,6 +194,22 @@ it is shown for the first time.</short>
<short>Defines that the gradient must be painted horizontally.</short>
</element>
<!-- enumeration type Visibility: default -->
+ <element name="TFileEntryType">
+ <short>Represents the type of entry found on the filesystem.</short>
+ <descr/>
+ <seealso>
+ <link id="TFileEntry"/>
+ </seealso>
+ </element>
+ <!-- enumeration value Visibility: default -->
+ <element name="TFileEntryType.etFile">
+ <short>Denotes a File type</short>
+ </element>
+ <!-- enumeration value Visibility: default -->
+ <element name="TFileEntryType.etDir">
+ <short>Denotes a Directory type</short>
+ </element>
+ <!-- enumeration type Visibility: default -->
<element name="TClipboardKeyType">
<short>Represents the clipboard function being triggered by some keyboard key combination.</short>
<descr/>
@@ -201,19 +217,19 @@ it is shown for the first time.</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TClipboardKeyType.ckNone">
- <short/>
+ <short>No clipboard action detected</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TClipboardKeyType.ckCopy">
- <short/>
+ <short>Copy to clipboard action detected</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TClipboardKeyType.ckPaste">
- <short/>
+ <short>Paste to clipboard action detected</short>
</element>
<!-- enumeration value Visibility: default -->
<element name="TClipboardKeyType.ckCut">
- <short/>
+ <short>Cut to clipboard action detected</short>
</element>
<!-- constant Visibility: default -->
<element name="MOUSE_LEFT">
@@ -2679,67 +2695,67 @@ it is shown for the first time.</short>
<element name="TfpgRect">
<short>A graphical (pixel based) rectangle structure used throughout fpGUI.</short>
<descr>
- <p>Note that this structure is not a class, so static allocations are
-allowed. This makes it much easier to use in Widgets and in fpGUI internal
+ <p>Note that this structure is not a class, so static allocations are
+allowed. This makes it much easier to use in Widgets and in fpGUI internal
messages.</p>
- <p>Think of the pixel screen/grid like the grid of a spreadsheet (or as a magnified look of the top corner of your screen).
+ <p>Think of the pixel screen/grid like the grid of a spreadsheet (or as a magnified look of the top corner of your screen).
</p>
- <pre>.
- 0 1
- +---+---+---
-0 | x | |
- +---+---+---
-1 | | |
- +---+---+---
-2 | | |
- +---+---+---
- | | |
+ <pre>.
+ 0 1
+ +---+---+---
+0 | x | |
+ +---+---+---
+1 | | |
+ +---+---+---
+2 | | |
+ +---+---+---
+ | | |
</pre>
- <p>x is at (0,0). A pixel is always 1x1, you don't get smaller (we are not using sub-pixels like on LCD screens, because they don't apply to all screens).
+ <p>x is at (0,0). A pixel is always 1x1, you don't get smaller (we are not using sub-pixels like on LCD screens, because they don't apply to all screens).
</p>
- <p>So with that example, Width = 1 pixel and Height = 1 pixel. In the case of
-Classes.Bounds() the Right and Bottom values are (1,1) which looking at the
-above image will be wrong, the pixel only covers one block, so in a screen/pixel
-environment, Right, Bottom is also (0,0), the same as Top/Left. This is what
-TfpgRect.Right and TfpgRect.Bottom will report.
+ <p>So with that example, Width = 1 pixel and Height = 1 pixel. In the case of
+Classes.Bounds() the Right and Bottom values are (1,1) which looking at the
+above image will be wrong, the pixel only covers one block, so in a screen/pixel
+environment, Right, Bottom is also (0,0), the same as Top/Left. This is what
+TfpgRect.Right and TfpgRect.Bottom will report.
</p>
- <pre>.
- 0 1
- +---+---+---
-0 | x | x |
- +---+---+---
-1 | x | x |
- +---+---+---
-2 | | |
- +---+---+---
- | | |
+ <pre>.
+ 0 1
+ +---+---+---
+0 | x | x |
+ +---+---+---
+1 | x | x |
+ +---+---+---
+2 | | |
+ +---+---+---
+ | | |
</pre>
- <p>In this example we have a rectangle. Top/Left = (0,0) and Bottom/Right = (1,1).
-This means Width = 2 pixels and Height = 2 pixels. Clearly visible in the image
-above.
+ <p>In this example we have a rectangle. Top/Left = (0,0) and Bottom/Right = (1,1).
+This means Width = 2 pixels and Height = 2 pixels. Clearly visible in the image
+above.
</p>
- <p>But if we call Classes.Bounds(0,0,2,2) it reports Bottom/Right as (2,2) which
-is wrong (again looking at the image above as reference). This is my point.
-Bounds() cannot be used in this case in a graphical environment.
+ <p>But if we call Classes.Bounds(0,0,2,2) it reports Bottom/Right as (2,2) which
+is wrong (again looking at the image above as reference). This is my point.
+Bounds() cannot be used in this case in a graphical environment.
</p>
- <p>The reason I don't use a grid layout as shown below, is
-because if the mouse is over the rectangle containing x, the OS (graphics system) reports its
-position as (0,0). You don't have to have the mouse pointer over the intersecting
-lines at (0,0) as indicated in the image below. The whole square containing
-the x is referenced as (0,0), hence the grid layout as show in the images above,
-and what fpGUI uses. The same grid layout as used in TfpgStringGrid or any
-Spreadsheet program etc.
+ <p>The reason I don't use a grid layout as shown below, is
+because if the mouse is over the rectangle containing x, the OS (graphics system) reports its
+position as (0,0). You don't have to have the mouse pointer over the intersecting
+lines at (0,0) as indicated in the image below. The whole square containing
+the x is referenced as (0,0), hence the grid layout as show in the images above,
+and what fpGUI uses. The same grid layout as used in TfpgStringGrid or any
+Spreadsheet program etc.
</p>
- <pre>.
- 0 1 2
-0 +---+---+---
- | x | |
-1 +---+---+---
- | | |
-2 +---+---+---
- | | |
-3 +---+---+---
- | | |
+ <pre>.
+ 0 1 2
+0 +---+---+---
+ | x | |
+1 +---+---+---
+ | | |
+2 +---+---+---
+ | | |
+3 +---+---+---
+ | | |
</pre>
</descr>
<errors/>
@@ -2985,9 +3001,9 @@ Spreadsheet program etc.
<!-- object Visibility: default -->
<element name="TfpgWindowBase">
<short>Abstract class use for representing a Window or Widget</short>
- <descr>fpGUI is a <i>Windowed</i> toolkit. By that we mean that every component
-or widget has a window handle. Widgets are essentially embedded windows without
-titlebars or borders inside a main parent window.
+ <descr>fpGUI is a <i>Windowed</i> toolkit. By that we mean that every component
+or widget has a window handle. Widgets are essentially embedded windows without
+titlebars or borders inside a main parent window.
</descr>
<errors/>
<seealso/>
@@ -3157,7 +3173,7 @@ titlebars or borders inside a main parent window.
</element>
<!-- procedure Visibility: public -->
<element name="TfpgImageBase.Invert">
- <short/>
+ <short>Inverts the Image</short>
<descr/>
<errors/>
<seealso/>
@@ -3171,7 +3187,7 @@ titlebars or borders inside a main parent window.
</element>
<!-- procedure Visibility: public -->
<element name="TfpgImageBase.AllocateImage">
- <short/>
+ <short>Allocates OS resources for the Image</short>
<descr/>
<errors/>
<seealso/>
@@ -3190,14 +3206,14 @@ titlebars or borders inside a main parent window.
</element>
<!-- procedure Visibility: public -->
<element name="TfpgImageBase.AllocateMask">
- <short/>
+ <short>Allocates OS resources for the Image Mask</short>
<descr/>
<errors/>
<seealso/>
</element>
<!-- procedure Visibility: public -->
<element name="TfpgImageBase.CreateMaskFromSample">
- <short/>
+ <short>Creates a mask based on the sample point presented by X and Y parameters</short>
<descr/>
<errors/>
<seealso/>
@@ -3212,7 +3228,7 @@ titlebars or borders inside a main parent window.
</element>
<!-- procedure Visibility: public -->
<element name="TfpgImageBase.UpdateImage">
- <short/>
+ <short>Updates the internal image resources and OS resources from image data</short>
<descr/>
<errors/>
<seealso/>
@@ -3243,19 +3259,19 @@ titlebars or borders inside a main parent window.
</element>
<!-- property Visibility: public -->
<element name="TfpgImageBase.Width">
- <short/>
+ <short>Width of the image</short>
<descr/>
<seealso/>
</element>
<!-- property Visibility: public -->
<element name="TfpgImageBase.Height">
- <short/>
+ <short>Height of the image</short>
<descr/>
<seealso/>
</element>
<!-- property Visibility: public -->
<element name="TfpgImageBase.ColorDepth">
- <short/>
+ <short>Color depth of the image. Currently 24/32-bit is all that is supported.</short>
<descr/>
<seealso/>
</element>
@@ -3267,7 +3283,7 @@ titlebars or borders inside a main parent window.
</element>
<!-- property Visibility: public -->
<element name="TfpgImageBase.Colors">
- <short/>
+ <short>Array property to access a specific color of the image based on X and Y co-ordinates</short>
<descr/>
<seealso/>
</element>
@@ -3491,9 +3507,9 @@ titlebars or borders inside a main parent window.
<!-- object Visibility: default -->
<element name="TfpgBaseInterpolation">
<short>A abstract class representing a base Interpolation filter.</short>
- <descr>This is used as the base class to implement Interpolation filters like
-Gaussian, Sinc etc... These decendant filters are used in the
-<link id="TfpgCanvasBase.StretchDraw">Canvas.StretchDraw</link> function.
+ <descr>This is used as the base class to implement Interpolation filters like
+Gaussian, Sinc etc... These decendant filters are used in the
+<link id="TfpgCanvasBase.StretchDraw">Canvas.StretchDraw</link> function.
</descr>
<errors/>
<seealso>
@@ -5273,8 +5289,8 @@ Gaussian, Sinc etc... These decendant filters are used in the
<!-- function Visibility: default -->
<element name="KeycodeToText">
<short>Returns the text representation of a keycode.</short>
- <descr>This is mainly used for debugging, but could also be used for Menu Item keyboard
-shortcuts etc.
+ <descr>This is mainly used for debugging, but could also be used for Menu Item keyboard
+shortcuts etc.
</descr>
<errors/>
<seealso/>
@@ -5294,8 +5310,8 @@ shortcuts etc.
<!-- function Visibility: default -->
<element name="CheckClipboardKey">
<short>Detects if the pressed keys represent a Clipboard key shortcut</short>
- <descr>Detects if the pressed keys represent a Clipboard key shortcut. If it does, it
-returns the correct enum type detected.
+ <descr>Detects if the pressed keys represent a Clipboard key shortcut. If it does, it
+returns the correct enum type detected.
</descr>
<errors/>
<seealso/>
@@ -5315,7 +5331,7 @@ returns the correct enum type detected.
<!-- function Visibility: default -->
<element name="fpgColorToRGBTriple">
<short>Converts the TfpgColor to TRGBTriple type</short>
- <descr>This function converts the given TfpgColor into a TRGBTriple type.
+ <descr>This function converts the given TfpgColor into a TRGBTriple type.
</descr>
<errors/>
<seealso>
@@ -5333,7 +5349,7 @@ returns the correct enum type detected.
<!-- function Visibility: default -->
<element name="RGBTripleTofpgColor">
<short>Converts the TRGBTriple to TfpgColor type</short>
- <descr>This function converts the given TRGBTriple into a TfpgColor type.
+ <descr>This function converts the given TRGBTriple into a TfpgColor type.
</descr>
<errors/>
<seealso>
@@ -5411,8 +5427,8 @@ returns the correct enum type detected.
<!-- function Visibility: default -->
<element name="fpgGetAvgColor">
<short>Calculates the average color using the two supplied</short>
- <descr>This function calculates and returns the average color by using AColor1
-and AColor2. The Alpha value also gets taken into account.
+ <descr>This function calculates and returns the average color by using AColor1
+and AColor2. The Alpha value also gets taken into account.
</descr>
<errors/>
<seealso/>
@@ -5432,8 +5448,8 @@ and AColor2. The Alpha value also gets taken into account.
<!-- function Visibility: default -->
<element name="PtInRect">
<short>Returns true if APoint is inside ARect rectangle</short>
- <descr>This function is used to detect if the point APoint is inside the given
-rectangle ARect. If it is, the function returns True, otherwise False.
+ <descr>This function is used to detect if the point APoint is inside the given
+rectangle ARect. If it is, the function returns True, otherwise False.
</descr>
<errors/>
<seealso/>
@@ -5453,8 +5469,8 @@ rectangle ARect. If it is, the function returns True, otherwise False.
<!-- procedure Visibility: default -->
<element name="SortRect">
<short>Fixes the Top, Bottom and Left, Right to always represent a valid rectangle</short>
- <descr>This function fixes a rectangle so that the Left point is always smaller than the
-Right. And the Top is always smaller than the Bottom.
+ <descr>This function fixes a rectangle so that the Left point is always smaller than the
+Right. And the Top is always smaller than the Bottom.
</descr>
<errors/>
<seealso/>
@@ -5483,14 +5499,14 @@ Right. And the Top is always smaller than the Bottom.
<short>Draws a line inside a clip rectangle</short>
<descr>
<p>
- <printshort id="TfpgCanvasBase.DrawLineClipped"/>. This procedure clips a line to the AClipRect boundaries and
- then calls the DrawLine procedure with the clipped coordinates. If the line
- lies completely outside of the clip boundary, then the Line routine is not
- called. This procedure uses the well known Cohen-Sutherland line clipping
- algorithm to clip each coordinate.
+ <printshort id="TfpgCanvasBase.DrawLineClipped"/>. This procedure clips a line to the AClipRect boundaries and
+ then calls the DrawLine procedure with the clipped coordinates. If the line
+ lies completely outside of the clip boundary, then the Line routine is not
+ called. This procedure uses the well known Cohen-Sutherland line clipping
+ algorithm to clip each coordinate.
</p>
- <p>Use this if you did not what to change the Canvas.ClipRegion for some reason.
- For a detailed explanation see: http://www.nondot.org/~sabre/graphpro/line6.html
+ <p>Use this if you did not what to change the Canvas.ClipRegion for some reason.
+ For a detailed explanation see: http://www.nondot.org/~sabre/graphpro/line6.html
</p>
</descr>
</element>
@@ -5498,7 +5514,34 @@ Right. And the Top is always smaller than the Bottom.
<short>Clips the line based on AClipRect boundaries.</short>
<descr>This does not do any drawing, in only clips the line coordinates. This method is used internally by <link id="TfpgCanvasBase.DrawLineClipped"/>.</descr>
</element>
+ <element name="TFileEntry">
+ <short>A simple data object representing a file</short>
+ <descr>
+ <printshort id="TFileEntry"/>. Some properties are OS dependant.</descr>
+ </element>
+ <element name="TFileEntry.Name">
+ <short>Name of a file</short>
+ </element>
+ <element name="TFileEntry.Extension">
+ <short>The extension of a file</short>
+ </element>
+ <element name="TFileEntry.Size">
+ <short>Size of a file in bytes</short>
+ </element>
+ <element name="TFileEntry.IsLink">
+ <short>Is this item a symbolic link (on unix-type OSes)</short>
+ </element>
+ <element name="TFileEntry.LinkTarget">
+ <short>If it is a symbolic link, LinkTarget is what it points too</short>
+ </element>
+ <element name="TFileEntry.ModTime">
+ <short>Last modified timestamp</short>
+ </element>
+ <element name="TFPColor">
+ <short>A record structure holding the RGBA values of a color.</short>
+ <descr>This is the same declaration as the one found in FPImage (include with Free Pascal Compiler). In future when FPImage is integrated with fpGUI, I will remove this declaration.</descr>
+ </element>
</module>
<!-- gfxbase -->
</package>
-</fpdoc-descriptions>
+</fpdoc-descriptions> \ No newline at end of file
diff --git a/docs/xml/corelib/fpg_main.xml b/docs/xml/corelib/fpg_main.xml
index 73728f15..b40a2867 100644
--- a/docs/xml/corelib/fpg_main.xml
+++ b/docs/xml/corelib/fpg_main.xml
@@ -1,19 +1,22 @@
<?xml version="1.0"?>
<fpdoc-descriptions>
<package name="CoreLib">
-
<module name="fpg_main">
- <short/>
- <descr/>
-
+ <short>The main unit that ties everything together from CoreLib</short>
+ <descr>
+ <p>
+ <printshort id="fpg_main"/>. This unit contain the higher level classes that the end-user will use to build applications.
+</p>
+ <p>This unit also contains the global objects instances used to start an application, or helper functions used through a a fpGUI based application. eg: <link id="fpgApplication"/>, <link id="fpgClipboard"/>.</p>
+ </descr>
<!-- procedure Visibility: default -->
<element name="fpgPostMessage">
<short>Posts a message to the event queue</short>
<descr>fpgPostMessage posts a message to the event queue, but doesn't wait for it to compelete. It returns immediately.</descr>
<errors/>
<seealso>
- <link id="fpgSendMessage"/>
- </seealso>
+ <link id="fpgSendMessage"/>
+ </seealso>
</element>
<!-- procedure Visibility: default -->
<element name="fpgSendMessage">
@@ -21,10 +24,28 @@
<descr>fpgSendMessage sends a message to the event queue and waits for it to complete before it returns.</descr>
<errors/>
<seealso>
- <link id="fpgPostMessage"/>
- </seealso>
+ <link id="fpgPostMessage"/>
+ </seealso>
+ </element>
+ <element name="fpgColorToRGB">
+ <short>Convert a color to RGB values of that color</short>
+ <descr>
+ <printshort id="fpgColorToRGB"/>. Not all <link id="fpg_base.TfpgColor">TfpgColor</link> values are in RGB format. For example you are "named" colors too. eg: clWindowBackground</descr>
+ </element>
+ <element name="fpgGetNamedColor">
+ <short>Returns a "named" TfpgColor based on a RGB color</short>
+ </element>
+ <element name="fpgSetNamedColor">
+ <short>Define a new "named" color</short>
+ </element>
+ <element name="fpgGetNamedFontList">
+ <short>Return a TStringList of "named" fonts</short>
+ </element>
+ <element name="fpgSetNamedFont">
+ <short>Defined a new "named" font</short>
+ <descr>
+ <printshort id="fpgSetNamedFont"/>. Because fpGUI is a cross-platform toolkit, the same fonts might not be available on all systems. For this reason fpGUI supports "named" or "alias names" for fonts. You can specify a font description, and then give that font description a name. Then any component that has a FontDesc property you can pass the full font description, or the "named" font name. An example of a named font is '#Edit1' which is the default font used for <link id="fpg_edit.TfpgEdit">TfpgEdit</link>.</descr>
</element>
-
</module>
<!-- fpg_main -->
</package>