topical media & game development

talk show tell print

actionscript-application-flickr-ui-Trashcan.mx

actionscript-application-flickr-ui-Trashcan.mx [swf] flex


  <?xml version="1.0" encoding="utf-8"?>
  <!--
          Trashcan
          
          The Trashcan is a component to receive other objects to delete.
  -->
  
  <mx:LinkButton xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" 
                  width="17" height="17"
                  dragEnter="handleDragEnter(event)"
                  dragDrop="handleDragDrop(event)">
                  
          <mx:Metadata>
                  [Event(name="trash",type="com.adobe.flickr.events.TrashcanEvent")]
          </mx:Metadata>
                  
          <mx:Script>
          <![CDATA[
                  import com.adobe.flickr.events.TrashcanEvent;
                  import mx.utils.ArrayUtil;
                  import mx.controls.Alert;
                  import mx.core.DragSource;
                  import mx.events.DragEvent;
                  import mx.managers.DragManager;
                  
                  public var useFormat:String = "";
                  public var initiator:Object = null;
                  
                  private function handleDragEnter( event:DragEvent ) : void
                  {
                          var ds:DragSource = event.dragSource;
                          
                          if( ds.hasFormat(useFormat) && event.dragInitiator == initiator ) {
                                  var dropTarget:LinkButton = LinkButton(event.currentTarget);
                                  DragManager.acceptDragDrop(dropTarget);
                          }
                  }
                  
                  private function handleDragDrop( event:DragEvent ) : void
                  {
                          var ds:DragSource = event.dragSource;
                          var items:Array = mx.utils.ArrayUtil.toArray(ds.dataForFormat(useFormat));
                          
                          var tce:TrashcanEvent = new TrashcanEvent(items);
                          dispatchEvent( tce );
                  }
          ]]>
          </mx:Script>                
          
  </mx:LinkButton>
  


(C) Æliens 27/08/2009

You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author.