#1229 closed todo (done)

Prototype for custom drawing in the timeline

Reported by: Ichthyostega Owned by: Ichthyostega
Priority: grave Milestone: 0integration
Component: lumieraGui Keywords: roadmap gui connect design timeline
Sub Tickets: #1017, #1018 Parent Tickets: #1016, #1042, #1230

Description

The Timeline widget needs to be rewritten to work with GTK-3.
Use this as an opportunity to implement a prototype for custom drawing of regions, tracks and marker overlays in the timelines.

  • find a way to organise drawing code in the context of a recursive widget implementation
  • pick a suitable base GTK widget, which supports both
    • invoking a custom drawing function
    • attach nested sub-widgets at fixed positions

Change history (4)

comment:1 by Ichthyostega, at 2022-09-12T12:43:03Z

blocking: 1042, 10161016, 1042, 1230

comment:2 by Ichthyostega, at 2022-10-06T20:06:13Z

Keywords: timeline added

comment:3 by Ichthyostega, at 2023-03-17T23:02:54Z

Resolution: done
Status: newclosed

During the last years, this prototype has been built step by step, interwoven with a complete reorganisation of the GUI top-level context, and a rework of the Timeline UI.

  • we use the Gtk::Layout widget as foundation
  • this widget is both a container widget, while also offering a canvas for custom drawing
  • this allows to attach regular widgets with all features like theming, automatic layout, event handling and i18n
  • a special solution was devised to pick up CSS style information from a virtual widget path and use this to control our custom drawing code
  • we can now document a basic Timeline display with main tracks, ruler tracks, nested tracks and attached clips, styled by CSS rules and fully integrated with the desktop theme

comment:4 by Undercover Agent, at 2025-12-25T00:00:00Z

blockedby: 1017, 1018
blocking: 1016, 1042, 1230
Parent Tickets: 1016, 1042, 1230
Sub Tickets: 1017, 1018

Migration MasterTickets ⟼ Subtickets-plugin

Note: See TracTickets for help on using tickets.