bool Demo6Sample::handleDeleteRow(const CEGUI::EventArgs& e) { using namespace CEGUI; // get access to the widgets that contain details about the row to delete. MultiColumnList* mcl = static_cast<MultiColumnList*>(WindowManager::getSingleton().getWindow("Demo6/MainList")); Editbox* idxbox = static_cast<Editbox*>(WindowManager::getSingleton().getWindow("Demo6/ControlPanel/ColumnPanel/DelRowIdxBox")); // get index of row to delete. CEGUI::uint idx = atoi(idxbox->getText().c_str()); // attempt to delete the row, ignoring any errors. try { mcl->removeRow(idx); } catch (InvalidRequestException) {} // clear the row index box idxbox->setText(""); // event was handled. return true; }
bool Demo6Sample::handleDeleteRow(const CEGUI::EventArgs& args) { using namespace CEGUI; // get access to the widgets that contain details about the row to delete. MultiColumnList* mcl = static_cast<MultiColumnList*>(static_cast<const WindowEventArgs&>(args).window->getRootWindow()->getChild("MainList")); Editbox* idxbox = static_cast<Editbox*>(static_cast<const WindowEventArgs&>(args).window->getRootWindow()->getChild("ControlPanel/RowControl/DelRowIdxBox")); // get index of row to delete. CEGUI::uint idx = atoi(idxbox->getText().c_str()); // attempt to delete the row, ignoring any errors. CEGUI_TRY { mcl->removeRow(idx); } CEGUI_CATCH (InvalidRequestException) {} // clear the row index box idxbox->setText(""); // event was handled. return true; }