]> O.S.I.I.S - jp/crow.git/commitdiff
putOnTop as IGOLibInterface, popper putontop
authorjp <jp_bruyere@hotmail.com>
Sat, 31 Oct 2015 10:10:51 +0000 (11:10 +0100)
committerjp <jp_bruyere@hotmail.com>
Sat, 31 Oct 2015 10:10:51 +0000 (11:10 +0100)
src/GraphicObjects/IGOLibHost.cs
src/GraphicObjects/Popper.cs
src/OpenTKGameWindow.cs

index a76500c7e0aead37d28c794f6925e9ce0487d66c..cdf942826886e125b41ff9fa4b3c5fe5028fa2da 100644 (file)
@@ -12,6 +12,7 @@ namespace go
                GraphicObject FocusedWidget { get; set; }
                void AddWidget (GraphicObject g);
                void DeleteWidget(GraphicObject g);
+               void PutOnTop (GraphicObject g);
                void Quit ();
        }
 }
index 2ec4396fee9c328f6d7155666bd14b94618d8a0f..381b6281f70bad869b7fa06201831640250a2541 100644 (file)
@@ -164,6 +164,7 @@ namespace go
                                Content.Visible = true;\r
                                if (Content.Parent == null)\r
                                        tc.AddWidget (Content);\r
+                               tc.PutOnTop (Content);\r
                        }\r
                        Pop.Raise (this, e);\r
                }\r
index c23acbe30b45c48420c548b023fc386fc96cfb93..0329250a977c4293045e5430636789f4ab0eb00a 100755 (executable)
@@ -27,7 +27,7 @@ namespace go
                public OpenTKGameWindow(int _width, int _height, string _title="golib")\r
                        : base(_width, _height, new OpenTK.Graphics.GraphicsMode(32, 24, 0, 1), \r
                                _title,GameWindowFlags.Default,DisplayDevice.GetDisplay(DisplayIndex.Second),\r
-                               3,2,OpenTK.Graphics.GraphicsContextFlags.Debug|OpenTK.Graphics.GraphicsContextFlags.ForwardCompatible)\r
+                               3,3,OpenTK.Graphics.GraphicsContextFlags.Debug)\r
 //             public OpenTKGameWindow(int _width, int _height, string _title="golib")\r
 //                     : base(_width, _height, new OpenTK.Graphics.GraphicsMode(32, 24, 0, 8), _title)\r
                {\r
@@ -59,6 +59,7 @@ namespace go
                Rectangles _redrawClip = new Rectangles();//should find another way to access it from child\r
                List<GraphicObject> _gobjsToRedraw = new List<GraphicObject>();\r
 \r
+               #region IGOLibHost implementation\r
                public Rectangles redrawClip {\r
                        get {\r
                                return _redrawClip;\r
@@ -89,15 +90,13 @@ namespace go
                        g.ClearBinding();\r
                        GraphicObjects.Remove (g);\r
                }\r
-               /// <summary> Remove all Graphic objects from top container </summary>\r
-               public void ClearInterface()\r
+               public void PutOnTop(GraphicObject g)\r
                {\r
-                       int i = 0;\r
-                       while (GraphicObjects.Count>0) {\r
-                               GraphicObject g = GraphicObjects [i];\r
-                               g.Visible = false;\r
-                               g.ClearBinding ();\r
-                               GraphicObjects.RemoveAt (0);\r
+                       if (GraphicObjects.IndexOf(g) > 0)\r
+                       {\r
+                               GraphicObjects.Remove(g);\r
+                               GraphicObjects.Insert(0, g);\r
+                               g.registerClipRect ();\r
                        }\r
                }\r
                public void Quit ()\r
@@ -105,15 +104,6 @@ namespace go
                        this.Exit ();\r
                }\r
 \r
-               #region Events\r
-               //those events are raised only if mouse isn't in a graphic object\r
-               public event EventHandler<MouseWheelEventArgs> MouseWheelChanged;\r
-               public event EventHandler<MouseButtonEventArgs> MouseButtonUp;\r
-               public event EventHandler<MouseButtonEventArgs> MouseButtonDown;\r
-               public event EventHandler<MouseButtonEventArgs> MouseClick;\r
-               public event EventHandler<MouseMoveEventArgs> MouseMove;\r
-               #endregion\r
-\r
                #region focus\r
                GraphicObject _activeWidget;    //button is pressed on widget \r
                GraphicObject _hoverWidget;             //mouse is over\r
@@ -148,6 +138,29 @@ namespace go
                }\r
                #endregion\r
 \r
+               #endregion\r
+\r
+               /// <summary> Remove all Graphic objects from top container </summary>\r
+               public void ClearInterface()\r
+               {\r
+                       int i = 0;\r
+                       while (GraphicObjects.Count>0) {\r
+                               GraphicObject g = GraphicObjects [i];\r
+                               g.Visible = false;\r
+                               g.ClearBinding ();\r
+                               GraphicObjects.RemoveAt (0);\r
+                       }\r
+               }\r
+\r
+               #region Events\r
+               //those events are raised only if mouse isn't in a graphic object\r
+               public event EventHandler<MouseWheelEventArgs> MouseWheelChanged;\r
+               public event EventHandler<MouseButtonEventArgs> MouseButtonUp;\r
+               public event EventHandler<MouseButtonEventArgs> MouseButtonDown;\r
+               public event EventHandler<MouseButtonEventArgs> MouseClick;\r
+               public event EventHandler<MouseMoveEventArgs> MouseMove;\r
+               #endregion\r
+\r
                #region graphic contexte\r
                Context ctx;\r
                Surface surf;\r
@@ -416,16 +429,6 @@ namespace go
                }\r
                #endregion\r
 \r
-               public void PutOnTop(GraphicObject g)\r
-               {\r
-                       if (GraphicObjects.IndexOf(g) > 0)\r
-                       {\r
-                               GraphicObjects.Remove(g);\r
-                               GraphicObjects.Insert(0, g);\r
-                               g.registerClipRect ();\r
-                       }\r
-               }\r
-\r
         #region Mouse Handling\r
         void Mouse_Move(object sender, MouseMoveEventArgs e)\r
         {\r