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

Reply via email to