1177 Commits

Author SHA1 Message Date
David Vierra
d3aa593a58 Remove incorrect super call in EditorTab.dealloc 2016-02-01 02:35:58 -10:00
David Vierra
0d46eed895 Separate TextureAtlas image building from GL resource creation
Fixes the problem with initial brush cursors not appearing by allowing
brushes to create cursor geometry before the world view is created.
2016-01-31 23:34:53 -10:00
David Vierra
ee16ede402 IntersectionBox now uses a list of selections rather than just two 2016-01-31 23:10:07 -10:00
David Vierra
483ab6ca05 Biome brush is now a chunkwise operation 2016-01-31 23:09:40 -10:00
David Vierra
49f4f70f74 Stop error dialog from displaying many times at once 2016-01-31 22:40:43 -10:00
David Vierra
5683804ab8 Rewrite UnionBox.contains_coords for subselection list 2016-01-31 20:15:21 -10:00
David Vierra
f3ff47a445 Implement positions() on SelectionBox (slow) 2016-01-31 20:14:40 -10:00
David Vierra
d897aaaaae Rewrite docstrings in SelectionBox 2016-01-31 20:14:11 -10:00
David Vierra
a7b0b64578 Fix divide-by-zero in rescaleProgress 2016-01-31 20:13:55 -10:00
David Vierra
76090f6d36 BrushCommand uses UnionBox instead of reduce to combine selections 2016-01-31 20:02:48 -10:00
David Vierra
2c7045d6fc ShapeFuncSelection creates coordinate array using mgrid, not indices 2016-01-31 20:02:28 -10:00
David Vierra
5a132b747f FillBlocksOperation skips sections outside the selection 2016-01-31 20:01:58 -10:00
David Vierra
2458f3cae5 Close gaps in dragged brushes by drawing lines 2016-01-31 20:01:42 -10:00
David Vierra
f82c7a5ea8 UnionBox now accepts any number of component selections 2016-01-31 20:01:10 -10:00
David Vierra
fa1ddb4bb1 BrushMode.applyToSelection now returns a progress iterator 2016-01-31 20:00:39 -10:00
David Vierra
daf2a91142 Brush tool is now draggable 2016-01-31 13:33:15 -10:00
David Vierra
3a4751b32a Change docstrings to numpydoc 2016-01-31 13:33:05 -10:00
David Vierra
91f9dfa560 Brush command combines multiple selections instead of using the first 2016-01-31 13:32:52 -10:00
David Vierra
d94b807648 Handle UnionBox components returning None from box_mask 2016-01-31 13:32:14 -10:00
David Vierra
ef9032bec2 Remove stray debuglog 2016-01-30 15:12:44 -10:00
David Vierra
b6d372e97e Rename 'destroy' methods to 'dealloc'
Removes confusion with QWidget::destroy, which is not virtual and thus
is never dispatched into Python code.
2016-01-30 15:10:43 -10:00
David Vierra
f5238b9941 In custom tracebacks, print object name if present 2016-01-30 14:34:09 -10:00
David Vierra
cf79a77524 MobSpawnsBlockMesh checks for barrier blocks being defined 2016-01-30 14:32:53 -10:00
David Vierra
358de35300 Avoid creating world view when world list is offscreen.
Seems to fix the access violations, but that's not at all certain.
Hours of bisecting and single-stepping also blamed the simple import of
one of the UI files for the violations.

In any case, this avoids doubly creating the world view both when the
window is initialized and when it is shown on screen.
2016-01-30 14:32:13 -10:00
David Vierra
7a622bcd32 Propagate 'readonly' flag to RegionFile
Makes sure region files are opened in read-only mode.
2016-01-30 14:32:12 -10:00
David Vierra
9809f27022 Disable a WorldView's rendering if an error occurs. 2016-01-30 14:32:12 -10:00
David Vierra
60923091a8 Add hard-coded flag for rendering without display lists. 2016-01-30 14:32:11 -10:00
David Vierra
6591ed97aa -debug enables ERROR_LOGGING and CONTEXT_CHECKING 2016-01-10 22:54:36 -10:00
David Vierra
c1d3240da6 KeyboardInterrupt no longer triggers the error handler dialog. 2016-01-10 22:54:18 -10:00
David Vierra
3ef06622e8 Remove unused variable 2016-01-10 22:53:51 -10:00
David Vierra
3ad11dc0c7 Assert display list is not None instead of is not truthy.
bool(array[0]) is not truthy but is still a valid display list.
2016-01-10 22:53:41 -10:00
David Vierra
346c945324 Add GL rendering profile to debug output 2016-01-10 22:52:56 -10:00
David Vierra
ee078dd988 Handle dirty flag on unparented entities.
Parenting the entity should automatically dirty the parent.
2015-12-20 06:11:24 -10:00
David Vierra
c367941304 Enable "View" button on world list. 2015-12-16 04:04:25 -10:00
David Vierra
136b6853c1 More work on "Choose folder..." button. 2015-12-16 04:04:16 -10:00
David Vierra
22675c5f12 Read-only worlds display "Read-only" in tab title. 2015-12-16 04:03:40 -10:00
David Vierra
ff0fb6762a Worlds may be opened read-only from the command line 2015-12-16 04:02:55 -10:00
David Vierra
3660cd6a75 Implement "Choose folder" button on world list 2015-12-13 00:44:19 -10:00
David Vierra
aefa3f774b Add coordinate inputs to block inspector 2015-12-07 19:16:21 -10:00
David Vierra
d299a9a37d Get NBT Editor working again after the switch to compiled ui files. 2015-12-07 12:25:24 -10:00
David Vierra
fd99c4c6b7 NBT Editor will look up names for numeric item IDs in "id" tags. 2015-12-06 16:59:03 -10:00
David Vierra
396653f58a Don't automatically remove tile entities when replacing blocks
Minecraft should be able to do that. I hope.
2015-12-06 16:58:16 -10:00
David Vierra
20bacee484 Exclude autogenerated pyfiles in ui/ 2015-11-27 17:41:32 -10:00
David Vierra
66524b4101 Compile all ui files using pyside-uic 2015-11-27 17:38:33 -10:00
David Vierra
193ea92b60 Fix Vanilla name<->state mappings not being overridden by FML ones correctly 2015-11-23 03:07:12 -10:00
David Vierra
86f7769fe1 Clean up some imports 2015-11-20 06:30:14 -10:00
David Vierra
4e55976088 Change [Tile]EntityRef.dirty to be consistent with all other dirty flags
I don't like how these are all properties. Most of the usages just set dirty=True, and the only time dirty=False is set is when the chunk is written or the scene node is redrawn.
2015-11-20 06:19:35 -10:00
David Vierra
ac5c61a37c Fix AttributeError when moving mouse over worldview after closing tab
There is probably something wrong with overloading QWidget.destroy like this. I should rewrite the entire thing in C++ and regain control over object destruction.
2015-11-18 19:41:14 -10:00
David Vierra
d6049cabd5 Move several .ui files to ui/dialogs and ui/widgets 2015-11-18 02:59:56 -10:00
David Vierra
c1bab59e71 Move configureblocksdialog to dialogs.configure_blocks
Sidenote: I am very impressed that PyCharm auto-organized my imports using my favored scheme - builtin modules, then third party modules, then application modules
2015-11-18 02:53:29 -10:00