packages feed

gruff-0.2: TODO

annoyments
  catch exceptions in worker threads (eg: disk full)
  figure out where rare libpango segfault is coming from - threading?

enhancements
  navigation
    configurable zoom mode: center on click vs expand about click
    continuous zoom mode while button is pressed
    configurable zoom speed
    undo/history tree navigation
    log annotation and search
    log browser view with filtering
    log level settings (Set Loggable ?)
  persistence
    image save as png (or ppm?) when done
    save/load viewing parameters in a common plain text format
  colouring
    multiple colouring modes - minimal / rainbow / hypertile
    gui for each colouring mode with appropriate persistence
  memory cache
    option for maximum memory cache size
    warn when memory cache is not enough for window settings
    memory cache model - LRU or similar?
  disk cache
    option for maximum disk cache size
    option to disable disk cache for casual exploratory browsing
    disk cache management: keep most expensive vs most used?
    tile usage statistics database
  tile renderer
    compute tile cost metrics (iteration stats, boundary size, bit bepth)
    which quadrants are interior/exterior etc
    re-use pixels from parent/child tiles in renderer
    don't compute known-interior tiles
  features
    feature overlay in browser window
    feature overlay save as svg (save image as png and embed it too?)
    scan whole image for atoms, subdivide for more
    draw external rays in feature overlay
    draw internal rays in feature overlay
    feature database - try lookup before calculating, cache results
  algorithms
    child finding algorithm
    parent finding algorithm - need to research
    box counting fractal dimension estimates
    non-slow angled internal address to external angle
  misc
    tiled rendering mode for huge images without seams
    use custom icon for status dialog window
  scripting
    haskell scripting with edsl/library for common tasks
    command line flag to load a script at startup
    interpreter REPL window

internal
  split MuAtom into separate modules
  backport appropriate algorithms to 'ruff'
  source code documentation