huddebugwinbase.c 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. class HudDebugWinBase
  2. {
  3. Widget m_WgtRoot;
  4. protected bool m_Show;
  5. protected bool m_RPCSent;
  6. //============================================
  7. // Constructor
  8. //============================================
  9. void HudDebugWinBase( Widget widget_root )
  10. {
  11. m_WgtRoot = widget_root;
  12. }
  13. //============================================
  14. // GetType
  15. //============================================
  16. int GetType()
  17. {
  18. return HudDebug.HUD_WIN_UNDEFINED;
  19. }
  20. void Init( Widget widget_root );
  21. void SetUpdate( bool state );
  22. void Update()
  23. {
  24. if(m_Show && !m_RPCSent)
  25. {
  26. SetUpdate(true);
  27. }
  28. }
  29. //============================================
  30. // SetUpdate
  31. //============================================
  32. void SetRPCSent()
  33. {
  34. m_RPCSent = true;
  35. }
  36. //============================================
  37. // Show
  38. //============================================
  39. void Show()
  40. {
  41. m_WgtRoot.Show(true);
  42. m_Show = true;
  43. }
  44. //============================================
  45. // Hide
  46. //============================================
  47. void Hide()
  48. {
  49. m_WgtRoot.Show(false);
  50. m_Show = false;
  51. }
  52. //============================================
  53. // Is visible
  54. //============================================
  55. bool IsVisible()
  56. {
  57. return m_WgtRoot.IsVisible();
  58. }
  59. //============================================
  60. // FitWindowByContent
  61. //============================================
  62. void FitWindowByContent( TextListboxWidget wgt )
  63. {
  64. int size_of_value = 17;
  65. SetValueListSize( 250, size_of_value * wgt.GetNumItems(), wgt );
  66. }
  67. //============================================
  68. // SetSize
  69. //============================================
  70. void SetValueListSize( int x, int y, TextListboxWidget wgt )
  71. {
  72. int offset = 10;
  73. int size_of_title = 20;
  74. wgt.SetSize( x, y );
  75. int root_size_x = x + ( 2 * offset );
  76. int root_size_y = y + ( 2 * offset ) + size_of_title;
  77. m_WgtRoot.SetSize( root_size_x, root_size_y );
  78. }
  79. }