screens now run

akkartik
Jan 1, 2024, 12:59 AM
LRG2TNA754SH2RLFUK5K3Y3XBWYR5FUVJGJZ6ZJXB3NJOKEP7M4AC

Dependencies

  • [2] SIASJPGR save the list of open files across restart
  • [3] WCYQN74I bugfix: update handlers on new/delete
  • [4] PN6VP3LV escape hatch when print is overridden
  • [5] GVX7YSQY initial script after splitting up text-zoom
  • [6] V2G455IR clean up a debug print
  • [7] 6MQCFHXM remember when someone deletes an example
  • [8] 2AZCZD6X Lua Carousel now tested to load/save screens from/to save dir.
  • [9] W4EQ6IW4 simplify state management for menus
  • [10] DZLFYLDU manually save settings on change to loaded filenames
  • [11] 5RUFNRJO start of the visual skeleton
  • [12] OGDDLU5B close all menus when tapping any button
  • [13] SIJ5I4NZ extract a helper for buttons
  • [14] I52S4E5F running `print` now appends to output editor
  • [15] ARLTID7G replace some calls with my names
  • [16] RK2ASPN7 add lots of buttons to the toolbar
  • [17] 6ARK6HWF bugfix: avoid overflowing 'delete' button in some situations
  • [18] RJPNFXVQ new fork: a personal dashboard for mobile devices
  • [19] OOSUBWKX subject people to a tutorial
  • [20] NV4WC3K4 new example: interactivity
  • [21] VUF2SX7B implement carousel buttons for inserting/switching current pane
  • [22] MJ6KKFVT give example panes a name
  • [23] ROYQO45B mount old location of screens if possible
  • [24] 5MEJ7XNH lay out buttons based on device dimensions
  • [25] HVXZLNCC send errors from event handlers to output editor
  • [*] R5QXEHUI somebody stop me
  • [*] ZM7NOBRM new fork: carousel shell

Change contents

  • file addition: abbreviations (----------)
    [5.1]
    -- Some abbreviations to reduce typing.
    g = love.graphics
    pt, line = g.points, g.line
    rect, poly = g.rectangle, g.polygon
    circle, arc, ellipse = g.circle, g.arc, g.ellipse
    color = g.setColor
    min, max = math.min, math.max
    floor, ceil = math.floor, math.ceil
    abs, rand = math.abs, math.random
    pi, cos, sin = math.pi, math.cos, math.sin
    touches = love.touch.getTouches
    touch = love.touch.getPosition
    audio = love.audio.newSource
  • file addition: 0159-eval_all (----------)
    [27.2]
    eval_all = function()
    for _,f in ipairs(love.filesystem.getDirectoryItems(Directory)) do
    local buf = love.filesystem.read(Directory..f)
    local status, error = live.eval(buf, f)
    if not status then
    return error
    end
    end
    end
  • edit in 0102-send_errors_to_output at line 9
    [6.911]
    [6.911]
    Show_code = true
  • edit in 0076-delete_pane_button at line 5
    [6.294][6.779:883](),[6.301][6.779:883](),[6.713][6.779:883](),[6.350][6.779:883]()
    if Current_pane.example_name then
    Deleted_example_panes[Current_pane.example_name] = true
    end
  • edit in 0076-delete_pane_button at line 13
    [6.595][3.94:126]()
    car = Current_pane.car or {}
  • edit in 0061-new_pane_button at line 5
    [6.541][3.142:168]()
    Current_pane.car = car
  • edit in 0061-new_pane_button at line 8
    [6.6144][3.169:181]()
    car = {}
  • edit in 0060-next_pane_button at line 9
    [6.566][6.1388:1414](),[6.728][6.1388:1414](),[6.6572][6.1388:1414]()
    Current_pane.car = car
  • edit in 0060-next_pane_button at line 11
    [6.6661][6.1415:1447]()
    car = Current_pane.car or {}
  • replacement in 0060-next_pane_button at line 13
    [6.6672][6.567:571]()
    end
    [6.6672]
    end
  • edit in 0059-previous_pane_button at line 9
    [6.591][6.1448:1474](),[6.779][6.1448:1474](),[6.7115][6.1448:1474]()
    Current_pane.car = car
  • edit in 0059-previous_pane_button at line 11
    [6.7204][6.1475:1507]()
    car = Current_pane.car or {}
  • replacement in 0059-previous_pane_button at line 13
    [6.7215][6.592:596]()
    end
    [6.7215]
    end
  • replacement in 0051-run_button at line 11
    [6.835][6.1142:1193]()
    local status, result = live.eval(buf, 'editor')
    [6.835]
    [6.876]
    local error = eval_all()
  • replacement in 0051-run_button at line 13
    [6.925][4.193:215](),[4.215][6.972:990](),[6.972][6.972:990]()
    print = Real_print
    if result then
    [6.925]
    [6.990]
    if error == nil then
    Show_code = nil
    else
    print = Real_print
    clear_handlers()
  • replacement in 0051-run_button at line 19
    [6.1029][6.1029:1111]()
    table.insert(Current_pane.output_editor_state.lines, {data=tostring(result)})
    [6.1029]
    [6.1111]
    table.insert(Current_pane.output_editor_state.lines, {data=tostring(error)})
  • edit in 0011-on.initialize at line 14
    [2.1175]
    [2.1175]
    Current_pane_index = 1
    Current_pane = Panes[Current_pane_index]
    Current_pane.filename = 'main'
    one_time_load()
    else
    Current_pane_index = 1
    Current_pane = Panes[Current_pane_index]
  • edit in 0011-on.initialize at line 22
    [2.1180][6.2281:2347](),[6.2281][6.2281:2347]()
    Current_pane_index = 1
    Current_pane = Panes[Current_pane_index]