rip out the canvas

akkartik
Jan 1, 2024, 12:03 AM
URM35DJS7V3O76W5HLLQLE65DR5GLJ3K7A5FHRHS3VDDXAEFLF3QC

Dependencies

  • [2] 4QFVRJ5U get rid of pane transition animations
  • [3] WICFZ4UZ 'clear' button now clears the entire pane
  • [4] IUOZ4YHC use the obvious name for the font global
  • [5] K2X6G75Z start writing some tests for drawings
  • [6] RU4HIK43 Merge lines.love
  • [7] FIUQJVL2 first draft of load/save buttons
  • [8] PN6VP3LV escape hatch when print is overridden
  • [9] KKQKPGCI resolve conflicts
  • [10] SGMA5JLE save the list of tests in repo
  • [11] 7RIDCIVG handle scripts that change the font
  • [12] ADXY3K5Z wire up new-style car.* handlers
  • [13] N2NUGNN4 include a brief reference enabling many useful apps
  • [14] 3QNOKBFM beginnings of a test harness
  • [15] SIASJPGR save the list of open files across restart
  • [16] 73OCE2MC after much struggle, a brute-force undo
  • [17] JOPVPUSA editing source code from within the app
  • [18] FS2ITYYH record a known issue
  • [19] RBWTXOQS get rid of example screens
  • [20] G42WRYFR new handler: mousemoved
  • [21] VVGWHJBZ fix app identity so successive versions share data
  • [22] VXRYVZ74 Merge text.love
  • [23] YT7NMQ6Z delete dead code
  • [24] 4YDBYBA4 clean up memory leak experiments
  • [25] LXTTOB33 extract a couple of files
  • [26] JV27LDDK sliders for font size and color settings
  • [27] HVXZLNCC send errors from event handlers to output editor
  • [28] AVTNUQYR basic test-enabled framework
  • [29] OL7ZCZWD Merge text.love
  • [30] SJXIMERS type out a filename to load/save
  • [31] 2CFLXLIE Merge text.love
  • [32] 2CEAF7YR resolve conflicts
  • [33] 4GX6NAY4 some very basic animations for switching panes
  • [34] LXR2FNDC resolve conflicts
  • [35] VXORMHME delete experimental REPL
  • [36] QMRQL2FO resolve conflicts
  • [37] VLTU33KW resolve conflicts
  • [38] GVX7YSQY initial script after splitting up text-zoom
  • [39] FM5LDKGT Merge text.love
  • [40] 72OBZ3VM bundle support for .wav files
  • [41] UUAIVZ4U 2 bugfixes in font rendering
  • [42] 66X36NZN a little more prose describing manual_tests
  • [43] TBTRYEBP Merge lines.love
  • [44] ED4Z6ORC cleaner API for file-system access
  • [45] 2Q437U4F starting to experiment with animated pane transitions
  • [46] VUF2SX7B implement carousel buttons for inserting/switching current pane
  • [47] I52S4E5F running `print` now appends to output editor
  • [48] RK2ASPN7 add lots of buttons to the toolbar
  • [49] ZLJYLPOT Merge lines.love
  • [50] LGIEVJE6 activate buttons for some time
  • [51] W4EQ6IW4 simplify state management for menus
  • [52] UEG224LH debug animations
  • [53] R5QXEHUI somebody stop me
  • [54] RJPNFXVQ new fork: a personal dashboard for mobile devices
  • [55] Q6RXCILQ Merge text.love
  • [56] OGUV4HSA remove some memory leaks from rendered fragments
  • [57] 5RUFNRJO start of the visual skeleton
  • [58] BJ5X5O4A let's prevent the text cursor from ever getting on a drawing
  • [59] E75L5QGU ok/cancel buttons in file dialog
  • [60] XX7G2FFJ intermingle freehand line drawings with text
  • [61] 6DJMOJKE support event handlers
  • [62] CAG7PP5Y Merge text.love
  • [63] CE4LZV4T drop last couple of manual tests
  • [64] ESOJS6ZW extract a function
  • [65] OOSUBWKX subject people to a tutorial
  • [66] TVCPXAAU rename
  • [67] YV2GBDNW preserve settings across restart
  • [68] BLWAYPKV extract a module
  • [69] 57HKHZ7Z include the tool that's mentioned in representation.md
  • [70] VHQCNMAR several more modules
  • [71] 4OMG2P5E isolate editor UI from some app changes
  • [72] PRE6XPRN responsively increase/decrease font height
  • [73] SIJ5I4NZ extract a helper for buttons
  • [74] TLOAPLBJ add a license
  • [75] W3RRTO4P extract a second helper for buttons
  • [76] OTIBCAUJ love2d scaffold
  • [77] IP4LD33D mouse events for scrollbar
  • [78] KKMFQDR4 editing source code from within the app
  • [79] 36Z442IV back to commit 8123959e52f without code editing
  • [80] 6VJTQKW7 start supporting LÖVE v12
  • [81] PJ5PQAQE record support for multiple versions
  • [82] RSZD5A7G forgot to add json.lua
  • [83] EZHO4TSW new file-system format for freewheeling apps
  • [84] VEAVIL4X resize handler
  • [85] 6LJZN727 handle chords
  • [86] 2DVVKKVA flesh out Readme
  • [87] ROYQO45B mount old location of screens if possible
  • [88] OC4P6P36 greatly simplify slider implementation
  • [89] 6RYGW5H3 bugfix: output border color
  • [90] MZ3DMYPD start sketching out a scrollbar
  • [91] TFUNIT6M resolve conflicts
  • [92] 5LN2NUSE resolve conflicts
  • [93] D2GCFTTT clean up repl functionality
  • [94] LRDM35CE app running again
  • [95] LWPFEZBI Merge lines.love
  • [96] GAKJROFZ ahh, got the background color sliders working
  • [97] ZENSSO3D pass remaining love handlers through
  • [98] VP5KC4XZ Merge lines.love
  • [99] SW5GN5LP suggest a default layout for freewheeling apps
  • [100] PUXFYOQ4 rename a function
  • [101] CZQ3NJ4N Merge text0
  • [102] T4FRZSYL delete an ancient, unused file
  • [103] 4SR3Z4Y3 document the version of LÖVE I've been using
  • [104] WR2WMEPE implement 'Run' button
  • [105] 7JEYXICU resolve conflicts
  • [106] D43U7GQ4 alter on-disk representation (manifest files)
  • [107] QLJY3CKC bugfix: use border color in scrollbars
  • [108] GFBOJWNE resolve conflicts
  • [109] 2L5MEZV3 experiment: new edit namespace
  • [110] 3PSFWAIL Merge lines.love
  • [111] QD4LOFQR Merge text.love
  • [112] Z5M23NTK implement second, 'output' editor
  • [113] 5OVKHVY6 nice way to make on.* handlers more discoverable
  • [114] 47VXAH2H delete some old code
  • [115] KMSL74GA support selections in the source editor
  • [116] 5MEJ7XNH lay out buttons based on device dimensions
  • [117] CMZDG7CJ bugfix: tapping in scrollbar area
  • [118] ZM7NOBRM new fork: carousel shell
  • [119] VHUNJHXB Merge lines.love
  • [120] VAVXKWZV aggregate global state inside a 'pane' object
  • [121] VSGPLJFA resolve conflicts
  • [122] GWLETNMW Mike's suggested button layout
  • [123] NVZTMKER partition handlers between screen regions
  • [124] ORKN6EOB Merge lines.love
  • [125] 6MQCFHXM remember when someone deletes an example
  • [126] BULPIBEG beginnings of a module for the text editor

