Browse Source

Minor fixes for guiPopupMenuCtrl to get the submenu arrow to render, as well as a sanity check.

Areloch 7 years ago
parent
commit
398b00f0dd
1 changed files with 13 additions and 6 deletions
  1. 13 6
      Engine/source/gui/editor/guiPopupMenuCtrl.cpp

+ 13 - 6
Engine/source/gui/editor/guiPopupMenuCtrl.cpp

@@ -59,7 +59,8 @@ void GuiPopupMenuBackgroundCtrl::onMouseDragged(const GuiEvent &event)
 
 
 void GuiPopupMenuBackgroundCtrl::close()
 void GuiPopupMenuBackgroundCtrl::close()
 {
 {
-   getRoot()->removeObject(this);
+   if(getRoot())
+      getRoot()->removeObject(this);
 
 
    mMenuBarCtrl = nullptr;
    mMenuBarCtrl = nullptr;
 }
 }
@@ -151,16 +152,22 @@ void GuiPopupMenuTextListCtrl::onRenderCell(Point2I offset, Point2I cell, bool s
       S32 bottom = top + 8;
       S32 bottom = top + 8;
       S32 middle = top + 4;
       S32 middle = top + 4;
 
 
-      PrimBuild::begin(GFXTriangleList, 3);
+      //PrimBuild::begin(GFXTriangleList, 3);
+
+      ColorI color = ColorI::BLACK;
       if (selected || mouseOver)
       if (selected || mouseOver)
-         PrimBuild::color(mProfile->mFontColorHL);
+         color = mProfile->mFontColorHL;
       else
       else
-         PrimBuild::color(mProfile->mFontColor);
+         color = mProfile->mFontColor;
+
+      GFX->getDrawUtil()->drawLine(Point2I(left, top), Point2I(right, middle), color);
+      GFX->getDrawUtil()->drawLine(Point2I(right, middle), Point2I(left, bottom), color);
+      GFX->getDrawUtil()->drawLine(Point2I(left, bottom), Point2I(left, top), color);
 
 
-      PrimBuild::vertex2i(left, top);
+      /*PrimBuild::vertex2i(left, top);
       PrimBuild::vertex2i(right, middle);
       PrimBuild::vertex2i(right, middle);
       PrimBuild::vertex2i(left, bottom);
       PrimBuild::vertex2i(left, bottom);
-      PrimBuild::end();
+      PrimBuild::end();*/
    }
    }
 }
 }