public static AquaPicGui CreateInstance()
        {
            if (AquaPicUserInterface == null)
            {
                AquaPicUserInterface = new AquaPicGui();
                return(AquaPicUserInterface);
            }

            throw new Exception("User interface is already created");
        }
        public SettingsWindow(params object[] options) : base()
        {
            sceneTitle = "Settings";

            if (options.Length >= 1)
            {
                topWindow = options[0] as AquaPicGui;
                if (topWindow != null)
                {
                    if (topWindow.IsTopLevel)
                    {
                        var b = new TouchButton();
                        b.SetSizeRequest(100, 60);
                        b.text = "Unfullscreen";
                        b.ButtonReleaseEvent += (o, args) => {
                            topWindow.ShowDecoration();
#if RPI_BUILD
                            topWindow.Unfullscreen();
#endif
                        };
                        Put(b, 685, 140);
                        b.Show();

                        b = new TouchButton();
                        b.SetSizeRequest(100, 60);
                        b.text = "Back";
                        b.ButtonReleaseEvent += (o, args) => AquaPicGui.AquaPicUserInterface.ChangeScreens("Home");
                        Put(b, 685, 210);
                        b.Show();
                    }
                    else
                    {
                        topWindow = null;
                    }
                }
            }

            var btn = new TouchButton();
            btn.SetSizeRequest(100, 60);
            btn.text = "Close";
            btn.ButtonReleaseEvent += OnCloseButtonRelease;
            Put(btn, 685, 70);
            btn.Show();

            Show();
        }