Thank you Cheryl for linking this issue on #40468 (I didn't find this when researching for existing issues). I have briefly tested the PR and it seems perfect, though seeing `init_validators` made me think we should possibly have an ABC for the tab pages. This would be a separate issue, but I think there would be three main advantages: 1. We could enforce a more standard naming of page methods (`create_page_*` would become `create_page` and be called by the parent, for example) 2. We could share methods like `init_validators` (which would preferably be part of the class but I appreciate the need to move it in this PR) 3. We can also potentially remove the example `TabPage` as the ABC would serve as its own example Back to this issue, I didn't scrutinise it but the PR looks good and the "result" (user-facing) is exactly as I would propose based on #40468.
@epaine, thank you for taking a look at that PR and for your feedback. I agree with you that the changes can still be taken further than we've already done. `init_validators` was added after the initial refactoring and I'm not sure if we've gone back to it to really use it or any other input validators. There's another bug issue (#31306) that addresses the validation on configdialog, so maybe your ideas can be incorporated with that issue.