kpilot Library API Documentation

PilotAddress Class Reference

A wrapper class around the Address struct provided by pi-address.h. More...

#include <pilotAddress.h>

List of all members.

Public Types

enum  EPhoneType {
  eWork = 0, eHome, eFax, eOther,
  eEmail, eMain, ePager, eMobile
}

Public Methods

 PilotAddress (struct AddressAppInfo &appInfo)
 PilotAddress (struct AddressAppInfo &appInfo, PilotRecord *rec)
 PilotAddress (const PilotAddress &copyFrom)
PilotAddress & operator= (const PilotAddress &r)
bool operator== (const PilotAddress &r)
 ~PilotAddress ()
virtual QString getTextRepresentation (bool richText=false)
void reset ()
void setField (int field, const QString &text)
QString getField (int field) const
QString getCategoryLabel () const
bool setCategory (const QString &label)
QString getPhoneField (EPhoneType type, bool checkCustom4=true) const
void setPhoneField (EPhoneType type, const QString &field, bool overflowCustom=true)
int getShownPhone () const
void setShownPhone (EPhoneType phoneType)
int getPhoneLabelIndex (int index)
PilotRecord * pack ()
void * pack (void *, int *)
void unpack (const void *, int=0)

Static Public Attributes

const int APP_BUFFER_SIZE = 0xffff

Protected Methods

const char * getFieldP (int field) const


Detailed Description

A wrapper class around the Address struct provided by pi-address.h.

This class allows the user to set and get address field values. For everything but phone fields, the user can simply pass the the pi-address enum for the index for setField() and getField() such as entryLastname.

Phone fields are a bit trickier. The structure allows for 8 possible phone fields with 5 possible slots. That means there could be three fields that don't have available storage. The setPhoneField() method will attempt to store the extra fields in a custom field if there is an overflow.

There are eight possible fields for 5 view slots:

  • fields: Work, Home, Fax, Other, Pager, Mobile, E-mail, Main
  • slots: entryPhone1, entryPhone2, entryPhone3, entryPhone4, entryPhone5

    Internally in the pilot-link library, the AddressAppInfo phone array stores the strings for the eight possible phone values. Their English string values are :

  • phone[0] = Work
  • phone[1] = Home
  • phone[2] = Fax
  • phone[3] = Other
  • phone[4] = E-mail
  • phone[5] = Main
  • phone[6] = Pager
  • phone[7] = Mobile

    Apparently, this order is kept for all languages, just with localized strings. The implementation of the internal methods will assume this order is kept. In other languages, main can replaced with Corporation.

    Definition at line 81 of file pilotAddress.h.


    Member Function Documentation

    QString PilotAddress::getTextRepresentation bool    richText = false [virtual]
     

    Returns a text representation of the address.

    If richText is true, the text is allowed to contain Qt-HTML tags.

    Definition at line 140 of file pilotAddress.cc.

    References QString::arg(), getShownPhone(), and QString::isEmpty().

    void PilotAddress::reset   [inline]
     

    Zeros the internal address info structure, in effect clearing out all prior set values.

    Definition at line 105 of file pilotAddress.h.

    void PilotAddress::setField int    field,
    const QString   text
     

    Parameters:
    field  int values associated with the enum defined in pi-address.h. The copied possible enum's are: (copied from pi-address.h on 1/12/01) enum { entryLastname, entryFirstname, entryCompany, entryPhone1, entryPhone2, entryPhone3, entryPhone4, entryPhone5, entryAddress, entryCity, entryState, entryZip, entryCountry, entryTitle, entryCustom1, entryCustom2, entryCustom3, entryCustom4, entryNote };

    Definition at line 420 of file pilotAddress.cc.

    References QString::isEmpty(), and QString::length().

    Referenced by setPhoneField().

    bool PilotAddress::setCategory const QString   label
     

    If the label already exists, uses the id; if not, adds the label to the category list.

    Returns:
    false if category labels are full

    Definition at line 245 of file pilotAddress.cc.

    References QString::isEmpty().

    QString PilotAddress::getPhoneField EPhoneType    type,
    bool    checkCustom4 = true
    const
     

    Parameters:
    checkCustom4  flag if true, checks the entryCustom4 field for extra phone fields
    Returns:
    the field associated with the type

    Definition at line 350 of file pilotAddress.cc.

    References QString::find(), QString::length(), QString::mid(), and QString::simplifyWhiteSpace().

    void PilotAddress::setPhoneField EPhoneType    type,
    const QString   field,
    bool    overflowCustom = true
     

    Parameters:
    overflowCustom  is true, and entryPhone1 to entryPhone5 is full it will use entryCustom4 field to store the field

    Definition at line 302 of file pilotAddress.cc.

    References QString::isEmpty(), and setField().

    int PilotAddress::getShownPhone   const [inline]
     

    Returns the (adjusted) index of the phone number selected by the user to be shown in the overview of addresses.

    Adjusted here means that it's actually an index into 3..8, the fields that store phone numbers, so 0 means field 3 is selected.

    Returns:
    # between 0 and 3, where 0 is entryPhone1 and 3 is entryPhone4

    Definition at line 148 of file pilotAddress.h.

    Referenced by getTextRepresentation().


    The documentation for this class was generated from the following files:
  • KDE Logo
    This file is part of the documentation for kpilot Library Version 3.2.2.
    Documentation copyright © 1996-2004 the KDE developers.
    Generated on Sat May 1 11:36:50 2004 by doxygen 1.2.15 written by Dimitri van Heesch, © 1997-2003