Hi Jeff,
In version 4.0 you set the visibility condition on the COLDEF and that will hide or show the specified column (The issue for this is GRE-598).
>Can you not hide columns and if not, why does ColDef have a visibility condition? If you can, how?
I didn't check but I think that that was also possible in version 3.20 but you had to take care of hiding/showing both the COLDEF as well as the COL objects and you had to recompute colspan values in case that you were removing a column that is spanned by some row.
In other words, you have to make sure that the table structure stays valid so that the number of COLDEFS and the COL objects in all rows match (note that there can be less COL object on rows where COL objects have colspan set).
Best regards,
Alex