Sorry, replied to the wrong one :(
--
Robert Rainwater
On 4/9/2001, 11:16:02 PM EST, Robert wrote about "[Dynapi-Dev] Draggable Box Help":
> Also if you are changing the .id you should call this.setID(id) so it
> will be correctly updated in the DynObject.all array.
> --
> Robert Rainwater
>
>
> On 4/9/2001, 5:51:39 PM EST, Chris wrote about "[Dynapi-Dev]
> Draggable Box Help":
>
>> Hello:
>
>> I am trying to create a draggable box (rubberband effect) for a
>> mapping
>> application to allow the user to zoom into a map. I have the
>> basic code to
>> allow the user to draw a box but I am only able to draw the box
>> in the
>> positive x,y quadrant (lower right), for example, drag the
>> cursor down and
>> to the right. I need to be able to draw a box in all 4
>> quadrants, for
>> example, drag the cursor up and to the left, up and to the right
>> and down
>> and to the left. I've tried a few things but just not getting it.
>
>> I have an example at the following address as well as my code below:
>> http://www.dubseestudios.com/dynapi.gui.draggablebox.html
>
>> Thanks
>> Chris
>
>> ///////////////////////// CODE //////////////////////////////////
>
>> <html>
>> <title></title>
>> <body>
>> <p>
>> <h3>dynapi.gui.draggablebox example</h3>
>> </p>
>> <p>
>> <em>Drag you cursor to see a rubberband type box</em>
>> </p>
>> <p>
>> <strong>Problem:</strong> Only able to draw box in the positive x,y
>> quadrant (lower right), for example, drag the cursor down and to
>> the right.
>> Need to be able to draw box in all 4 quadrants, for example, drag
>> the
>> cursor up and to the left.
>> </p>
>> </body>
>> <script src='/dynapi/src/dynapi.js'></script>
>> <script>
>> DynAPI.setLibraryPath('/dynapi/src/lib')
>> DynAPI.include('dynapi.api.browser.js')
>> DynAPI.include('dynapi.api.dynlayer.js')
>> DynAPI.include('dynapi.api.dyndocument.js')
>> DynAPI.include('dynapi.api.events.js')
>> </script>
>> <script>
>> myLayerX1 = new
>> DynLayer(null,null,null,null,null,'#000000','hidden')
>> myLayerY1 = new
>> DynLayer(null,null,null,null,null,'#000000','hidden')
>> myLayerX2 = new
>> DynLayer(null,null,null,null,null,'#000000','hidden')
>> myLayerY2 = new
>> DynLayer(null,null,null,null,null,'#000000','hidden')
>
>> myListener = new EventListener(DynAPI.document);
>
>> myListener.onmousedown=function(e) {
>> myLayerX1.moveTo(e.getX(), e.getY());
>> myLayerX1.setWidth(1);
>> myLayerX1.setVisible(true);
>
>> myLayerY1.moveTo(e.getX(), e.getY());
>> myLayerY1.setHeight(1);
>> myLayerY1.setVisible(true);
>
>> myLayerX2.moveTo(e.getX(), e.getY());
>> myLayerX2.setWidth(1);
>> myLayerX2.setVisible(true);
>
>> myLayerY2.moveTo(e.getX(), e.getY());
>> myLayerY2.setHeight(1);
>> myLayerY2.setVisible(true);
>> }
>
>> myListener.onmousemove=function(e) {
>> if (myLayerX1.visible) {
>> if (e.getX() >= myLayerX1.x) {
>> myLayerX1.setWidth(e.getX() -
>> myLayerX1.x);
>> myLayerX2.setWidth(e.getX() -
>> myLayerX1.x + 1);
>> myLayerX2.moveTo(myLayerX1.x,
>> myLayerX1.y + myLayerY1.getHeight());
>> } else {
>> // Negative x quadrant code
>> }
>
>> if (e.getY() >= myLayerY1.y) {
>> myLayerY1.setHeight(e.getY() -
>> myLayerX1.y);
>> myLayerY2.setHeight(e.getY() -
>> myLayerX1.y + 1);
>> myLayerY2.moveTo(myLayerX1.x +
>> myLayerX1.getWidth(), myLayerX1.y);
>> } else {
>> // Negative y quadrant code
>> }
>
>> myLayerX1.setHeight(1);
>> myLayerY1.setWidth(1);
>> myLayerX2.setHeight(1);
>> myLayerY2.setWidth(1);
>> }
>> };
>> myListener.onmouseup=function(e) {
>> myLayerX1.setVisible(false);
>> myLayerY1.setVisible(false);
>> myLayerX2.setVisible(false);
>> myLayerY2.setVisible(false);
>> };
>
>> DynAPI.onLoad = function() {
>> DynAPI.document.addChild(myLayerX1);
>> DynAPI.document.addChild(myLayerY1);
>> DynAPI.document.addChild(myLayerX2);
>> DynAPI.document.addChild(myLayerY2);
>> DynAPI.document.addEventListener(myListener);
>> };
>> </script>
>> </html>
>
>> //////////////////////////////////////////////////////////
>
>
>
>
>
>> _______________________________________________
>> Dynapi-Dev mailing list
>> [EMAIL PROTECTED]
>> http://lists.sourceforge.net/lists/listinfo/dynapi-dev
_______________________________________________
Dynapi-Dev mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/dynapi-dev