public override void OnInspectorGUI()
        {
            CSVWranglerStartUp my = (CSVWranglerStartUp)target;

            //EditorGUIUtility.LookLikeControls();
            DrawDefaultInspector();

            EditorGUILayout.BeginHorizontal();
            if (GUILayout.Button("Download index file"))
            {
                FileDownloadWindow.Init();

                FileDownloadWindow.instance.AddToDlQueue(my.settings.liveURL, "CSVs/csvWrangler.csv", FileDownloadWindow.DownloadLocation.ResourceFolder);
            }

            if (File.Exists(Application.dataPath + "/Resources/CSVs/csvWrangler.csv") && GUILayout.Button("Download referenced csvs"))
            {
                //open the csvWrangler.csv into deadsimple csv
                DeadSimpleCSV indexTable = new DeadSimpleCSV(File.ReadAllText(Application.dataPath + "/Resources/CSVs/csvWrangler.csv"), true);

                //dump into classlist
                List<CSVWrangler.IndexRow> rows = indexTable.ConvertRowsToObjects<CSVWrangler.IndexRow>();

                FileDownloadWindow.Init();

                foreach (CSVWrangler.IndexRow row in rows)
                {
                    FileDownloadWindow.instance.AddToDlQueue(row.url, "CSVs/" + row.name + ".csv", FileDownloadWindow.DownloadLocation.ResourceFolder);
                }

            }

            EditorGUILayout.EndHorizontal();
        }
Exemple #2
0
        //needs to assign the text asset as part of its creation
        static void ProcessAsset(string origLocation, TextAsset txt, DeadSimpleCSV csv)
        {
            //if matching file exists, then get it
            ExternalVarsSO extvar = ExternalVarsSOManager.Instance().FindByExternalFile(txt);

            var  fileName     = origLocation.Substring(0, origLocation.Length - (".csv".Length)) + ".asset";
            bool createdAsset = false;

            //if not create it an
            if (extvar == null)
            {
                extvar          = ExternalVarsSO.CreateInstance <ExternalVarsSO>();
                extvar.localCSV = txt;
                AssetDatabase.CreateAsset(extvar, fileName);
                createdAsset = true;
            }

            try
            {
                extvar.GenerateVars(csv.ConvertRowsToObjects <ExternalVarsSO.VarSpec>());
            }
            catch (Exception)
            {
                if (createdAsset)
                {
                    AssetDatabase.DeleteAsset(fileName);
                    UnityEngine.Object.DestroyImmediate(extvar);
                }
            }
        }
Exemple #3
0
    public void SetupTests()
    {
        csvFromFile = new AID.DeadSimpleCSV(fileContents, true);

        listFromCSV = csvFromFile.ConvertRowsToObjects <ExampleCSVSerialiseClass>();

        csvFromList = AID.DeadSimpleCSV.CreateFromList(listFromCSV);

        listFromCSVFromList = csvFromList.ConvertRowsToObjects <ExampleCSVSerialiseClass>();

        csvFromListStr = csvFromList.GetAsCSVString(true);
    }
    void Start()
    {
        //get the call back for all dls completed

        //handles native types and enums
        // this shows loading a table of data where the col name matches a classes var name
        // the ConvertRowsToObjects uses reflection and convert to out each row as the given object
        // has not been tested with classes that have refs to other classes, this will most likely NOT work

        AID.DeadSimpleCSV csvFromFile = new AID.DeadSimpleCSV(txtFile.text, true);

        List <ExampleCSVSerialiseClass> listFromCSV = csvFromFile.ConvertRowsToObjects <ExampleCSVSerialiseClass>();

        foreach (ExampleCSVSerialiseClass o in listFromCSV)
        {
            print(o);
        }

        AID.DeadSimpleCSV csvFromList = AID.DeadSimpleCSV.CreateFromList <ExampleCSVSerialiseClass>(listFromCSV);
        print(csvFromList.GetAsCSVString(true));

        AID.CSVWrangler.Instance().CSVWranglerChange += CSVWranglerStateHasChanged;
        AID.CSVWrangler.Instance().Init();
    }
Exemple #5
0
        public static List <T> ConvertStringCSVToObjects <T>(string csvStr, bool generateColumnLookup)  where T : class, new()
        {
            var csv = new DeadSimpleCSV(csvStr, generateColumnLookup);

            return(csv.ConvertRowsToObjects <T>());
        }