Ejemplo n.º 1
0
    void populate_list()
    {
        GameObject rowPrefab = Resources.Load <GameObject>("ManufacturerListItem");

        manufacturers = KnownManufacturerInfo.LoadManufacturers();
        foreach (var mfgInfo in manufacturers)
        {
            GameObject row = GameObject.Instantiate <GameObject>(rowPrefab);
            UnityUIUtil.FindTextAndSet(row, "Label", mfgInfo.name);
            Manufacturer mfg       = CC.PrinterDB.FindManufacturerByUUID(mfgInfo.uuid);
            bool         is_active = (mfg != null && CC.PrinterDB.IsDisabledManufacturer(mfg) == false);
            //UnityUIUtil.FindToggleAndSet(row, "ManufacturerListItem", is_active);
            UnityUIUtil.FindToggleAndSet(row, is_active);
            MfgListView.AddChild(row, false);

            mfgToRow[mfgInfo.uuid] = row;
        }
    }
Ejemplo n.º 2
0
    void update_from_list()
    {
        bool modified = false;

        foreach (var pair in mfgToRow)
        {
            string     uuid = pair.Key;
            GameObject row  = pair.Value;

            bool is_enabled = (CC.PrinterDB.FindManufacturerByUUID(uuid) != null);

            Toggle toggle = row.GetComponent <Toggle>();
            if (toggle.isOn && is_enabled == false)
            {
                KnownManufacturerInfo mi = manufacturers.Find((x) => { return(x.uuid == uuid); });
                CC.PrinterDB.EnableManufacturer(mi);
                modified = true;
            }
            else if (toggle.isOn == false && is_enabled)
            {
                KnownManufacturerInfo mi = manufacturers.Find((x) => { return(x.uuid == uuid); });
                CC.PrinterDB.DisableManufacturer(mi);
                modified = true;
            }
        }
        if (modified)
        {
            Manufacturer activeMfg = CC.PrinterDB.ActiveManufacturer;
            if (CC.PrinterDB.IsDisabledManufacturer(activeMfg))
            {
                CC.PrinterDB.SelectManufacturer(CC.PrinterDB.Manufacturers().First());
            }
            else
            {
                CC.PrinterDB.SavePreferencesHint();
            }
        }
    }