Skip to content

sometimes, it won't fail

Pre-release
Pre-release
Compare
Choose a tag to compare
@peersuasive peersuasive released this 01 Feb 05:02
· 15 commits to master since this release
  • updated to JUCE 1.4.0

  • added class URL
    a wrapped InputStream object is returned by URL::createInputStream
    a progress callback can be set to watch or interrupt download progress (only for POST under Linux with CURL):

    local url = luce:URL("https://google.com")
    url:progress(function(byteSent, total)
      print("sent/total", byteSent, total)
      return true
    end
    local is = url:getInputStream(true)
    local data = is:readEntireStreamAsString()
  • created class ConnectionPool, to download many URLs in parallel
    this is a work in progress, there's no check on the number of provided URLs, so if you send 100 of them,
    there'll be 100 threads launched !

    local pool = luce:ConnectionPool()
    pool:reset{ 
      luce:URL("https://peersuasive.com"),
      luce:URL("https://beta.liego.fr")
    }
    pool:start(function(data)
        for idx,d in next,data do
            print(idx, #data)
        end
    end)

    (see header for more details)

  • added file dropping (FileDragAndDropTarget) support to ListBox, along with existing DragAndDropTarget

  • added new demo in examples/DropFiles

  • fixed compilation with XCode under OSX (10.7 min.)

  • added app bundles in examples for OSX

  • fixed StretchableLayoutResizeBar under OSX

  • started implementing JUCE's audio modules (only for Linux at the moment)

  • the following Component's properties will now be set to true when called without parameter:
    setVisible, setFocusContainer, setOpaque, setEnabled, setAlwaysOnTop, setWantsKeyboardFocus, setBroughtToFrontOnMouseFocus, setMouseClickGrabsKeyboardFocus, setRepaintsOnMouseActivity, toFront, moveKeyboardFocusToSibling, setPaintingIsUnclipped, setBufferedToImage

  • fixed LButton's paintButton callback crashing when using g (Graphics)

  • for applications requiring an external loop control, like uv or ev, method tick() is now available, via app:start_controlled():

    local tick = app:start_controlled(MainWindow)
    uv.loop.idle(function() if not(tick()) then uv.loop.stop() end)
    uv.loop.run()