Ejemplo n.º 1
0
        void InitializeGui()
        {
            GuiRenderer = new GwenRenderer();

            var textureName = "DefaultSkin.png";
            var defaultFont = new Flood.GUI.Font("Vera.ttf", 16);

            var resMan = FloodEngine.GetEngine().ResourceManager;
            var options = new ResourceLoadOptions {Name = textureName, AsynchronousLoad = false};
            var imageHandle = resMan.LoadResource<Image>(options);
            if (imageHandle.Id == 0)
                return;

            var skin = new TexturedSkin(GuiRenderer, imageHandle, defaultFont);
            Canvas = new Canvas(skin);

            var container = new Container(Canvas);
            var paneGroup = new PaneGroup(container);
            container.InsertPanel(paneGroup);
            paneGroup.AddPane(new Pane { Title = "PANE1" });
            paneGroup.AddPane(new Pane { Title = "PANE2" });

            Input = new GwenInput(FloodEngine.GetEngine().InputManager);
            Input.Initialize(Canvas);
        }
Ejemplo n.º 2
0
        public void Reload(ResourceLoadOptions loadOptions)
        {
            var allSourceFiles = _sourceFilesProvider.SourceFiles;

            Load(allSourceFiles);

            if (loadOptions.HasFlag(ResourceLoadOptions.FindCodeReferences))
            {
                BeginFindCodeReferences(allSourceFiles);
            }
        }
Ejemplo n.º 3
0
        public void Init(Renderer renderer, string textureName, Flood.GUI.Font defaultFont)
        {
            Renderer = renderer;

            var resMan  = FloodEngine.GetEngine().ResourceManager;
            var options = new ResourceLoadOptions {
                Name = textureName, AsynchronousLoad = false
            };
            var imageHandle = resMan.LoadResource <Image>(options);

            Skin   = new TexturedSkin(renderer, imageHandle, defaultFont);
            Canvas = new Canvas(Skin);

            Init();
        }
Ejemplo n.º 4
0
        void InitializeGui()
        {
            GuiRenderer = new GwenRenderer();

            var textureName = "DefaultSkin.png";
            var defaultFont = new Font("Vera.ttf", 16);

            var resMan = Engine.GetEngine().ResourceManager;
            var options = new ResourceLoadOptions {Name = textureName, AsynchronousLoad = false};
            var imageHandle = resMan.LoadResource<Image>(options);
            if (imageHandle.Id == 0)
                throw new Exception("Could not load GUI texture: " + textureName);

            Skin = new TexturedSkin(GuiRenderer, imageHandle, defaultFont);
            Canvas = new Canvas(Skin);

            Input = new GwenInput(Engine.GetEngine().InputManager);
            Input.Initialize(Canvas);
        }
Ejemplo n.º 5
0
Archivo: GUI.cs Proyecto: chartly/flood
        public GUI(string textureName, string defaultFontName, int defaultFontSize)
        {
            PlatformManager = new PlatformManager(CreateWxPlatformManager());

            Engine = new Engine(PlatformManager);
            Engine.Init();

            // Search for the location of the main assets folder.
            string assetsPath;
            if (!SearchForAssetsDirectory(out assetsPath))
                throw new Exception("Editor assets were not found");

            Archive = new ArchiveVirtual();
            Archive.MountDirectories(assetsPath, Allocator.GetHeap());

            ResourceManager = Engine.ResourceManager;
            ResourceManager.Archive = Archive;

            WindowManager = Engine.WindowManager;

            MainWindow = CreateWindow();
            var context = MainWindow.CreateContext(new RenderContextSettings());

            MainView = MainWindow.CreateView();
            MainView.ClearColor = Color.Red;

            MainWindow.MakeCurrent();
            context.Init();

            RenderDevice = Engine.RenderDevice;
            RenderDevice.ActiveView = MainView;

            var options = new ResourceLoadOptions {Name = textureName, AsynchronousLoad = false};
            var imageHandle = ResourceManager.LoadResource<Image>(options);
            if (imageHandle.Id == 0)
                return;

            Renderer = new GwenRenderer();
            Skin = new TexturedSkin(Renderer, imageHandle, new Flood.GUI.Font(defaultFontName, defaultFontSize));

            if (!Directory.Exists(StoredValuesDirectory))
                Directory.CreateDirectory(StoredValuesDirectory);
        }
Ejemplo n.º 6
0
        public override void LoadTexture(Flood.GUI.Texture t)
        {
            var options = new ResourceLoadOptions();
            options.Name = t.Name;
            options.AsynchronousLoad = false;
            uint iHandle = FloodEngine.GetEngine().GetResourceManager().LoadResource(options);

            if(iHandle == HandleInvalid){
                t.RendererData = null;
                return;
            }

            Image img = iHandle.Resolve();
            t.Width =	(int)img.GetWidth();
            t.Height = (int)img.GetHeight();
            t.RendererData = iHandle;
        }