scim  1.4.14
scim::Property Class Reference

Class to hold a property of a IMEngineInstance object or a Panel GUI client. More...

#include <scim_property.h>

Public Member Functions

 Property ()
 Default constructor.
 Property (const String &key, const String &label, const String &icon=String(""), const String &tip=String(""))
 Constructor.
bool valid () const
 Test if this property is valid.
bool visible () const
 If this property is visible.
bool active () const
 If this property is active.
const Stringget_key () const
 Get the key of this property.
const Stringget_label () const
 Get the label of this property.
const Stringget_icon () const
 Get the icon file of this property.
const Stringget_tip () const
 Get the tip of this property.
void set_key (const String &key)
 Set a new key for this property.
void set_label (const String &label)
 Set a new label for this property.
void set_icon (const String &icon)
 Set a new icon file for this property.
void set_tip (const String &tip)
 Set a new tip for this property.
void set_active (bool active)
 Set if this property is active.
void show (bool visible=true)
void hide (bool hidden=true)
bool is_a_leaf_of (const Property &node) const
 Test if this property is a leaf of another one.

Detailed Description

Class to hold a property of a IMEngineInstance object or a Panel GUI client.

A property has four elements:

  • key An unique identify key of the property, for example:
    • /TableInstance
    • /TableInstance/FullWidthLetter In this case, the second property will be a leaf (maybe a submenu item) of the first property.
  • label A label of the property which should be displayed.
  • icon An icon file of the property which should be displayed along with label.
  • tip A string to descript what the property means.

With path like keys, the properties can form a cascade structure, which may be displayed like a cascading menu.

But only the leaf properties can act as trigger commands and give feedback to IMEngineInstance.

All strings should be encoded into UTF-8.

Constructor & Destructor Documentation

scim::Property::Property ( )
inline

Default constructor.

scim::Property::Property ( const String key,
const String label,
const String icon = String (""),
const String tip = String ("") 
)
inline

Constructor.

Member Function Documentation

bool scim::Property::valid ( void  ) const
inline

Test if this property is valid.

Returns
true if this property is valid.
bool scim::Property::visible ( ) const
inline

If this property is visible.

Returns
true if this property is visible.

References SCIM_PROPERTY_VISIBLE.

Referenced by show().

bool scim::Property::active ( ) const
inline

If this property is active.

A active property can be clicked by users.

Returns
true if this property is active.

References SCIM_PROPERTY_ACTIVE.

const String& scim::Property::get_key ( ) const
inline

Get the key of this property.

Referenced by scim::operator!=(), scim::operator<(), and scim::operator==().

const String& scim::Property::get_label ( ) const
inline

Get the label of this property.

const String& scim::Property::get_icon ( ) const
inline

Get the icon file of this property.

const String& scim::Property::get_tip ( ) const
inline

Get the tip of this property.

void scim::Property::set_key ( const String key)
inline

Set a new key for this property.

void scim::Property::set_label ( const String label)
inline

Set a new label for this property.

void scim::Property::set_icon ( const String icon)
inline

Set a new icon file for this property.

void scim::Property::set_tip ( const String tip)
inline

Set a new tip for this property.

void scim::Property::set_active ( bool  active)
inline

Set if this property is active.

Parameters
activeIf this property is active.

References SCIM_PROPERTY_ACTIVE.

void scim::Property::show ( bool  visible = true)
inline

References SCIM_PROPERTY_VISIBLE, and visible().

Referenced by hide().

void scim::Property::hide ( bool  hidden = true)
inline

References show().

bool scim::Property::is_a_leaf_of ( const Property node) const
inline

Test if this property is a leaf of another one.

Returns
true if this property is a leaf of the node.

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