Skip to content
  • Daniel Boles's avatar
    Box, Grid: Improve various bits of documentation · b0fdaf3b
    Daniel Boles authored
    Issue #1495 showed that the docs of GtkGrid retain outdated implications
    that (as was once, but is no longer, the case) it is intended to replace
    GtkBox, by discussing HfW and widget properties in a way that suggests
    GtkBox can't handle them. But of course it does, and it's preferable for
    simple single-row/column cases. Worse, we said GtkGrid “provides exactly
    the same functionality” for the latter case, but the original point of
    that Issues was that it doesn’t, at least for CSS positional selectors!
    
    Box:
    • Use an actually meaningful @Short_description.
    • Remove unhelpful @See_also references to unrelated containers.
    • Remove references to “rectangular area”: it might be another shape
      via CSS, or “rectangular” might falsely imply 2 dimensions of children.
    • Mention Orientable:orientation.
    • Emphasise usefulness of :[hv]align for allocating in the other axis.
    • Don’t say that Grid “provides exactly the same functionality” for a
      single row or column, since (A) it is overkill for that case and (B)
      said Issue proved that it *doesn’t* for CSS child order, for example.
    • Note in the child properties that are remove in master that we have
      better, preferred alternatives available now in GtkWidget/CSS props.
      There’s no nice way to deprecate these, though they’re gone in GTK+ 4.
    • Correct a copy-paste-o from the blurb of :expand to :fill.
    
    Grid:
    • Remove references to deprecated widgets: GtkTable and Gtk[HV]Box.
    • Don’t dwell on widget properties and height-for-width in a way that
      wrongly implies that Box can’t handle those (or Grid can better). In
      fact, just get rid of that bit altogether: Box handles them fine, and
      Table is so old as to be not worth mentioning (in anything except the
      2 => 3 migration guide) and points to Grid in its deprecation notice.
    • Point to GtkBox as being preferred for the simple row/column use case.
    b0fdaf3b