Sybren A. Stüvel
e15f4d1573
Added design notes for communication & file structure
2016-03-16 15:50:57 +01:00
Sybren A. Stüvel
aeae24e6bc
Allow the Blender Cloud browser to run full-screen
...
It no longer requires a 3D View, but can be run everywhere.
2016-03-15 17:09:27 +01:00
Sybren A. Stüvel
e16f069eb3
Added downloading of textures when clicking on a menu item
...
For this I made the operator a state machine; when its state is set to
'QUIT' it'll quit. Different states can have different OpenGL drawing
functions.
For now, to help development, the state is drawn in the bottom left corner.
2016-03-15 15:44:19 +01:00
Sybren A. Stüvel
5730f43848
Allow downloading to non-existant directory
2016-03-15 15:35:28 +01:00
Sybren A. Stüvel
7520421083
Download in larger chunks
2016-03-15 15:35:18 +01:00
Sybren A. Stüvel
012239a6c6
make is_cancelled() None-safe
2016-03-15 15:35:06 +01:00
Sybren A. Stüvel
d3e433b8b2
Using loop.call_later() to ensure short-running loop iteration
...
How we previously did things could cause us to miss certain calls, such
as calling 'future.add_done_callback()' callbacks.
2016-03-15 15:34:30 +01:00
Sybren A. Stüvel
e60853a211
Separated getting thumbnail info from downloading the thumbnail
...
Also added a TODO for future reference.
2016-03-15 14:23:11 +01:00
Sybren A. Stüvel
fc0fe9f651
Added TODO note.
2016-03-15 14:07:25 +01:00
Sybren A. Stüvel
5e237bea22
Explicitly support cancelling tasks.
...
The 'cancelled' status is now tracked by a Future that's passed to
different asychronous tasks. That way it is possible to cancel all
running tasks before browsing another Pillar node.
2016-03-15 14:05:54 +01:00
Sybren A. Stüvel
0174c28075
Setting up and using Python's logging framework.
...
It's dubious whether logging.basicConfig() should be called here, so
that call will probably be moved somewhere else.
2016-03-15 13:47:21 +01:00
Sybren A. Stüvel
e32d7de7a6
Earlier calling of thumbnail_loading callback
...
This means that some information isn't available to the callback yet,
but it can show the filename & spinner logo much sooner.
2016-03-14 18:12:29 +01:00
Sybren A. Stüvel
59401d9c41
Moved GUI to 3D viewport
...
We now draw the GUI using OpenGL in Python. This allows for much more
control on the Python side. It's still a prototype, and allows us to
test the features without depending on C support in Blender itself.
GUI code was taken from the Asset Flinger addon.
2016-03-14 17:23:56 +01:00
Sybren A. Stüvel
55eea4a9dc
Removed some test code
2016-03-14 11:44:05 +01:00
Sybren A. Stüvel
b156535ba1
Removed attempt at region redrawing, in preparation of custom OpenGL GUI
2016-03-14 11:43:56 +01:00
Sybren A. Stüvel
8533ac83ba
Added parallel downloading of thumbnails.
...
By using asyncio.gather, all thumbnail-downloading tasks are queued
simultaneously, and downloaded in parallel by the task executor.
2016-03-14 09:33:43 +01:00
Sybren A. Stüvel
b274faf12c
Transitioned from synchronous to asynchronous
...
Using the new 'async def' functionality in Python 3.5!
Still crappy GUI, we're going to replace that.
2016-03-11 17:52:12 +01:00
Sybren A. Stüvel
01b73a0439
Added browsing group_texture nodes
...
Added downloading of thumbnails too. Still primitive, thumbs are
re-downloaded every time and all I/O blocks the Blender UI.
2016-03-09 17:34:37 +01:00
Sybren A. Stüvel
0f8cededb2
Support reloading of the addon
2016-03-09 14:09:22 +01:00
Sybren A. Stüvel
6a5c8c7e9a
Added downloading of texture thumbnails
...
The downloading is multi-threaded, and streams directly to disk in 10kB
chunks.
2016-03-09 14:09:06 +01:00
Sybren A. Stüvel
80c9f15192
Added querying of project by URL and nodes for project/node
2016-03-08 17:56:32 +01:00
Sybren A. Stüvel
a5b7597853
Allow setting the Pillar server URL
2016-03-08 17:56:13 +01:00
Sybren A. Stüvel
b39ce06c75
Initial checkin
...
Allows authentication with the Blender ID addon, and requires the Pillar
SDK, but doesn't do much else.
2016-03-08 16:22:20 +01:00