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 StringBaseGetText (StringBase &Description) const
virtual BOOL operator> (const VisibleListItem &OtherItem) const
virtual AppliedAttributeCreateUsedProperty ()
virtual BOOL CanBecomeStyle () const

Private Member Functions

 CC_DECLARE_MEMDUMP (CustomProperty)

Private Attributes

VisibleUserAttributem_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