Skip to content
This repository has been archived by the owner on Oct 12, 2023. It is now read-only.

Properties to add to basic/important (from tutorial) #13

Open
and3md opened this issue Mar 15, 2021 · 1 comment
Open

Properties to add to basic/important (from tutorial) #13

and3md opened this issue Mar 15, 2021 · 1 comment
Assignees

Comments

@and3md
Copy link
Collaborator

and3md commented Mar 15, 2021

Most used:

  • TCastleVerticalGroup - Alignment
  • TCastleLabel - LineSpacing
  • TCastleImageControl - FullSize
  • TCastleUserInterface - FullSize

There are also some Custom* properties form TCastleButton but I think they should stay only on "All".

@michaliskambi michaliskambi self-assigned this Mar 16, 2021
michaliskambi added a commit to castle-engine/castle-engine that referenced this issue Mar 16, 2021
@michaliskambi
Copy link
Collaborator

I did the change we discussed with @and3md : the "Basic" tab is no longer something disjoint with "Layout". This makes it possible to add to "Basic" more useful properties, like FullSize, regardless of whether they are also on "Layout".

Internally:

  • The TCastleComponent.PropertySections now returns a set, which may be empty [] (for obscure stuff that was previously on "other" tab), may have one element like [psBasic] or [psLayout] or it may have 2 elements [psBasic, psLayout].

  • The last case, [psBasic, psLayout], is now used e.g. by

    • FullSize,
    • all 5 properties to control transformation of TCastleTransform (so in this case, "Layout" tab is a subset of "Basic"),
    • properties mentioned in the issue description by @and3md,
    • and some other -- some auto-sizing/alignment stuff for TCastleButton and TCastleLabel is now also in "Basic".

I also removed the "Other" tab, as it seems it doesn't really have much purpose -- after all you will find stuff from it also in "All" tab.

I have completely lost objectivity here :) Please help me if it can be improved more by moving some property here/there. I prefer to "err on the side of moving stuff to Basic" now.

But I know that I'd like to keep "Basic" tab useful. It should be useful for new people that open editor, add component X, and are interested in "what are basic properties I can adjust here". E.g. most people want to adjust TCastleLabel.Caption, or TCastleRectangleControl.Color or TCastleImageControl.URL as these components don't make much sense if you don't use these properties. That is why I invented this tab, as the "All" properties view is probably too overwhelming to actually learn the engine (it has stuff important mixed with unimportant, stuff from ancestor class mixed with stuff from final class).

I'm leaving it open so that @eugeneloza can hopefully simplify some tutorial text now :)

@michaliskambi michaliskambi removed their assignment Mar 16, 2021
@eugeneloza eugeneloza self-assigned this Mar 20, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants