Hot Door CORE 0.8.2
Adobe® Illustrator® Plug-in Library
Loading...
Searching...
No Matches
hdicoreColumnEntry.h
Go to the documentation of this file.
1
8#ifndef __HDI_CORE_COLUMN_ENTRY__
9#define __HDI_CORE_COLUMN_ENTRY__
10
11#include <vector>
12
13#include "hdicoreMacros.h"
14
15#include "hdicoreEntryValue.h"
16
17namespace hdi
18{
19 namespace pui
20 {
21 class ColumnEntryData;
22 }
23
24 namespace core
25 {
30 {
31 public:
32 typedef std::vector<EntryValue> ValueVector;
33 typedef std::vector<bool> EditableVector;
34 typedef std::vector< void* > DataVector;
35
40 static const char* separatorValue;
41
54
64
77 const std::string& id_,
78 const ValueVector& values_,
79 const DataVector& userData_,
80 const bool enabled_,
81 const EditableVector& editable_
82 );
83
89 virtual ~ColumnEntry();
90
100 virtual ColumnEntry& operator=(const ColumnEntry& rhs_);
101
110 virtual bool isEmpty() const;
111
119 virtual std::string entryID() const;
120
131 virtual void setEntryID(const std::string& id_);
132
140 virtual ValueVector values() const;
141
149 virtual void setValues(const ValueVector& values_);
150
158 virtual bool enabled() const;
159
167 virtual void setEnabled(const bool enabled_);
168
176 virtual EditableVector editable() const;
177
185 virtual void setEditable(const EditableVector& editable_);
186
194 virtual DataVector userData() const;
195
203 virtual void setUserData(const DataVector& data_);
204
213 virtual bool operator==(const ColumnEntry& rhs_) const;
214
223 virtual bool operator!=(const ColumnEntry& rhs_) const;
224
225
226 private:
227 friend pui::ColumnEntryData* __accessImpl(const ColumnEntry&);
228
232 void* __data;
233
239 void* __impl() const;
240 };
241
242 typedef std::unique_ptr<ColumnEntry> ColumnEntryUP;
243 typedef std::shared_ptr<ColumnEntry> ColumnEntrySP;
244 typedef std::weak_ptr<ColumnEntry> ColumnEntryWP;
245
246 extern pui::ColumnEntryData* __accessImpl(const ColumnEntry&);
247 }
248}
249
250#endif
251// __HDI_CORE_COLUMN_ENTRY__
Allows column views to store more data than simply strings and indices.
Definition: hdicoreColumnEntry.h:30
virtual EditableVector editable() const
Gets the editability of each cell in the entry (whether the user can edit it inline)
virtual bool operator!=(const ColumnEntry &rhs_) const
Tests whether a given ColumnEntry object is not the same as another.
virtual void setEditable(const EditableVector &editable_)
Sets the editability of each cell in the entry (whether the user can edit it inline)
static const char * separatorValue
When you want a separator in a container widget, create a ColumnEntry object with this as its string ...
Definition: hdicoreColumnEntry.h:40
virtual void setValues(const ValueVector &values_)
Sets the value objects of an entry.
virtual DataVector userData() const
Gets the custom data of an entry.
virtual void setEntryID(const std::string &id_)
Sets the ID string of an entry.
virtual bool enabled() const
Gets whether the entry should be enabled (selectable by the user in the list)
virtual ColumnEntry & operator=(const ColumnEntry &rhs_)
Assigns one ColumnEntry object to another.
virtual void setUserData(const DataVector &data_)
Sets the custom data of an entry.
ColumnEntry(const std::string &id_, const ValueVector &values_, const DataVector &userData_, const bool enabled_, const EditableVector &editable_)
Constructs a ColumnEntry object with some custom data.
virtual bool isEmpty() const
Gets whether the target ColumnEntry object is empty (constructed with the default ctor)
virtual std::string entryID() const
Gets the ID string of an entry.
virtual bool operator==(const ColumnEntry &rhs_) const
Tests whether a given ColumnEntry object is the same as another.
ColumnEntry()
Constructs an empty ColumnEntry object.
virtual ValueVector values() const
Gets the value objects of an entry.
ColumnEntry(const ColumnEntry &e_)
Constructs a new ColumnEntry object from an existing ColumnEntry object (copy constructor)
virtual ~ColumnEntry()
Destructs a ColumnEntry object.
virtual void setEnabled(const bool enabled_)
Sets whether the entry should be enabled (selectable by the user in the list)
Header file for storing entry string values or image IDs.
Header file for a variety of plugin convenience macros.