Gnome::Gda::DataModelArray Class Reference
Data Models

An implementation of DataModel based on an array. More...

Inheritance diagram for Gnome::Gda::DataModelArray:
[legend]
Collaboration diagram for Gnome::Gda::DataModelArray:
[legend]

## Public Member Functions

| DataModelArray (DataModelArray&& src) noexcept
DataModelArray& | operator= (DataModelArray&& src) noexcept
virtual | ~DataModelArray () noexcept
GdaDataModelArray* | gobj ()
| Provides access to the underlying C GObject. More...
const GdaDataModelArray* | gobj () const
| Provides access to the underlying C GObject. More...
GdaDataModelArray* | gobj_copy ()
| Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. More...
void | set_column_g_type (int col, GType type)
void | set_n_columns (int cols)
| Sets the number of columns for rows inserted in this model. More...
void | clear ()
| Frees all the rows in model. More...
Glib::RefPtr< Row > | get_row (int row)
| Get a pointer to a row in model. More...
Glib::RefPtr< const Row > | get_row (int row) const
| Get a pointer to a row in model. More...
Glib::PropertyProxy< guint > | property_n_columns ()
| The number of columns in the model. More...
Glib::PropertyProxy_ReadOnly< guint > | property_n_columns () const
| The number of columns in the model. More...
Public Member Functions inherited from Glib::Object
| Object (const Object &)=delete
Object & | operator= (const Object &)=delete
| Object (Object &&src) noexcept
Object & | operator= (Object &&src) noexcept
void * | get_data (const QueryQuark &key)
void | set_data (const Quark &key, void *data)
void | set_data (const Quark &key, void *data, DestroyNotify notify)
void | remove_data (const QueryQuark &quark)
void * | steal_data (const QueryQuark &quark)
Glib::RefPtr< Glib::Object > | wrap (GObject *object, bool take_copy=false)
Public Member Functions inherited from Glib::ObjectBase
| ObjectBase (const ObjectBase &)=delete
ObjectBase & | operator= (const ObjectBase &)=delete
void | set_property_value (const Glib::ustring &property_name, const Glib::ValueBase &value)
void | get_property_value (const Glib::ustring &property_name, Glib::ValueBase &value) const
void | set_property (const Glib::ustring &property_name, const PropertyType &value)
void | get_property (const Glib::ustring &property_name, PropertyType &value) const
void | connect_property_changed (const Glib::ustring &property_name, const sigc::slot< void > &slot)
sigc::connection | connect_property_changed_with_return (const Glib::ustring &property_name, const sigc::slot< void > &slot)
void | freeze_notify ()
void | thaw_notify ()
virtual void | reference () const
virtual void | unreference () const
GObject * | gobj ()
const GObject * | gobj () const
GObject * | gobj_copy () const
Public Member Functions inherited from sigc::trackable
| trackable ()
| trackable (const trackable &src)
| trackable (trackable &&src) noexcept
| ~trackable ()
void | add_destroy_notify_callback (void *data, func_destroy_notify func) const
void | notify_callbacks ()
trackable & | operator= (const trackable &src)
trackable & | operator= (trackable &&src) noexcept
void | remove_destroy_notify_callback (void *data) const
Public Member Functions inherited from Gnome::Gda::DataModel
| DataModel (DataModel&& src) noexcept
DataModel& | operator= (DataModel&& src) noexcept
virtual | ~DataModel () noexcept
GdaDataModel* | gobj ()
| Provides access to the underlying C GObject. More...
const GdaDataModel* | gobj () const
| Provides access to the underlying C GObject. More...
void | freeze ()
| Disables notifications of changes on the given data model. More...
void | thaw ()
| Re-enables notifications of changes on the given data model. More...
int | get_n_rows () const
int | get_n_columns () const
int | get_column_index (const Glib::ustring& name)
| Get the index of the first column named name in model. More...
Glib::RefPtr< Column > | describe_column (int col)
| Queries the underlying data model implementation for a description of a given column. More...
Glib::RefPtr< const Column > | describe_column (int col) const
| Queries the underlying data model implementation for a description of a given column. More...
Glib::ustring | get_column_title (int col) const
void | set_column_title (int col, const Glib::ustring& title)
| Sets the title of the given col in model. More...
Value | get_value_at (int col, int row) const
| Retrieves the data stored in the given position (identified by the col and row parameters) on a data model. More...
Value | get_typed_value_at (int col, int row, GType expected_type, bool nullok) const
| Upon errors `0` will be returned and error will be assigned a Error from the Gda::DATA_MODEL_ERROR domain. More...
ValueAttribute | get_attributes_at (int col, int row)
| Get the attributes of the value stored at (row, col) in model, which is an ORed value of Gda::ValueAttribute flags. More...
Glib::RefPtr< DataModelIter > | create_iter ()
| Creates a new iterator object Gda::DataModelIter object which can be used to iterate through rows in model. More...
bool | set_value_at (int col, int row, const Value& value)
| Modifies a value in model, at ( col, row). More...
bool | set_values (int row, const std::vector< Value >& values)
| In a similar way to set_value_at(), this method modifies a data model's contents by setting several values at once. More...
DataModelAccessFlags | get_access_flags () const
| Get the attributes of model such as how to access the data it contains if it's modifiable, etc. More...
int | append_values (const std::vector< Value >& values)
| Appends a row to the given data model. More...
bool | append_row ()
| Appends a row to the data model (the new row will possibly have `0` values for all columns, or some other values depending on the data model implementation) More...
bool | remove_row (int row)
| Removes a row from the data model. More...
int | get_row_from_values (const ValueVector& values, const std::vector< int >& cols_index)
| Returns the first row where all the values in values at the columns identified at cols_index match. More...
void | send_hint (DataModelHint hint, const Value& hint_value)
| Sends a hint to the data model. More...
Glib::ustring | export_to_string (DataModelIOFormat format, const std::vector< int >& cols, const std::vector< int >& rows, const Glib::RefPtr< Set >& options)
| Exports data contained in model to the a string; the format is specified using the format argument. More...
bool | export_to_file (DataModelIOFormat format, const std::string& file, const std::vector< int >& cols, const std::vector< int >& rows, const Glib::RefPtr< Set >& options)
| Exports data contained in model to the file; the format is specified using the format argument. More...
bool | import_from_model (const Glib::RefPtr< DataModel >& from, bool overwrite, GHashTable* cols_trans)
| Copy the contents of the from data model to the to data model. More...
bool | import_from_string (const Glib::ustring&string, GHashTable* cols_trans, const Glib::RefPtr< const Set >& options)
| Loads the data from string into model. More...
bool | import_from_file (const std::string& file, GHashTable* cols_trans, const Glib::RefPtr< const Set >& options)
| Imports data contained in the file file into model; the format is detected. More...
void | dump (FILE* to_stream) const
| Dumps a textual representation of the model to the to_stream stream. More...
Glib::ustring | dump_as_string () const
| Dumps a textual representation of the model into a new string. More...
void | set_column_name (int col, const Glib::ustring& name)
| Sets the name of the given col in model, and if its title is not set, also sets the title to name. More...
Glib::ustring | get_column_name (int col) const
bool | iter_move_next_default (const Glib::RefPtr< DataModelIter >& iter)
bool | iter_move_prev_default (const Glib::RefPtr< DataModelIter >& iter)
bool | iter_move_to_row_default (const Glib::RefPtr< DataModelIter >& iter, int row)
Glib::SignalProxy1< void, int > | signal_row_inserted ()
Glib::SignalProxy1< void, int > | signal_row_updated ()
Glib::SignalProxy1< void, int > | signal_row_removed ()
Glib::SignalProxy0< void > | signal_reset ()
Glib::SignalProxy0< void > | signal_changed ()
Public Member Functions inherited from Glib::Interface
| Interface ()
| Interface (Interface &&src) noexcept
Interface & | operator= (Interface &&src) noexcept
| Interface (const Glib::Interface_Class &interface_class)
| Interface (GObject *castitem)
virtual | ~Interface () noexcept
| Interface (const Interface &)=delete
Interface & | operator= (const Interface &)=delete
GObject * | gobj ()
const GObject * | gobj () const