Change contents

  • file deletion: 0042-draw_canvas (----------)
    [5.2][5.163:203](),[5.203][5.204:204]()
    draw_canvas = function()
    if Current_pane.canvas == nil then return end
    love.graphics.setBlendMode('alpha', 'premultiplied')
    love.graphics.setColor(1,1,1,1)
    love.graphics.draw(Current_pane.canvas, 0,0)
    love.graphics.setBlendMode('alpha')
    end
  • edit in 0075-clear_pane at line 4
    [3.145][3.145:172]()
    Current_pane.canvas = nil
  • edit in 0051-run_button at line 8
    [5.463][5.463:591](),[5.591][5.0:43]()
    Current_pane.canvas = love.graphics.newCanvas()
    love.graphics.setCanvas(Current_pane.canvas)
    love.graphics.push('all')
    love.graphics.setBackgroundColor(1,1,1)
  • edit in 0051-run_button at line 22
    [5.1302][5.1302:1354]()
    love.graphics.pop()
    love.graphics.setCanvas()
  • edit in 0045-Current_pane at line 2
    [5.121][5.121:136]()
    canvas = nil,
  • edit in 0012-on.draw at line 11
    [5.138][5.890:905](),[5.4113][5.890:905](),[5.1793][5.890:905]()
    draw_canvas()
  • replacement in 0012-on.draw at line 12
    [5.3021][5.1831:1893]()
    if car.draw then call_protected(car.draw) end -- off canvas
    [5.3021]
    [4.73]
    if car.draw then call_protected(car.draw) end