private IEnumerator <YieldAction> doUpdateThumbnails()
        {
            imageGrid.clear();
            yield return(Coroutine.WaitSeconds(0.1f));

            foreach (ThumbnailPickerInfo thumbProp in thumbnailProperties)
            {
                if (imageGrid == null)
                {
                    yield break;
                }

                String imageId;
                using (FreeImageBitmap thumb = imageRenderer.renderImage(thumbProp.ImageProperties))
                {
                    imageId = thumbnailImages.addImage(thumb, thumb);
                }

                imageGrid.SuppressLayout = true;
                ButtonGridItem item = imageGrid.addItem("Main", "", imageId);
                item.UserObject = thumbProp;

                imageGrid.SuppressLayout = false;
                imageGrid.layout();

                if (imageGrid.Count == 1) //Select first item
                {
                    imageGrid.SelectedItem = imageGrid.getItem(0);
                }

                yield return(Coroutine.WaitSeconds(0.1f));
            }
        }
 private void fixListItemWidth()
 {
     //Layout only if size changes
     if (window.Width != lastWidth || window.Height != lastHeight)
     {
         lastWidth  = window.Width;
         lastHeight = window.Height;
         stateListBox.layout();
     }
 }
Esempio n. 3
0
        public IEnumerator <YieldAction> initialize()
        {
            this.clear();
            yield return(Coroutine.WaitSeconds(0.1f));

            foreach (PresetState state in loadPresets(subDirectory))
            {
                if (presetListView == null)
                {
                    yield break;
                }

                String fullImageName = subDirectory + "/" + state.ImageName;
                String imageKey      = null;
                if (!imageAtlas.containsImage(fullImageName))
                {
                    try
                    {
                        using (Stream imageStream = context.ResourceProvider.openFile(fullImageName))
                        {
                            using (var image = new FreeImageBitmap(imageStream))
                            {
                                if (image != null)
                                {
                                    imageKey  = imageAtlas.addImage(fullImageName, image);
                                    image.Tag = fullImageName;
                                }
                            }
                        }
                    }
                    catch (Exception)
                    {
                        Log.Error("Could not open image preview file {0}.", fullImageName);
                    }
                }
                presetListView.SuppressLayout = true;

                ButtonGridItem item = presetListView.addItem(state.Category, state.Name, imageKey);
                item.UserObject = state;

                presetListView.SuppressLayout = false;
                presetListView.layout();

                if (presetListView.Count == 1) //Select first item
                {
                    defaultItem = presetListView.getItem(0);
                }

                yield return(Coroutine.WaitSeconds(0.1f));
            }
        }