UIMessageWindow.cpp 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #include <TurboBadger/tb_widgets.h>
  2. #include <TurboBadger/tb_widgets_common.h>
  3. #include <TurboBadger/tb_message_window.h>
  4. #include "../IO/Log.h"
  5. #include "UI.h"
  6. #include "UIEvents.h"
  7. #include "UIMessageWindow.h"
  8. using namespace tb;
  9. namespace Atomic
  10. {
  11. UIMessageWindow::UIMessageWindow(Context* context, UIWidget* target, const String& id, bool createWidget) : UIWindow(context, false)
  12. {
  13. if (createWidget)
  14. {
  15. widget_ = new TBMessageWindow(target ? target->GetInternalWidget() : 0, TBIDC(id.CString()));
  16. widget_->SetDelegate(this);
  17. GetSubsystem<UI>()->WrapWidget(this, widget_);
  18. }
  19. }
  20. UIMessageWindow::~UIMessageWindow()
  21. {
  22. }
  23. void UIMessageWindow::Show(const String &title, const String &message, int width, int height)
  24. {
  25. if (!widget_)
  26. return;
  27. TBMessageWindowSettings settings;
  28. settings.styling = true;
  29. settings.dimmer = true;
  30. ((TBMessageWindow*)widget_)->Show(title.CString(), message.CString(), &settings, width, height);
  31. }
  32. bool UIMessageWindow::OnEvent(const tb::TBWidgetEvent &ev)
  33. {
  34. return UIWindow::OnEvent(ev);
  35. }
  36. }