## Static Public Member Functions

static GType | get_type ()
| Get the GType for this class, for use with the underlying GObject type system. More...
static Glib::RefPtr< DataModelArray > | create (int cols)
Static Public Member Functions inherited from Gnome::Gda::DataModel
static void | add_interface (GType gtype_implementer)
static GType | get_type ()
| Get the GType for this class, for use with the underlying GObject type system. More...

## Protected Member Functions

| DataModelArray (int cols)
Protected Member Functions inherited from Glib::Object
| Object ()
| Object (const Glib::ConstructParams &construct_params)
| Object (GObject *castitem)
virtual | ~Object () noexcept
Protected Member Functions inherited from Glib::ObjectBase
| ObjectBase ()
| ObjectBase (const char *custom_type_name)
| ObjectBase (const std::type_info &custom_type_info)
| ObjectBase (ObjectBase &&src) noexcept
ObjectBase & | operator= (ObjectBase &&src) noexcept
virtual | ~ObjectBase () noexcept=0
void | initialize (GObject *castitem)
void | initialize_move (GObject *castitem, Glib::ObjectBase *previous_wrapper)
Protected Member Functions inherited from Gnome::Gda::DataModel
| DataModel ()
| You should derive from this class to use it. More...
virtual void | on_row_inserted (int row)
| This is a default handler for the signal signal_row_inserted(). More...
virtual void | on_row_updated (int row)
| This is a default handler for the signal signal_row_updated(). More...
virtual void | on_row_removed (int row)
| This is a default handler for the signal signal_row_removed(). More...
virtual void | on_reset ()
| This is a default handler for the signal signal_reset(). More...
virtual void | on_changed ()
| This is a default handler for the signal signal_changed(). More...

