예제 #1
0
 /// <summary>
 /// Fire the list item deleted event.
 /// </summary>
 /// <param name="item">Item to be moved.</param>
 public void CallItemDeletedEvent(ListObjectInfo item)
 {
     if (onDeleted != null)
     {
         onDeleted(item);
     }
 }
예제 #2
0
 /// <summary>
 /// Fire the list item closed event.
 /// </summary>
 /// <param name="item">Item to be moved.</param>
 public void CallItemClosedEvent(ListObjectInfo item)
 {
     if (onClosed != null)
     {
         onClosed(item);
     }
 }
예제 #3
0
    public override void ItemSelected(ListObjectInfo item)
    {
        base.ItemSelected(item);

        ClearPNG();

        if (item.ObjectType.Equals("folder"))
        {
            //Debug.Log("Open Folder");

            if (!CheckValidPath(item.ObjectInfo))
            {
                if (onInvalidRequest != null)
                {
                    onInvalidRequest.Invoke(item.ObjectInfo);
                }
                return;
            }

            pathToSearch = item.ObjectInfo;
            BuildList();
        }
        else
        {
            //Debug.Log("Open File");
            foreach (string ext in knownImageFileFormats)
            {
                if (item.ObjectType.Equals(ext))
                {
                    LoadPNG(item.ObjectInfo);
                    return;
                }
            }
        }
    }
예제 #4
0
 /// <summary>
 /// Fire the list item unhoverd event.
 /// Called by individual item.
 /// </summary>
 /// <param name="item">Referance to specific list item.</param>
 public void CallItemUnHoveredEvent(ListObjectInfo item)
 {
     if (onUnHovered != null)
     {
         onUnHovered(item);
     }
 }
예제 #5
0
    //Return a list of files as'ListObjects' found at a directory.
    private List <ListObjectInfo> GenerateListObjectFromDirectory(string directory)
    {
        List <ListObjectInfo> generatedList = new List <ListObjectInfo>();

        DirectoryInfo dir = new DirectoryInfo(directory);

        FileInfo[]      fileInfo = dir.GetFiles();
        DirectoryInfo[] dirInfo  = dir.GetDirectories();



        foreach (DirectoryInfo d in dirInfo)
        {
            ListObjectInfo obj = new ListObjectInfo(d.Name, "folder", d.ToString(), folderGFX);
            generatedList.Add(obj);
        }
        foreach (FileInfo f in fileInfo)
        {
            ListObjectInfo obj = new ListObjectInfo(f.Name, f.Extension, f.ToString(), ChooseIcon(f.Extension, f.ToString()));
            generatedList.Add(obj);
        }


        return(generatedList);
    }
예제 #6
0
    private void OnItemClosed(ListObjectInfo objectInfo)
    {
        objectInfo.ObjectIsActive = false;


        viewReferance.ReturnItemToOrigin(objectInfo);
    }
예제 #7
0
    public override void ItemMoved(ListObjectInfo item)
    {
        base.ItemMoved(item);

        string destinationURL = pathToSearch + "/" + item.ObjectName;
        string originURL      = item.ObjectInfo;

        if (!CheckValidPath(destinationURL))
        {
            if (onInvalidRequest != null)
            {
                onInvalidRequest.Invoke(item.ObjectName);
            }
            return;
        }

        Debug.Log("Moving, Origin: " + originURL + " Destination: " + destinationURL);

        //File.Move(originURL, destinationURL);


        BuildList();

        ClearPNG();
    }
예제 #8
0
 /// <summary>
 /// Fire the list item grabbed event.
 /// </summary>
 /// <param name="item">Item to be moved.</param>
 public void CallItemGrabbedEvent(ListObjectInfo item)
 {
     if (onGrabbed != null)
     {
         onGrabbed(item);
     }
 }
예제 #9
0
    public ListMovement listMovement;           //Referance to the list movement script.


    #region Item Controls
    /// <summary>
    /// Display the information of the item i.e. Name.
    /// </summary>
    /// <param name="item">The list item whos information to show.</param>
    /// <param name="showAllInfo">Show </param>
    public void DisplayItemInfo(ListObjectInfo item, bool showAllInfo = false)
    {
        itemInfoPanel.SetText(item.ObjectName);

        if (showAllInfo)
        {
            itemInfoPanel.SetText(item.ObjectName, item.ObjectType, item.ObjectInfo);
        }
    }
