CustomProperty Class Reference

Provides a "custom" visible template handler so the user can enter raw user attributes. More...

Inheritance diagram for CustomProperty:

AvailableProperty VisibleListItem UserInterface List of all members.

Public Member Functions

 CustomProperty ()
virtual BOOL Display (DialogOp &Dialog)
virtual BOOL Interact (DialogOp &Dialog)
virtual void Hide ()
virtual StringBase & GetText (StringBase &Description) const
virtual BOOL operator> (const VisibleListItem &OtherItem) const
virtual AppliedAttribute * CreateUsedProperty ()
virtual BOOL CanBecomeStyle () const

Private Member Functions

 CC_DECLARE_MEMDUMP (CustomProperty)

Private Attributes

VisibleUserAttribute * m_pWorkingVisibleAttr

Detailed Description

Provides a "custom" visible template handler so the user can enter raw user attributes.

Author:
Colin_Barfoot (Xara Group Ltd) <camelotdev@xara.com>
Date:
15/10/96

Definition at line 297 of file tmpltdlg.cpp.


Constructor & Destructor Documentation

CustomProperty::CustomProperty (   )  [inline]
 

Definition at line 302 of file tmpltdlg.cpp.


Member Function Documentation

virtual BOOL CustomProperty::CanBecomeStyle (   )  const [inline, virtual]
 

Implements AvailableProperty.

Definition at line 313 of file tmpltdlg.cpp.

00313 {   return FALSE;   }

CustomProperty::CC_DECLARE_MEMDUMP (  CustomProperty   )  [private]
 

AppliedAttribute * CustomProperty::CreateUsedProperty (   )  [virtual]
 

Implements AvailableProperty.

Definition at line 1039 of file tmpltdlg.cpp.

01040 {
01041     AppliedAttribute* pNewAppliedAttr = NULL;
01042 
01043     if (m_pWorkingVisibleAttr != NULL)
01044     {
01045         m_pWorkingVisibleAttr->Hide();
01046         m_pWorkingVisibleAttr->MarkAsUsed();
01047 
01048         pNewAppliedAttr = new SingletonAppliedAttribute(*m_pWorkingVisibleAttr);
01049 
01050         if (pNewAppliedAttr != NULL)
01051         {
01052             // make sure Hide() doesn't throw the not-so-working VisibleAttribute away
01053             m_pWorkingVisibleAttr = NULL;
01054         }
01055     }
01056 
01057     return pNewAppliedAttr;
01058 }

BOOL CustomProperty::Display (  DialogOp &  Dialog  )  [virtual]
 

Reimplemented from VisibleListItem.

Definition at line 998 of file tmpltdlg.cpp.

00999 {
01000     ERROR2IF(m_pWorkingVisibleAttr != NULL, FALSE, "CustomProperty member should be NULL");
01001 
01002     BOOL Ok = TRUE;
01003 
01004     m_pWorkingVisibleAttr = new VisibleUserAttribute(NullString, NullString);
01005     Ok = (m_pWorkingVisibleAttr != NULL);
01006 
01007     if (Ok)
01008     {
01009         Ok = m_pWorkingVisibleAttr->Display(Dialog);
01010     }
01011 
01012     return Ok;
01013 }

virtual StringBase& CustomProperty::GetText (  StringBase &  Description  )  const [inline, virtual]
 

Implements VisibleListItem.

Definition at line 309 of file tmpltdlg.cpp.

00309 {   Description.Load(_R(IDS_CUSTOM_WIZOP));return Description;  }

void CustomProperty::Hide (   )  [virtual]
 

Reimplemented from VisibleListItem.

Definition at line 1028 of file tmpltdlg.cpp.

01029 {
01030     if (m_pWorkingVisibleAttr != NULL)
01031     {
01032         m_pWorkingVisibleAttr->Hide();
01033         delete m_pWorkingVisibleAttr;
01034         m_pWorkingVisibleAttr = NULL;
01035     }
01036 }

BOOL CustomProperty::Interact (  DialogOp &  Dialog  )  [virtual]
 

Reimplemented from VisibleListItem.

Definition at line 1015 of file tmpltdlg.cpp.

01016 {
01017     BOOL Ok = TRUE;
01018 
01019     if (m_pWorkingVisibleAttr != NULL)
01020     {
01021         Ok = m_pWorkingVisibleAttr->Interact(Dialog);
01022     }
01023 
01024     return Ok;
01025 }

virtual BOOL CustomProperty::operator> (  const VisibleListItem &  OtherItem  )  const [inline, virtual]
 

Reimplemented from VisibleListItem.

Definition at line 310 of file tmpltdlg.cpp.

00310 {   return TRUE;    }


Member Data Documentation

VisibleUserAttribute* CustomProperty::m_pWorkingVisibleAttr [private]
 

Definition at line 316 of file tmpltdlg.cpp.


The documentation for this class was generated from the following file:
Generated on Sat Nov 10 03:53:19 2007 for Camelot by  doxygen 1.4.4