diff --git a/src/apps/debuganalyzer/gui/table/Table.cpp b/src/apps/debuganalyzer/gui/table/Table.cpp index 36f47c3f28..497c1f88b4 100644 --- a/src/apps/debuganalyzer/gui/table/Table.cpp +++ b/src/apps/debuganalyzer/gui/table/Table.cpp @@ -51,6 +51,13 @@ TableModelListener::TableRowsRemoved(TableModel* model, int32 rowIndex, } +void +TableModelListener::TableRowsChanged(TableModel* model, int32 rowIndex, + int32 count) +{ +} + + // #pragma mark - TableModel @@ -93,6 +100,16 @@ TableModel::NotifyRowsRemoved(int32 rowIndex, int32 count) } +void +TableModel::NotifyRowsChanged(int32 rowIndex, int32 count) +{ + for (ListenerList::Iterator it = fListeners.GetIterator(); + TableModelListener* listener = it.Next();) { + listener->TableRowsChanged(this, rowIndex, count); + } +} + + // #pragma mark - TableSelectionModel TableSelectionModel::TableSelectionModel(Table* table) @@ -496,6 +513,17 @@ Table::TableRowsRemoved(TableModel* model, int32 rowIndex, int32 count) } +void +Table::TableRowsChanged(TableModel* model, int32 rowIndex, int32 count) +{ + int32 endIndex = rowIndex + count; + for (int32 i = rowIndex; i < endIndex; i++) { + if (BRow* row = fRows.ItemAt(i)) + UpdateRow(row); + } +} + + void Table::ItemInvoked() { diff --git a/src/apps/debuganalyzer/gui/table/Table.h b/src/apps/debuganalyzer/gui/table/Table.h index d7417b2929..e064e57795 100644 --- a/src/apps/debuganalyzer/gui/table/Table.h +++ b/src/apps/debuganalyzer/gui/table/Table.h @@ -28,6 +28,8 @@ public: int32 rowIndex, int32 count); virtual void TableRowsRemoved(TableModel* model, int32 rowIndex, int32 count); + virtual void TableRowsChanged(TableModel* model, + int32 rowIndex, int32 count); }; @@ -49,6 +51,7 @@ protected: protected: void NotifyRowsAdded(int32 rowIndex, int32 count); void NotifyRowsRemoved(int32 rowIndex, int32 count); + void NotifyRowsChanged(int32 rowIndex, int32 count); protected: ListenerList fListeners; @@ -118,6 +121,8 @@ private: int32 rowIndex, int32 count); virtual void TableRowsRemoved(TableModel* model, int32 rowIndex, int32 count); + virtual void TableRowsChanged(TableModel* model, + int32 rowIndex, int32 count); private: class Column;