Ejemplo n.º 1
0
        private async void LoadData()
        {
            if (dataLoader == null)
            {
                dataLoader = new DataLoader <MyThemeData>();
            }

            myThemeData = await dataLoader.LoadLocalData(Constants.THEME_MODULE, Constants.MY_THEME_DATA_FILE);

            if (myThemeData == null)
            {
                myThemeData = new MyThemeData();
            }
            myThemeListBox.ItemsSource = myThemeData.myThemes;
        }
Ejemplo n.º 2
0
        private async Task AddMyThemeData(ThemePack themePack, int materialCount)
        {
            try
            {
                if (myThemeDataLoader == null)
                {
                    myThemeDataLoader = new DataLoader <MyThemeData>();
                }

                //load data file
                var data = await myThemeDataLoader.LoadLocalData(Constants.THEME_MODULE, Constants.MY_THEME_DATA_FILE);

                if (data == null)
                {
                    data = new MyThemeData();
                }

                if (data.myThemes.Any(x => x.id == themePack.id))
                {
                    return;
                }

                //add new theme
                MyTheme newTheme = new MyTheme();
                newTheme.id            = themePack.id;
                newTheme.name          = themePack.name;
                newTheme.thumbnail     = themePack.thumbnailUrl;
                newTheme.materialCount = materialCount;
                data.myThemes.Insert(0, newTheme);

                //save data
                string json = JsonSerializer.Serialize(data);
                await IsolatedStorageHelper.WriteToFileAsync(Constants.THEME_MODULE, Constants.MY_THEME_DATA_FILE, json);
            }
            catch (Exception ex)
            {
                somethingWrong = true;
            }
        }
Ejemplo n.º 3
0
        private async Task LoadData()
        {
            materials_all = new List <Material>();

            if (myThemeDataLoader == null)
            {
                myThemeDataLoader = new DataLoader <MyThemeData>();
            }

            if (material_dict == null)
            {
                material_dict = new Dictionary <string, List <Material> >();
                var types = Enum.GetValues(typeof(MaterialType));
                foreach (var type in types)
                {
                    var key = type.ToString();
                    material_dict.Add(key, new List <Material>());
                }
            }
            else
            {
                foreach (var key in material_dict.Keys)
                {
                    material_dict[key] = new List <Material>();
                }
            }

            //load data file
            var themeData = await myThemeDataLoader.LoadLocalData(Constants.THEME_MODULE, Constants.MY_THEME_DATA_FILE);

            if (themeData == null)
            {
                themeData = new MyThemeData();
            }

            //load materials
            foreach (var theme in themeData.myThemes)
            {
                if (theme.visible)
                {
                    await LoadMaterial(theme);
                }
            }

            if (pageType == WidgetPageType.Shipin)
            {
                materialListBox.ItemsSource = GetTriplets(material_dict[MaterialType.keai.ToString()]);
                VisualStateManager.GoToState(this, "vsKeai", true);
                CurrentListKey = "keai";
            }
            else if (pageType == WidgetPageType.BianKuang)
            {
                materialListBox.ItemsSource = GetTriplets(material_dict[MaterialType.biankuang.ToString()]);
                CurrentListKey = "biankuang";
            }
            else if (pageType == WidgetPageType.Beijing)
            {
                materialListBox.ItemsSource = GetTriplets(material_dict[MaterialType.beijing.ToString()]);
                CurrentListKey = "beijing";
            }

            RestoreScrollPosition(CurrentListKey);
        }