PTLib  Version 2.14.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PHTTPField Class Referenceabstract

This class is the abstract base class for fields in a PHTTPForm resource type. More...

#include <httpform.h>

Inheritance diagram for PHTTPField:
Collaboration diagram for PHTTPField:

Public Member Functions

 PHTTPField (const char *bname, const char *title, const char *help)
 
virtual Comparison Compare (const PObject &obj) const
 Compare the fields using the field names. More...
 
const PCaselessString & GetName () const
 Get the identifier name of the field. More...
 
const PCaselessString & GetBaseName () const
 Get the identifier name of the field. More...
 
virtual void SetName (const PString &newName)
 Set the name for the field. More...
 
virtual const PHTTPField * LocateName (const PString &name) const
 Locate the field naem, recusing down for composite fields. More...
 
const PString & GetTitle () const
 Get the title of the field. More...
 
const PString & GetHelp () const
 Get the title of the field. More...
 
void SetHelp (const PString &text)
 
void SetHelp (const PString &hotLinkURL, const PString &linkText)
 
void SetHelp (const PString &hotLinkURL, const PString &imageURL, const PString &imageText)
 
virtual PHTTPField * NewField () const =0
 Create a new field of the same class as the current field. More...
 
virtual void ExpandFieldNames (PString &text, PINDEX start, PINDEX &finish) const
 
virtual void GetHTMLTag (PHTML &html) const =0
 Convert the field to HTML form tag for inclusion into the HTTP page. More...
 
virtual PString GetHTMLInput (const PString &input) const
 Convert the field input to HTML for inclusion into the HTTP page. More...
 
virtual PString GetHTMLSelect (const PString &selection) const
 Convert the field input to HTML for inclusion into the HTTP page. More...
 
virtual void GetHTMLHeading (PHTML &html) const
 Convert the field to HTML for inclusion into the HTTP page. More...
 
virtual PString GetValue (PBoolean dflt=false) const =0
 Get the string value of the field. More...
 
virtual void SetValue (const PString &newValue)=0
 Set the value of the field. More...
 
virtual bool LoadFromConfig (PConfig &cfg)
 Get the value of the PConfig to the sub-field. More...
 
virtual void SaveToConfig (PConfig &cfg) const
 Set the value of the sub-field into the PConfig. More...
 
virtual PBoolean Validated (const PString &newVal, PStringStream &msg) const
 Validate the new field value before SetValue() is called. More...
 
virtual void GetAllNames (PStringArray &names) const
 Retrieve all the names in the field and subfields. More...
 
virtual void SetAllValues (const PStringToString &data)
 Set the value of the field in a list of fields. More...
 
virtual PBoolean ValidateAll (const PStringToString &data, PStringStream &msg) const
 Validate the new field value in a list before SetValue() is called. More...
 
PBoolean NotYetInHTML () const
 
void SetInHTML ()
 
- Public Member Functions inherited from PObject
unsigned GetTraceContextIdentifier () const
 Get PTRACE context identifier. More...
 
void SetTraceContextIdentifier (unsigned id)
 
void GetTraceContextIdentifier (PObject &obj)
 
void GetTraceContextIdentifier (PObject *obj)
 
void SetTraceContextIdentifier (const PObject &obj)
 
void SetTraceContextIdentifier (const PObject *obj)
 
virtual ~PObject ()
 
virtual PObject * Clone () const
 Create a copy of the class on the heap. More...
 
template<class CLS >
CLS * CloneAs () const
 As for Clone() but converts to specified type. More...
 
virtual PINDEX HashFunction () const
 This function yields a hash value required by the PDictionary class. More...
 
virtual Comparison CompareObjectMemoryDirect (const PObject &obj) const
 Determine the byte wise comparison of two objects. More...
 
bool operator== (const PObject &obj) const
 Compare the two objects. More...
 
bool operator!= (const PObject &obj) const
 Compare the two objects. More...
 
bool operator< (const PObject &obj) const
 Compare the two objects. More...
 
