SmartTableLog.h

5 categories, split by the question a reader is asking.

Source/SmartTables/Public/SmartTableLog.h

Turn on the one that matches what you are chasing and nothing else comes with it. The console takes one category at a time: Log LogSmartTablesData Verbose for where the values come from, Log LogSmartTablesLayout Verbose for where the columns are, Log LogSmartTablesSort Verbose for what order the rows are in, Log LogSmartTablesInput Verbose for how the table was reached, and Log LogSmartTables Verbose for style assets, the palette and the busy state.

File
SmartTableLog.h
Members
5

Log categories 5

LogSmartTablescategory
SMARTTABLES_API DECLARE_LOG_CATEGORY_EXTERN( LogSmartTables, Log, All )

The widget itself: the style it takes up, the wrapper class it draws its rows in, and whether it is busy.

Also the landing place for a line none of the other four claims: a palette edit sweeping the open editor, a cell animation that is not there, a refusal that fits nowhere else.

LogSmartTablesDatacategory
SMARTTABLES_API DECLARE_LOG_CATEGORY_EXTERN( LogSmartTablesData, Log, All )

Where the values come from: models, bindings, schemas, and the presentation a model hands over.

The category for a table drawing the wrong thing, or drawing nothing at all. A binding that resolves to nothing says so here, along with a DataTable carrying no row struct and a filter that moved the row set.

LogSmartTablesLayoutcategory
SMARTTABLES_API DECLARE_LOG_CATEGORY_EXTERN( LogSmartTablesLayout, Log, All )

Where the columns are: widths, resizes, header rebuilds, show and hide, reorder, the stored layout.

The one to turn on for a column at the wrong width, a column that has gone missing, or a stored layout that did not come back the next time the screen opened.

LogSmartTablesSortcategory
SMARTTABLES_API DECLARE_LOG_CATEGORY_EXTERN( LogSmartTablesSort, Log, All )

What order the rows are in: the sort spec, a dispatch and its result, superseded sorts, and a refused second level that could move no row.

A sort is the one thing here that stays outstanding. It has a token, a worker, and a result coming back a frame or more later, and that run of lines is unreadable mixed in with binding resolution.

LogSmartTablesInputcategory
SMARTTABLES_API DECLARE_LOG_CATEGORY_EXTERN( LogSmartTablesInput, Log, All )

How the table was reached: selection, focus, scrolling, drags, and the intents a pad or a button calls.

A pad wired to ScrollRowIntoView and OpenRowMenu reads back here exactly as a mouse doing the same thing. The pointer gestures log here too, since a drag has no function that stands in for it.