Commit Graph

413 Commits

Author SHA1 Message Date
Michael Bayne db1a0f59c9 Don't constrain tooltips to the view bounds because they won't repaint
properly and in happy virtual land it's not so necessary any longer.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2466 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-26 00:48:47 +00:00
Michael Bayne dac610797e Added a means by which the default base tileset can be set.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2465 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-25 22:26:25 +00:00
Michael Bayne d86ddce45d More delayed block loading improvements: resolve fewer blocks, use the
same mechanism for including and excluding blocks.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2464 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-25 22:13:14 +00:00
Michael Bayne cca2a9cd16 Beginnings of support for asynchronous scene image data resolution.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2462 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-25 18:22:52 +00:00
Michael Bayne a03ad10f8d Beginnings of support for asynchronous resolution of scene image data.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2461 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-25 18:22:26 +00:00
Michael Bayne 082af9eedd Add support for putting scene object into warning mode.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2454 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-25 01:15:00 +00:00
Michael Bayne 5d5a0e8173 Allow base tiles to be cleared out; clear out the fringe when a base tile
is updated because the caller will need to recompute it.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2453 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-24 21:27:23 +00:00
Michael Bayne fc9a5dc7e2 Minor restructuring.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2452 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-24 21:12:10 +00:00
Michael Bayne f894a18bcb Fixed bug with object removal. Added sanity checking code in addObject()
to prevent duplicate objects from being added.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2451 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-24 21:11:23 +00:00
Michael Bayne ea3adbb530 Use the compose() method which properly handles negative y values.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2448 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-23 00:45:24 +00:00
Michael Bayne 0eea772f57 Oh the delicacy of the negative numbers. Wasn't properly computing
neighbor and block keys and was thus booching object footprint coverage
computation.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2447 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-23 00:37:46 +00:00
Michael Bayne 995f33af84 Provide our view bounds to the radial menu services.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2445 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-22 22:00:51 +00:00
Michael Bayne 76cb19646c Use the default base tileset when computing fringe if an actual base tile
is not specified.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2444 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-22 20:36:11 +00:00
Michael Bayne 1274fbb7c0 Let's inform the derived classes of the delta rather than the new _vbounds
upper left which is something they're already much more likely to be
making use of directly.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2443 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-22 18:12:40 +00:00
Michael Bayne a555443c04 Log a stack trace to help us find out where this sort of thing happens if
it happens.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2442 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-22 01:57:44 +00:00
Michael Bayne 1da61b99c7 Disallow adding the same object in the same place twice.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2441 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-22 01:57:20 +00:00
Michael Bayne 6b0e816643 Dooh! We need to recompute our visible object set regardless of whether or
not new scene blocks were resolved.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2440 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-21 17:56:55 +00:00
Michael Bayne e628a8e429 Added support for specifying a default tileset for scenes.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2439 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-21 17:08:57 +00:00
Michael Bayne 0d740682db We need to be streamable.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2437 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-20 00:05:14 +00:00
Michael Bayne 5ae63595d0 Added toString() fixed broken getObjects().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2436 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-19 23:47:24 +00:00
Michael Bayne ac9fc9a35d Make blockwid and blockhei shorts and make them not be multiples of ten so
that we tease out any bugs that may have been hidden by uniform tiling.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2435 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-19 23:06:20 +00:00
Michael Bayne 3c94cd67f6 Various fixes to support negative tile coordinates; created sparse miso
scene model and associated business to store scene data in an arbitrary
set of blocks rather than fixed arrays; finally stuck a fork in scene
width and height as well as view width and height along with origin offset
and a few other now obsolete bits.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2434 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-19 22:40:34 +00:00
Michael Bayne 95b19feb51 The scene metrics are now *much* simpler.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2433 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-19 22:37:57 +00:00
Michael Bayne 299e0845bb Center on the center of the scene when it is first set. Adjust our view
bounds to preserve the current center point when we are resized. Deep
sixed "bounded" and some other needless fiddling.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2430 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-19 17:06:08 +00:00
Michael Bayne bdd1697a41 Don't repaint when we rethink, rearranged some things so that we can avoid
recomputing visible objects, etc. if no blocks were loaded or flushed.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2429 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-19 02:01:56 +00:00
Michael Bayne 7772cdc175 Make our bounds available.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2428 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-19 02:01:08 +00:00
Michael Bayne 626d59a718 Apparently revalidating ain't going to do it, so we recenter and rethink.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2427 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-19 01:04:57 +00:00
Michael Bayne 3abbd1c8af Removed old testing code. Whoopskidoodle!
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2425 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-19 00:56:35 +00:00
Michael Bayne d398c84a7b Pass the mouse event so that other information can be obtained.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2424 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-19 00:25:13 +00:00
Michael Bayne f0a1bf2311 Don't can all mouse button 1 presses; allow objects without actions to
become the hover object if derived classes really want it (like the
editor).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2423 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-18 23:19:13 +00:00
Michael Bayne ffb9e3b4e4 Added code to enable bounds checking of calls to index. Not enabled by
default because we can generally figure it out from the NPE and this gets
called a crapload so we don't want to negatively impact performance.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2422 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-18 23:18:30 +00:00
Michael Bayne 6e967c699c Was calculating footprint dimensions incorrectly.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2421 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-18 23:17:33 +00:00
Michael Bayne 7d58b4ed93 Fixed incorrect argument ordering.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2420 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-18 22:59:18 +00:00
Michael Bayne 81f90d1ee6 Fix bounding polygon calculation.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2419 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-18 22:59:04 +00:00
Michael Bayne a4d16abb4c Added code to support scene editing: adding and removing objects, updating
base and fringe tiles.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2418 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-18 18:33:31 +00:00
Michael Bayne 3a7f7f6bdb Allow an object to be relocated (which requires recalculation of our
cached screen bounds, etc.).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2417 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-18 18:33:07 +00:00
Michael Bayne 1182241d57 Removed highlighting code; cleaned up some other stuff.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2416 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-18 18:32:24 +00:00
Michael Bayne 50bf565485 Canned setBaseTiles().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2415 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-18 18:31:21 +00:00
Michael Bayne 27184f6ddd Fixed bug in footprint calculation.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2414 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-18 18:30:57 +00:00
Michael Bayne d5701962a3 The big fat bernie revamp! Er, big fat miso revamp rather:
- Combined SceneViewPanel and IsoSceneView into one happy panel.
- Ditched the DisplayMisoScene notion; the new MisoScenePanel now manages
  resolved scene information (like base, object and fringe tiles) itself
  so that it can...
