Menu

[r3136]: / branches / 3.x / Src / FrPrefsBase.pas  Maximize  Restore  History

Download this file

131 lines (111 with data), 4.1 kB

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
{
* FrPrefsBase.pas
*
* Implements frame that forms an abstract base class for all frames displayed
* in preferences dialog box.
*
* $Rev$
* $Date$
*
* ***** BEGIN LICENSE BLOCK *****
*
* Version: MPL 1.1
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
*
* The Original Code is FrPrefsBase.pas
*
* The Initial Developer of the Original Code is Peter Johnson
* (http://www.delphidabbler.com/).
*
* Portions created by the Initial Developer are Copyright (C) 2006-2009 Peter
* Johnson. All Rights Reserved.
*
* Contributor(s)
* NONE
*
* ***** END LICENSE BLOCK *****
}
unit FrPrefsBase;
interface
uses
// Delphi
Forms,
// Project
UPreferences;
type
{
TPrefsFrameClass:
Class reference for preferences frames. All preferences frame must descend
from TPrefsBaseFrame.
}
TPrefsFrameClass = class of TPrefsBaseFrame;
{
TPrefsBaseFrame:
Frame that forms an abstract base class for all frames displayed in
preferences dialog box.
}
TPrefsBaseFrame = class(TFrame)
public
procedure SavePrefs(const Prefs: IPreferences); virtual;
{Saves information user entered in frame. By default the method simply
calls Deactivate. May be overridden to save any custom data that doesn't
use Prefs object.
@param Prefs [in] Object used to store information.
}
procedure LoadPrefs(const Prefs: IPreferences); virtual;
{Initialises controls. By default the method simply calls Activate. May be
overridden to load any custom data that doesn't use Prefs object.
@param Prefs [in] Object that provides info used to update controls.
}
procedure Activate(const Prefs: IPreferences); virtual; abstract;
{Called when page activated. Must update controls from preferences.
@param Prefs [in] Object that provides info used to update controls.
}
procedure Deactivate(const Prefs: IPreferences); virtual; abstract;
{Called when page is deactivated. Must store information entered by user.
@param Prefs [in] Object used to store information.
}
procedure ArrangeControls; virtual; abstract;
{Arranges controls on frame. Called after frame has been sized.
}
function DisplayName: string; virtual; abstract;
{Provides caption that is displayed in the tab sheet that contains this
frame when displayed in the preference dialog box.
@return Required display name.
}
class function Index: Byte; virtual; abstract;
{Provides an index number that determines the order in which the tabs
containing frames are displayed in the preferences dialog box. Gaps
between indexes should be left where possible to allow for insertion of
new entries at a later date.
@return Required index number.
}
end;
implementation
{$R *.dfm}
{ TPrefsBaseFrame }
procedure TPrefsBaseFrame.LoadPrefs(const Prefs: IPreferences);
{Initialises controls. By default the method simply calls Activate. May be
overridden to load any custom data that doesn't use Prefs object.
@param Prefs [in] Object that provides info used to update controls.
}
begin
Activate(Prefs);
end;
procedure TPrefsBaseFrame.SavePrefs(const Prefs: IPreferences);
{Saves information user entered in frame. By default the method simply calls
Deactivate. May be overridden to save any custom data that doesn't use Prefs
object.
@param Prefs [in] Object used to store information.
}
begin
Deactivate(Prefs);
end;
end.
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.