## Related Functions

(Note that these are not member functions.)
Glib::RefPtr< Gnome::Gda::DataModelArray > | wrap (GdaDataModelArray* object, bool take_copy=false)
| A Glib::wrap() method for this object. More...
Related Functions inherited from Gnome::Gda::DataModel
Glib::RefPtr< Gnome::Gda::DataModel > | wrap (GdaDataModel* object, bool take_copy=false)
| A Glib::wrap() method for this object. More...

## Additional Inherited Members

Public Types inherited from Glib::Object
typedef void(* | DestroyNotify) (gpointer data)
Public Types inherited from sigc::trackable
typedef internal::func_destroy_notify | func_destroy_notify
Public Types inherited from Gnome::Gda::DataModel
typedef std::vector< Value > | ValueVector

## Detailed Description

An implementation of DataModel based on an array.

The Gda::DataModelArray object is a data model which internally uses a GArray to index all its rows (represented as Gda::Row objects). In this data model, all the data is stored in memory, which can be a memory limitation if the number of rows is huge. This type of data model is easy to use to store some temporary data, and has a random access mode (any value can be accessed at any time without the need for an iterator).

## Constructor & Destructor Documentation

Gnome::Gda::DataModelArray::DataModelArray | ( | DataModelArray&& | src | ) |

noexcept

virtual Gnome::Gda::DataModelArray::~DataModelArray | ( |  | ) |

virtualnoexcept

Gnome::Gda::DataModelArray::DataModelArray | ( | int | cols | ) |

explicitprotected

## Member Function Documentation

void Gnome::Gda::DataModelArray::clear | ( |  | ) |

Frees all the rows in model.

static Glib::RefPtr<DataModelArray> Gnome::Gda::DataModelArray::create | ( | int | cols | ) |

static

Glib::RefPtr<Row> Gnome::Gda::DataModelArray::get_row | ( | int | row | ) |

Get a pointer to a row in model.

Parameters

  row | Row number (starting from 0).

Returns
  The Gda::Row, or `0` if an error occurred.

Glib::RefPtr<const Row> Gnome::Gda::DataModelArray::get_row | ( | int | row | ) | const

Get a pointer to a row in model.

Parameters

  row | Row number (starting from 0).

Returns
  The Gda::Row, or `0` if an error occurred.

static GType Gnome::Gda::DataModelArray::get_type | ( |  | ) |

static

Get the GType for this class, for use with the underlying GObject type system.

GdaDataModelArray* Gnome::Gda::DataModelArray::gobj | ( |  | ) |

inline

Provides access to the underlying C GObject.

const GdaDataModelArray* Gnome::Gda::DataModelArray::gobj | ( |  | ) | const

inline

Provides access to the underlying C GObject.

GdaDataModelArray* Gnome::Gda::DataModelArray::gobj_copy | ( |  | ) |

Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.

DataModelArray& Gnome::Gda::DataModelArray::operator= | ( | DataModelArray&& | src | ) |

noexcept

Glib::PropertyProxy< guint > Gnome::Gda::DataModelArray::property_n_columns | ( |  | ) |

The number of columns in the model.

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly< guint > Gnome::Gda::DataModelArray::property_n_columns | ( |  | ) | const

The number of columns in the model.

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

void Gnome::Gda::DataModelArray::set_column_g_type | ( | int | col,
|  | GType | type
| ) |  |

void Gnome::Gda::DataModelArray::set_n_columns | ( | int | cols | ) |

Sets the number of columns for rows inserted in this model.

cols must be greated than or equal to 0.

Also clears model's contents.

Parameters

  cols | Number of columns for rows this data model should use.

## Friends And Related Function Documentation

Glib::RefPtr< Gnome::Gda::DataModelArray > wrap | ( | GdaDataModelArray * | object,
|  | bool | take_copy = `false`
| ) |  |

related

A Glib::wrap() method for this object.

Parameters

  object | The C instance.
  take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref.

Returns
  A C++ instance that wraps this C instance.

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

- libgdamm/datamodelarray.h