예제 #10
0
    public override void ItemDeleted(ListObjectInfo item)
    {
        base.ItemDeleted(item);

        Debug.Log("Deleting File: " + item.ObjectInfo);
        File.Delete(item.ObjectInfo);
        BuildList();

        ClearPNG();
    }
예제 #11
0
    private void ShowItemIconGameObject(ListObjectInfo item, GameObject itemGameObject)
    {
        GameObject itemIcon    = item.IconModel;
        Vector3    scale       = item.IconModel.transform.localScale;
        GameObject spawnedIcon = Instantiate(itemIcon, gameObject.transform);

        spawnedIcon.transform.SetParent(itemGameObject.transform);
        spawnedIcon.transform.localPosition = Vector3.zero;
        spawnedIcon.transform.localScale    = scale;
    }
예제 #12
0
    private IEnumerator SpawnItem(Vector3 spawnPosition, ListObjectInfo item, float spawnTime)
    {
        //The drop start position is slightly above spawn position by the ammount of the distance between items
        GameObject         itemVisualRepresentation = Instantiate(listItemObjectPrefab, transform.position + spawnPosition, transform.localRotation);
        Vector3            dropStartPos             = new Vector3(spawnPosition.x, spawnPosition.y + distBetweenItemCenter, spawnPosition.z);
        ListObjectInstance itemInstance             = itemVisualRepresentation.GetComponent <ListObjectInstance>();


        itemVisualRepresentation.transform.SetParent(gameObject.transform);
        itemVisualRepresentation.name = item.ObjectName;
        itemVisualRepresentation.transform.localPosition = dropStartPos;

        item.ObjectTransform = itemVisualRepresentation.transform;
        item.ParentTransform = transform;
        item.OriginPos       = spawnPosition;
        item.OriginRot       = new Quaternion(0, 0, 0, 0);

        //Give the item information about what it is.
        itemInstance.itemInfo = item;
        //Give the item a referance to the view. **Dude this is stupid wise up and fix this**
        itemInstance.viewReferance = GetComponent <View>();



        //Show 3D model of icon.
        if (item.IconModel != null)
        {
            ShowItemIconGameObject(item, itemVisualRepresentation);
        }

        //Wait for move to finish.
        yield return(StartCoroutine(MoveOverSeconds(itemVisualRepresentation.transform, dropStartPos, spawnPosition, spawnTime)));

        //Instantiate particle effects.
        if (spawnEffectPrefab != null)
        {
            Destroy(Instantiate(spawnEffectPrefab, itemVisualRepresentation.transform), 0.5f);
        }
    }
예제 #13
0
    private void OnItemMoved(ListObjectInfo objectInfo)
    {
        objectInfo.ObjectIsActive = false;

        modelReferance.ItemMoved(objectInfo);
    }
예제 #14
0
    private void OnItemSelected(ListObjectInfo objectInfo)
    {
        objectInfo.ObjectIsActive = true;

        modelReferance.ItemSelected(objectInfo);
    }
예제 #15
0
 private void OnItemGrabbed(ListObjectInfo objectInfo)
 {
 }
예제 #16
0
 private void OnItemUnHovered(ListObjectInfo objectInfo)
 {
     modelReferance.ItemUnhovered(objectInfo);
 }
예제 #17
0
 private void OnItemHovered(ListObjectInfo objectInfo)
 {
     modelReferance.ItemHovered(objectInfo);
     viewReferance.ClearItemInfo();
     viewReferance.DisplayItemInfo(objectInfo, true);
 }
예제 #18
0
 public virtual void ItemClosed(ListObjectInfo item)
 {
     //Debug.Log("Item Closed... " + item.ObjectName);
 }
예제 #19
0
 public virtual void ItemMoved(ListObjectInfo item)
 {
     //Debug.Log("Move List..."+originList+" to "+destinationList);
 }
예제 #20
0
 public void ReturnItemToOrigin(ListObjectInfo objectInfo)
 {
     objectInfo.ObjectTransform.SetParent(objectInfo.ParentTransform);
     objectInfo.ObjectTransform.localPosition = objectInfo.OriginPos;
     objectInfo.ObjectTransform.localRotation = objectInfo.OriginRot;
 }