bool operator> (const PObject &obj) const
 Compare the two objects. More...
 
bool operator<= (const PObject &obj) const
 Compare the two objects. More...
 
bool operator>= (const PObject &obj) const
 Compare the two objects. More...
 
virtual const char * GetClass (unsigned ancestor=0) const
 Get the current dynamic type of the object instance. More...
 
PBoolean IsClass (const char *cls) const
 
virtual PBoolean InternalIsDescendant (const char *clsName) const
 Determine if the dynamic type of the current instance is a descendent of the specified class. More...
 
__inline const PObject * PTraceObjectInstance () const
 
virtual void PrintOn (ostream &strm) const
 Output the contents of the object to the stream. More...
 
virtual void ReadFrom (istream &strm)
 Input the contents of the object from the stream. More...
 

Protected Attributes

PCaselessString baseName
 
PCaselessString fullName
 
PString title
 
PString help
 
PBoolean notInHTML
 
- Protected Attributes inherited from PObject
unsigned m_traceContextIdentifier
 

Additional Inherited Members

- Public Types inherited from PObject
enum  Comparison { LessThan = -1, EqualTo = 0, GreaterThan = 1 }
 Result of the comparison operation performed by the Compare() function. More...
 
- Static Public Member Functions inherited from PObject
static Comparison InternalCompareObjectMemoryDirect (const PObject *obj1, const PObject *obj2, PINDEX size)
 Internal function caled from CompareObjectMemoryDirect() More...
 
static const char * Class ()
 Get the name of the class as a C string. More...
 
static __inline const PObject * PTraceObjectInstance (const char *)
 
static __inline const PObject * PTraceObjectInstance (const PObject *obj)
 
- Protected Member Functions inherited from PObject
 PObject ()
 Constructor for PObject, made protected so cannot ever create one on its own. More...
 
- Friends inherited from PObject

Detailed Description

This class is the abstract base class for fields in a PHTTPForm resource type.

Constructor & Destructor Documentation

PHTTPField::PHTTPField ( const char *  bname,
const char *  title,
const char *  help 
)

Member Function Documentation

virtual Comparison PHTTPField::Compare ( const PObject &  obj) const
virtual

Compare the fields using the field names.

Returns
Comparison of the name fields of the two fields.

Reimplemented from PObject.

virtual void PHTTPField::ExpandFieldNames ( PString &  text,
PINDEX  start,
PINDEX &  finish 
) const
virtual

Reimplemented in PHTTPFieldArray, and PHTTPCompositeField.

virtual void PHTTPField::GetAllNames ( PStringArray &  names) const
virtual

Retrieve all the names in the field and subfields.

Returns
Array of strings for each subfield.

Reimplemented in PHTTPCompositeField.

const PCaselessString& PHTTPField::GetBaseName ( ) const
inline

Get the identifier name of the field.

Returns
String for field name.

References baseName.

const PString& PHTTPField::GetHelp ( ) const
inline

Get the title of the field.

Returns
String for title placed next to the field.

References help.

virtual void PHTTPField::GetHTMLHeading ( PHTML &  html) const
virtual

Convert the field to HTML for inclusion into the HTTP page.

Reimplemented in PHTTPSubForm, and PHTTPCompositeField.

virtual PString PHTTPField::GetHTMLInput ( const PString &  input) const
virtual

Convert the field input to HTML for inclusion into the HTTP page.

Reimplemented in PHTTPRadioField, PHTTPBooleanField, and PHTTPCompositeField.

virtual PString PHTTPField::GetHTMLSelect ( const PString &  selection) const
virtual

Convert the field input to HTML for inclusion into the HTTP page.

virtual void PHTTPField::GetHTMLTag ( PHTML &  html) const
pure virtual

Convert the field to HTML form tag for inclusion into the HTTP page.

Implemented in PHTTPSelectField, PHTTPRadioField, PHTTPBooleanField, PHTTPIntegerField, PHTTPPasswordField, PHTTPStringField, PHTTPFieldArray, PHTTPSubForm, and PHTTPCompositeField.

