inlib  1.2.0
Public Member Functions
inlib::sg::list_item Class Reference

List of all members.

Public Member Functions

 list_item ()
 list_item (const std::vector< std::string > &a_strings, inlib::sg::cbk *a_cbk, bool a_dir=false)
 list_item (const std::string &a_label, inlib::sg::cbk *a_cbk, bool a_dir=false)
virtual ~list_item ()
 list_item (const list_item &a_from)
list_itemoperator= (const list_item &a_from)
bool operator== (const list_item &a_v) const
bool operator!= (const list_item &a_v) const
const std::vector< std::string > & strings () const
inlib::sg::cbkcbk () const
bool is_dir () const

Detailed Description

Definition at line 14 of file list_item.


Constructor & Destructor Documentation

inlib::sg::list_item::list_item ( ) [inline]

Definition at line 16 of file list_item.

:m_cbk(0){}
inlib::sg::list_item::list_item ( const std::vector< std::string > &  a_strings,
inlib::sg::cbk a_cbk,
bool  a_dir = false 
) [inline]

Definition at line 17 of file list_item.

  :m_strings(a_strings)
  ,m_cbk(a_cbk) //take ownership.
  ,m_dir(a_dir)
  {}
inlib::sg::list_item::list_item ( const std::string &  a_label,
inlib::sg::cbk a_cbk,
bool  a_dir = false 
) [inline]

Definition at line 24 of file list_item.

  :m_cbk(a_cbk) //take ownership.
  ,m_dir(a_dir)
  {
    m_strings.push_back(a_label);
  }
virtual inlib::sg::list_item::~list_item ( ) [inline, virtual]

Definition at line 32 of file list_item.

{delete m_cbk;}
inlib::sg::list_item::list_item ( const list_item a_from) [inline]

Definition at line 34 of file list_item.

  :m_strings(a_from.m_strings)
  ,m_cbk(a_from.m_cbk?a_from.m_cbk->copy():0)
  ,m_dir(a_from.m_dir)
  {}

Member Function Documentation

inlib::sg::cbk* inlib::sg::list_item::cbk ( ) const [inline]

Definition at line 68 of file list_item.

{return m_cbk;}
bool inlib::sg::list_item::is_dir ( ) const [inline]

Definition at line 69 of file list_item.

{return m_dir;}
bool inlib::sg::list_item::operator!= ( const list_item a_v) const [inline]

Definition at line 65 of file list_item.

{return !operator==(a_v);}
list_item& inlib::sg::list_item::operator= ( const list_item a_from) [inline]

Definition at line 39 of file list_item.

                                               {
    m_strings = a_from.m_strings;
    delete m_cbk;
    m_cbk = a_from.m_cbk?a_from.m_cbk->copy():0;
    m_dir = a_from.m_dir;
    return *this;
  }
bool inlib::sg::list_item::operator== ( const list_item a_v) const [inline]

Definition at line 47 of file list_item.

                                              {
    if(m_strings!=a_v.m_strings) return false;
    if(m_dir!=a_v.m_dir) return false;
    if(m_cbk) {
      if(a_v.m_cbk) {
        //return m_cbk->equal(*(a_v.m_cbk)); //do we want that ?
        return false;
      } else {
        return false;
      }
    } else {
      if(a_v.m_cbk) {
        return false;
      } else {
        return true;
      }
    }
  }
const std::vector<std::string>& inlib::sg::list_item::strings ( ) const [inline]

Definition at line 67 of file list_item.

{return m_strings;}

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines