static void clearAllCounters(TestGraphicsWidget *widget) { if (!widget) return; widget->clearCounters(); TestLayout *layout = static_cast<TestLayout *>(widget->layout()); if (layout) { layout->clearCounters(); for (int i = layout->count() - 1; i >=0; --i) { QGraphicsLayoutItem *item = layout->itemAt(i); if (item->isLayout()) { // ### Not used ATM //TestLayout *lay = static_cast<TestLayout*>(static_cast<QGraphicsLayout*>(item)); //clearAllCounters(lay); } else { TestGraphicsWidget *wid = static_cast<TestGraphicsWidget *>(item); clearAllCounters(wid); } } } }