const PCaselessString& PHTTPField::GetName ( ) const
inline

Get the identifier name of the field.

Returns
String for field name.

References fullName.

const PString& PHTTPField::GetTitle ( ) const
inline

Get the title of the field.

Returns
String for title placed next to the field.

References title.

virtual PString PHTTPField::GetValue ( PBoolean  dflt = false) const
pure virtual

Get the string value of the field.

Returns
String for field value.

Implemented in PHTTPSelectField, PHTTPRadioField, PHTTPBooleanField, PHTTPIntegerField, PHTTPPasswordField, PHTTPStringField, and PHTTPCompositeField.

virtual bool PHTTPField::LoadFromConfig ( PConfig &  cfg)
virtual

Get the value of the PConfig to the sub-field.

If the field is not composite then it always sets the value as for the non-indexed version.

Returns
true if no configuration set and a default should be used.

Reimplemented in PHTTPBooleanField, PHTTPIntegerField, PHTTPFieldArray, and PHTTPCompositeField.

virtual const PHTTPField* PHTTPField::LocateName ( const PString &  name) const
virtual

Locate the field naem, recusing down for composite fields.

Returns
Pointer to located field, or NULL if not found.

Reimplemented in PHTTPCompositeField.

virtual PHTTPField* PHTTPField::NewField ( ) const
pure virtual

Create a new field of the same class as the current field.

Returns
New field object instance.

Implemented in PHTTPEnumField< Enumeration, InitVal >, PHTTPSelectField, PHTTPRadioField, PHTTPBooleanField, PHTTPIntegerField, PHTTPDateField, PHTTPPasswordField, PHTTPStringField, PHTTPFieldArray, PHTTPSubForm, and PHTTPCompositeField.

PBoolean PHTTPField::NotYetInHTML ( ) const
inline

References notInHTML.

virtual void PHTTPField::SaveToConfig ( PConfig &  cfg) const
virtual

Set the value of the sub-field into the PConfig.

If the field is not composite then it always sets the value as for the non-indexed version.

Reimplemented in PHTTPBooleanField, PHTTPIntegerField, PHTTPFieldArray, and PHTTPCompositeField.

virtual void PHTTPField::SetAllValues ( const PStringToString &  data)
virtual

Set the value of the field in a list of fields.

Reimplemented in PHTTPFieldArray, and PHTTPCompositeField.

void PHTTPField::SetHelp ( const PString &  text)
inline
void PHTTPField::SetHelp ( const PString &  hotLinkURL,
const PString &  linkText 
)
void PHTTPField::SetHelp ( const PString &  hotLinkURL,
const PString &  imageURL,
const PString &  imageText 
)
void PHTTPField::SetInHTML ( )
inline

References notInHTML.

virtual void PHTTPField::SetName ( const PString &  newName)
virtual

Set the name for the field.

Reimplemented in PHTTPCompositeField.

virtual void PHTTPField::SetValue ( const PString &  newValue)
pure virtual
virtual PBoolean PHTTPField::ValidateAll ( const PStringToString &  data,
PStringStream &  msg 
) const
virtual

Validate the new field value in a list before SetValue() is called.

Returns
PBoolean if the all the new field values are OK.

Reimplemented in PHTTPCompositeField.

virtual PBoolean PHTTPField::Validated ( const PString &  newVal,
PStringStream &  msg 
) const
virtual

Validate the new field value before SetValue() is called.

Returns
PBoolean if the new field value is OK.

Reimplemented in PHTTPIntegerField, and PHTTPDateField.

Member Data Documentation

PCaselessString PHTTPField::baseName
protected
PCaselessString PHTTPField::fullName
protected

Referenced by GetName().

PString PHTTPField::help
protected
PBoolean PHTTPField::notInHTML
protected

Referenced by NotYetInHTML(), and SetInHTML().

PString PHTTPField::title
protected

The documentation for this class was generated from the following file: