コード例 #1
0
    //****************************************************************************************************
    //
    //****************************************************************************************************

    public bool Show(string rootPath, INTENT paramIntent, FSFilter paramFilter, OnButon onButon)
    {
        if (gameObject.activeSelf == false)
        {
            m_rootPath = rootPath;

            m_onButon = onButon;

            intent = paramIntent;

            filter = (paramFilter != null) ? paramFilter.byval : new FSFilter(FSFilter.LOD.FILE, FSFilter.LOD.FILE, "*");

            m_curFilter = filter.pattern;

            InitInputFields();

            UpdateTitle();


            m_fade.Begin(FADE_TYPE.FADE_IN, FADE_IN_DURATION, OnFadeFinished);

            Update();


            gameObject.SetActive(true);

            EnableButons(false);

            return(true);
        }

        return(false);
    }
コード例 #2
0
    //****************************************************************************************************
    //
    //****************************************************************************************************

    public FSFilter(FSFilter o)
    {
        m_selectionLevel = o.m_selectionLevel;

        m_displayLevel = o.m_displayLevel;

        m_pattern = o.m_pattern;
    }
コード例 #3
0
    //****************************************************************************************************
    //
    //****************************************************************************************************

    private void AddEntry(FileSystemEntry parent, FileSystemInfo info, FSFilter paramFilter)
    {
        DirectoryInfo directory = info is DirectoryInfo ? info as DirectoryInfo : null;

        FileSystemEntry entry = new FileSystemEntry(parent, paramFilter);


        entry.dir = (directory != null);

        entry.path = info.FullName;

        entry.name = info.Name;
    }
コード例 #4
0
    //****************************************************************************************************
    //
    //****************************************************************************************************

    public FileSystemEntry(UIListItemData parent, FSFilter paramFilter = null) : base(parent, null)
    {
        userDatas = this;

        dir = false;

        listDirs = false;

        listFiles = false;

        name = string.Empty;

        path = string.Empty;

        displayFilter = paramFilter;
    }
コード例 #5
0
    //****************************************************************************************************
    //
    //****************************************************************************************************

    public void ExportCSV()
    {
        if (POPUPFileBrowser.Instance != null)
        {
            FSFilter filter = new FSFilter(FSFilter.LOD.FILE, "*.*");

            POPUPFileBrowser.Instance.Show(Application.dataPath, POPUPFileBrowser.INTENT.SAVE, filter, (POPUPFileBrowser popup, POPUPFileBrowser.BUTON but) =>
            {
                if (but == POPUPFileBrowser.BUTON.OK)
                {
                    CSV.File csv = new CSV.File();

                    csv.Export(popup.path);
                }
            });
        }
    }
コード例 #6
0
    //****************************************************************************************************
    //
    //****************************************************************************************************

    private void AddFiles()
    {
        if (FSFilter.HideFiles(displayFilter))
        {
            return;
        }

        if (listFiles == false)
        {
            listFiles = true;

            DirectoryInfo dirInfo = new DirectoryInfo(path);

            FileInfo[] fileInfos = (displayFilter != null) ? dirInfo.GetFiles(displayFilter.pattern, SearchOption.TopDirectoryOnly) : dirInfo.GetFiles();

            for (int file = 0; file < fileInfos.Length; ++file)
            {
                AddEntry(this, fileInfos[file], displayFilter);
            }
        }
    }
コード例 #7
0
    //****************************************************************************************************
    //
    //****************************************************************************************************

    public void ImportCSV()
    {
        if ((DBObjects.instance != null) && (DBObjects.instance.busy))
        {
            return;
        }

        if (POPUPFileBrowser.Instance != null)
        {
            FSFilter filter = new FSFilter(FSFilter.LOD.FILE, "*.*");

            POPUPFileBrowser.Instance.Show(Application.dataPath, POPUPFileBrowser.INTENT.LOAD, filter, (POPUPFileBrowser popup, POPUPFileBrowser.BUTON but) =>
            {
                if (but == POPUPFileBrowser.BUTON.OK)
                {
                    CSV.File csv = new CSV.File();

                    csv.Import(popup.path);                       // to do: fix Lambert_( 93 ? ) - WGS84 latitude conversion
                }
            });
        }
    }
コード例 #8
0
    //****************************************************************************************************
    //
    //****************************************************************************************************

    private void UpdateTitle()
    {
        title = FSFilter.AllowFileSelection(filter) ? "FILES" : "DIRECTORIES";
    }
コード例 #9
0
 static public bool ShowFiles(FSFilter filter)
 {
     return((filter == null) || (filter.showFiles));
 }
コード例 #10
0
 static public bool HideFiles(FSFilter filter)
 {
     return((filter != null) && (filter.hideFiles));
 }
コード例 #11
0
 static public bool AllowFileSelection(FSFilter filter)
 {
     return((filter == null) || (filter.allowFileSelection));
 }
コード例 #12
0
 static public bool AllowDirSelection(FSFilter filter)
 {
     return((filter != null) && (filter.allowDirSelection));
 }