- ...support scrolling scenes by keeping blocks of resolved base, fringe
  and object information loaded only for what is potentially visible
  rather than for the whole scene.

Other things were surely cleaned up or broken in the process to keep a
keen eye out.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2413 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-17 19:21:17 +00:00
Michael Bayne bae9fdf1e0 Exorcised scene width and height; make models unbounded by default;
cleaned up AStarPathUtil.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2407 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-12 02:14:52 +00:00
Michael Bayne d933605343 Moved object handling into base MisoSceneModel, created new
SectionedMisoSceneModel for storing info on a section of a larger scene.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2406 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-12 02:14:10 +00:00
Michael Bayne d987d66bf3 Whatever reason we had for assuming all off-screen tiles are passable,
that can't possibly be the right way to handle it. If you can't get there
by staying on the screen, you're not going.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2388 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-07 23:53:41 +00:00
Michael Bayne 4e1b4a00d8 Allow turning off the rendering of objects.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2387 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-07 23:32:47 +00:00
Michael Bayne 036104a7d5 If there's no base tile, it sure as hell ain't passable.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2386 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-07 22:04:39 +00:00
Michael Bayne 7c2c067439 Fill in black if there's no base tile at all.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2384 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-07 21:43:00 +00:00
Michael Bayne c8b14399c7 Added getColorizer() to allow derived classes to provide a colorizer for
use when obtaining object tiles.

Broke out display scene initialization into an init() method so that
derived classes can overrride getColorizer() and rely on their constructor
having already been called.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2368 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-01 02:17:58 +00:00
Michael Bayne 17b3922946 Rewrote the iso sorting algorithm yet again. Now it's less efficient but
actually works. (Or so we hope.) Yay!


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2348 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-03-30 02:15:13 +00:00
Ray Greenwell 152344f223 Merged grabNewObjects and prepareObjectList into one method:
refreshObjectList, so that we can remove objects as well as add them.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2301 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-03-10 09:24:04 +00:00
Ray Greenwell f15987477b made Cloneable
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2299 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-03-05 21:17:27 +00:00