Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Time Strip swimlane height and label column width should be user settable #7957

Open
charlesh88 opened this issue Dec 11, 2024 · 3 comments
Open
Assignees

Comments

@charlesh88
Copy link
Contributor

charlesh88 commented Dec 11, 2024

Is your feature request related to a problem? Please describe.
Allow Time Strip label column width and swimlane heights to be set by the user.

Describe the solution you'd like
Include a UI control when editing a Time Strip that lets the user set desired width of the label column and height of each swimlane. The example below shows a possible design solution utilizing draggable edge controls, similar to how Flexible Layout editing works.
Screenshot 2024-12-11 at 2 39 37 PM

This is needed for Events and Commands in Time Strips enhancement.

Testing Instructions

  1. Create a Time Strip view.
  2. Drag a plan into the view, and observe it should take up the full view.
  3. Drag a stacked plot with multiple plots into the view, and observe that the objects split the vertical space and that the stacked plot inserts scaled based on the number of plots in composition.
  4. Drag other objects into the view, and observe that all objects scale to fit the vertical space.
  5. In edit mode, see that you can drag the handles between the swimlanes to adjust the vertical spacing of each swimlane.
  6. Save, navigate away, navigate back, and observe the swimlane vertical adjustments are retained.
  7. In edit mode, see that you can drag the handles between the swimlane labels and the swimlane content, to adjust the horizontal spacing between all labels and all content equally.
  8. Save, navigate away, navigate back, and observe the swimlane horizontal adjustments are retained.
  9. In edit mode, re-order swimlanes via the Elements Tab in Inspector, to see each swimlane retains its vertical spacing.
  10. Save, navigate away, navigate back, you know the drill.
  11. Remove objects and observe the other swimlanes adjust to fill the total vertical height of the time strip view.
  12. Save, navigate away, navigate back, you know the drill.
  13. Try to break it by doing this in a display layout, with various types of objects, etc. 😰
@charlesh88
Copy link
Contributor Author

charlesh88 commented Dec 18, 2024

Digging into this a bit, I recommend the following:

  • We should consider storing all user-set widths and heights as percentages instead of pixels. This would allow a pivot into flex-height Time Strips, which would be advantageous. We could still do fixed-height TS's (if desired) by simply setting an explicit height on the overall c-timeline-holder container. Flex-height TS's might require the user to be able to set a minimum px height on each swimlane though.
  • We should convert the TS layout approach to use a single grid at the highest level, on c-timeline-holder.
    • Punting on this idea. The markup makes this impractical, we'd have to use even more display:contents assignation to make it work.

@charlesh88
Copy link
Contributor Author

charlesh88 commented Jan 15, 2025

Just pushed changes to issue/7957-adjustable-swimlane-size branch.

  • timeline-holder now set to 100% height.
  • c-swimlane now space-fills available vertical space, and provides overflow scroll.
  • Screenshot below shows where user-defined heights should be set.
  • Smoke tested in Plan and Gantt views and works as expected.

Image

@charlesh88
Copy link
Contributor Author

Just pushed changes to issue/7957-adjustable-swimlane-size branch.

  • Column resizing now shows the horizontal resize handle on the Time axis swimlane only. Handle uses :height from the extended overlay lines to extend across all swimlanes.
Image

TODOs

  • Fix regressions in Plan/Gantt view affecting swimlane overflow handling. Need to apply per-swimlane overflow: auto only when in Time Strip.

@davetsay davetsay mentioned this issue Mar 6, 2025
3 tasks
@davetsay davetsay self-assigned this Mar 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants