Yes, your suggestion works, but…
If you do that, you can no longer set the status of the parent item (which still has a visible checkbox). If you set the status of that parent item to “None”, then it’s parent’s checkbox can not be checked.
I think that is because OO includes the following logic: “IF all the children’s checkboxes are checked, then check the parent’s checkbox”. Automatically. So the user doesn’t have to do it.
Since the children’s statuses (is this a word???) are set to “None”, are not visible and can not be checked, the program refuses to check the parent’s checkbox.
1- Remove the “set-the-parent’s-checkbox-status-based-on-the-status-of-the-children’s-checkboxes” logic. I can do it myself. Or, at least, make that behaviour user-selectable via a global preference.
2- About the use of checkboxes. As far as I am concerned (and I realize that not everybody might view this like me) the usual situation is this: I am in the middle of a 10 million page (item) document when I decide that I need to create a small checklist. I cannot turn checboxes ON, set the status to “None” for 9,999,995 items just to have those few items with checkboxes! ;-)
OO doesn’t let me do the opposite of what you suggested, i.e. “Hide Status Checkboxes” for the whole document and change the status to “Visible” (or “Unchecked” or “Checked”) for a few items.
Alternatively, I could create that small checklist externally in another OO document and embed it (or link it) into the main one. But there are other problems doing that.