Files
amath/doc/man/man3/PreferencesBase.3
T
2017-01-24 22:03:15 +01:00

281 lines
6.3 KiB
Plaintext

.TH "PreferencesBase" 3 "Tue Jan 24 2017" "Version 1.6.2" "amath" \" -*- nroff -*-
.ad l
.nh
.SH NAME
PreferencesBase \-
.SH SYNOPSIS
.br
.PP
.PP
\fC#include <preferences\&.h>\fP
.PP
Inherited by \fBAmigaPreferences\fP, and \fBStandardPreferences\fP\&.
.SS "Public Member Functions"
.in +1c
.ti -1c
.RI "\fBPreferencesBase\fP ()"
.br
.ti -1c
.RI "virtual \fB~PreferencesBase\fP ()"
.br
.ti -1c
.RI "char * \fBGetDescription\fP ()"
.br
.ti -1c
.RI "char * \fBGetPrompt\fP ()"
.br
.ti -1c
.RI "void \fBSetPrompt\fP (const char *\fBprompt\fP)"
.br
.ti -1c
.RI "int \fBGetDigits\fP ()"
.br
.ti -1c
.RI "void \fBSetDigits\fP (int \fBdigits\fP)"
.br
.ti -1c
.RI "void \fBSetDefaults\fP ()"
.br
.ti -1c
.RI "virtual \fBbool\fP \fBLoad\fP ()=0"
.br
.ti -1c
.RI "virtual \fBbool\fP \fBKeep\fP ()=0"
.br
.ti -1c
.RI "virtual \fBbool\fP \fBSave\fP ()=0"
.br
.in -1c
.SS "Protected Member Functions"
.in +1c
.ti -1c
.RI "void \fBSetPrefs\fP (char *prefs)"
.br
.in -1c
.SS "Private Attributes"
.in +1c
.ti -1c
.RI "\fBCharBuffer\fP * \fBbuf\fP"
.br
.ti -1c
.RI "char * \fBprompt\fP"
.br
.ti -1c
.RI "int \fBdigits\fP"
.br
.in -1c
.SH "Detailed Description"
.PP
Definition at line 32 of file preferences\&.h\&.
.SH "Constructor & Destructor Documentation"
.PP
.SS "PreferencesBase::PreferencesBase ()"
.PP
Definition at line 37 of file preferences\&.cpp\&.
.PP
References buf, CharBuffer::CharBuffer(), and SetDefaults()\&.
.PP
.nf
38 {
39 buf = new CharBuffer();
40 SetDefaults();
41 }
.fi
.SS "PreferencesBase::~PreferencesBase ()\fC [virtual]\fP"
.PP
Definition at line 43 of file preferences\&.cpp\&.
.PP
References buf, and prompt\&.
.PP
.nf
44 {
45 delete buf;
46 delete prompt;
47 }
.fi
.SH "Member Function Documentation"
.PP
.SS "char * PreferencesBase::GetDescription ()"
.PP
Definition at line 55 of file preferences\&.cpp\&.
.PP
References CharBuffer::Append(), buf, DecimalSystem::DecimalSystem(), CharBuffer::Empty(), CharBuffer::EnsureSize(), Lexer::FindKeyword(), GetDigits(), CharBuffer::GetString(), NumeralSystem::GetText(), prompt, RealNumber::RealNumber(), StrLen(), symdelimiter, symdigits, and symprompt\&.
.PP
Referenced by PrefsStatement::Execute(), and StandardPreferences::SavePrefs()\&.
.PP
.nf
56 {
57 static char *promptkw = Lexer::FindKeyword(symprompt);
58 static char *digitkw = Lexer::FindKeyword(symdigits);
59 static char delimiter = *(Lexer::FindKeyword(symdelimiter));
60 static char promptq = '"';
61
62 Number *d = new RealNumber(GetDigits());
63 NumeralSystem *ns = new DecimalSystem(2);
64 const char *dtext = ns->GetText(d);
65 delete d;
66
67 buf->Empty();
68 buf->EnsureSize(
69 StrLen(promptkw) + sizeof(SPACE) + sizeof(promptq) +
70 StrLen(prompt) + sizeof(promptq) + sizeof(delimiter) +
71 StrLen(digitkw) + sizeof(SPACE) + StrLen(dtext) + sizeof(delimiter) + sizeof(char));
72
73 buf->Append(promptkw);
74 buf->Append(SPACE);
75 buf->Append(promptq);
76 buf->Append(prompt);
77 buf->Append(promptq);
78 buf->Append(delimiter);
79 buf->Append(digitkw);
80 buf->Append(SPACE);
81 buf->Append(dtext);
82 buf->Append(delimiter);
83
84 delete ns;
85 return buf->GetString();
86 }
.fi
.SS "int PreferencesBase::GetDigits ()"
.PP
Definition at line 112 of file preferences\&.cpp\&.
.PP
References digits\&.
.PP
Referenced by PrefsStatement::Execute(), GetDescription(), and Program::Program()\&.
.PP
.nf
113 {
114 return digits;
115 }
.fi
.SS "char * PreferencesBase::GetPrompt ()"
.PP
Definition at line 101 of file preferences\&.cpp\&.
.PP
References prompt\&.
.PP
Referenced by PrefsStatement::Execute(), and StandardProgram::Initialize()\&.
.PP
.nf
102 {
103 return prompt;
104 }
.fi
.SS "virtual \fBbool\fP PreferencesBase::Keep ()\fC [pure virtual]\fP"
.PP
Implemented in \fBStandardPreferences\fP, and \fBAmigaPreferences\fP\&.
.PP
Referenced by PrefsStatement::Execute(), and Program::~Program()\&.
.SS "virtual \fBbool\fP PreferencesBase::Load ()\fC [pure virtual]\fP"
.PP
Implemented in \fBStandardPreferences\fP, and \fBAmigaPreferences\fP\&.
.PP
Referenced by PrefsStatement::Execute(), and StandardProgram::Run()\&.
.SS "virtual \fBbool\fP PreferencesBase::Save ()\fC [pure virtual]\fP"
.PP
Implemented in \fBStandardPreferences\fP, and \fBAmigaPreferences\fP\&.
.PP
Referenced by PrefsStatement::Execute()\&.
.SS "void PreferencesBase::SetDefaults ()"
.PP
Definition at line 49 of file preferences\&.cpp\&.
.PP
References AllocAndCopy(), digits, and prompt\&.
.PP
Referenced by PreferencesBase()\&.
.PP
.nf
50 {
51 AllocAndCopy(&this->prompt, "> ");
52 digits = 9;
53 }
.fi
.SS "void PreferencesBase::SetDigits (int digits)"
.PP
Definition at line 117 of file preferences\&.cpp\&.
.PP
References digits\&.
.PP
Referenced by DigitsStatement::Execute()\&.
.PP
.nf
118 {
119 this->digits = digits;
120 }
.fi
.SS "void PreferencesBase::SetPrefs (char * prefs)\fC [protected]\fP"
.PP
Definition at line 88 of file preferences\&.cpp\&.
.PP
References SyntaxNode::Execute(), Parser::Parse(), and Parser::Parser()\&.
.PP
Referenced by StandardPreferences::Load()\&.
.PP
.nf
89 {
90 if (prefs == NOMEM) {
91 return;
92 }
93
94 Parser *parser = new Parser(prefs);
95 SyntaxNode *node = parser->Parse();
96 delete parser;
97 node->Execute();
98 delete node;
99 }
.fi
.SS "void PreferencesBase::SetPrompt (const char * prompt)"
.PP
Definition at line 106 of file preferences\&.cpp\&.
.PP
References AllocAndCopy(), and prompt\&.
.PP
Referenced by Program::SetPrompt()\&.
.PP
.nf
107 {
108 delete this->prompt;
109 AllocAndCopy(&this->prompt, prompt);
110 }
.fi
.SH "Member Data Documentation"
.PP
.SS "\fBCharBuffer\fP* PreferencesBase::buf\fC [private]\fP"
.PP
Definition at line 50 of file preferences\&.h\&.
.PP
Referenced by GetDescription(), PreferencesBase(), and ~PreferencesBase()\&.
.SS "int PreferencesBase::digits\fC [private]\fP"
.PP
Definition at line 52 of file preferences\&.h\&.
.PP
Referenced by GetDigits(), SetDefaults(), and SetDigits()\&.
.SS "char* PreferencesBase::prompt\fC [private]\fP"
.PP
Definition at line 51 of file preferences\&.h\&.
.PP
Referenced by GetDescription(), GetPrompt(), SetDefaults(), SetPrompt(), and ~PreferencesBase()\&.
.SH "Author"
.PP
Generated automatically by Doxygen for amath from the source code\&.