diff --git a/Framework/GenericTable.h b/Framework/GenericTable.h index 0286143..99599d8 100644 --- a/Framework/GenericTable.h +++ b/Framework/GenericTable.h @@ -13,35 +13,35 @@ class GenericTableBase { public: - GenericTableBase(bool a_readOnly) - { - m_callbackData = 0; - m_updateCallback = 0; - m_readOnly = a_readOnly; - m_currentRow = -1; - } + GenericTableBase(bool a_readOnly) + { + m_callbackData = 0; + m_updateCallback = 0; + m_readOnly = a_readOnly; + m_currentRow = -1; + } - virtual ~GenericTableBase() {} - virtual void notifyObservers() {} - virtual void dropData(const char* a_string) {} - virtual size_t size() { return 0; } - virtual QVariant value(int a_row, int a_column) const { return "Invalid"; } - virtual void setValue(int a_row, int a_column, const QVariant& a_value) {} + virtual ~GenericTableBase() {} + virtual void notifyObservers() {} + virtual void dropData(const char* /*a_string*/) {} + virtual size_t size() { return 0; } + virtual QVariant value(int /*a_row*/, int /*a_column*/) const { return "Invalid"; } + virtual void setValue(int /*a_row*/, int /*a_column*/, const QVariant& /*a_value*/) {} - // No need to call this directly, it should be called and hooked up by the UI code for the table - void RegisterCallbackOnChange(void(*a_callback)(void *data), void* a_callbackData) - { - m_updateCallback = a_callback; - m_callbackData = a_callbackData; - } + // No need to call this directly, it should be called and hooked up by the UI code for the table + void RegisterCallbackOnChange(void(*a_callback)(void *data), void* a_callbackData) + { + m_updateCallback = a_callback; + m_callbackData = a_callbackData; + } - // Column names/titles - std::vector m_columnNames; - std::vector m_columnTypes; - bool m_readOnly; - int m_currentRow; - void(*m_updateCallback)(void* data); - void* m_callbackData; + // Column names/titles + std::vector m_columnNames; + std::vector m_columnTypes; + bool m_readOnly; + int m_currentRow; + void(*m_updateCallback)(void* data); + void* m_callbackData; }; @@ -49,67 +49,68 @@ class GenericTable : public GenericTableBase { public: - // When using, terminate argument list with an argument of 0 - GenericTable(bool a_readOnly, const char* a_str1 = 0, ...) : GenericTableBase(a_readOnly) - { - va_list args; - va_start(args, a_str1); - const char* str = a_str1; - while (str) - { - m_columnNames.push_back(std::string(str)); - m_columnTypes.push_back((QVariant::Type)va_arg(args, int)); - str = va_arg(args, const char*); - } - va_end(args); - } + // When using, terminate argument list with an argument of 0 + GenericTable(bool a_readOnly, const char* a_str1 = 0, ...) : GenericTableBase(a_readOnly) + { + va_list args; + va_start(args, a_str1); + const char* str = a_str1; + while (str) + { + m_columnNames.push_back(std::string(str)); + m_columnTypes.push_back((QVariant::Type)va_arg(args, int)); + str = va_arg(args, const char*); + } + va_end(args); + } - void push_back(RowType item) - { - m_data.push_back(item); - } + void push_back(RowType item) + { + m_data.push_back(item); + } - size_t size() - { - return m_data.size(); - } + size_t size() + { + return m_data.size(); + } - QVariant value(int a_row, int a_column) const - { - return m_data[a_row].value(a_column); - } + QVariant value(int a_row, int a_column) const + { + return m_data[a_row].value(a_column); + } - void setValue(int a_row, int a_column, const QVariant& a_value) - { - updateData(a_row, a_column, a_value); - } + void setValue(int a_row, int a_column, const QVariant& a_value) + { + updateData(a_row, a_column, a_value); + } - bool updateData(uint32_t a_row, uint32_t a_column, const QVariant& a_val) - { - if (m_readOnly) - return false; - m_data[a_row].setValue(a_column, a_val); - if (m_updateCallback) - m_updateCallback(m_callbackData); - notifyObservers(); - return true; - } + bool updateData(uint32_t a_row, uint32_t a_column, const QVariant& a_val) + { + if (m_readOnly) + return false; + m_data[a_row].setValue(a_column, a_val); + if (m_updateCallback) + m_updateCallback(m_callbackData); + notifyObservers(); + return true; + } - // When making changes to the table, create a Transaction object at the - // beginning of the code block that surrounds the code that is making the changes - // (currently everything is assumed to be single threaded) - class Transaction : private NonCopyable - { - public: - explicit Transaction(GenericTable& a_parent) : m_parent(a_parent) {} - ~Transaction() { if (m_parent.m_updateCallback) m_parent.m_updateCallback(m_parent.m_callbackData); } - private: - GenericTable& m_parent; - }; + // When making changes to the table, create a Transaction object at the + // beginning of the code block that surrounds the code that is making the changes + // (currently everything is assumed to be single threaded) + class Transaction : private NonCopyable + { + public: + explicit Transaction(GenericTable& a_parent) : m_parent(a_parent) {} + ~Transaction() { if (m_parent.m_updateCallback) m_parent.m_updateCallback(m_parent.m_callbackData); } + private: + GenericTable& m_parent; + }; private: - std::vector m_data; + std::vector m_data; }; #endif // GENERIC_TABLE_H +