My Project
|
00001 00002 00003 00004 00005 00006 00007 00008 00009 00010 00011 00012 00013 00014 00015 00016 00017 00018 00019 00020 00021 00022 00023 00024 00025 00026 00027 00028 #pragma once 00029 #include "ScrollListItem.h" 00030 #include "Button.h" 00031 #include "LabelBox.h" 00032 #include "Form.h" 00033 #include "Box2DObject.h" 00034 #include "ParameterScrollList.h" 00035 00036 namespace SallyAPI 00037 { 00038 namespace GUI 00039 { 00048 00049 class DLL_API_SALLY CScrollList : 00050 public SallyAPI::GUI::CForm 00051 { 00052 private: 00053 std::vector<SallyAPI::GUI::CScrollListItem> m_vItems; 00054 int m_iCols; 00055 int m_iRows; 00056 int m_iBorderTop; 00057 int m_iIconSize; 00058 int m_iIconSizeSpace; 00059 int m_iStartPicture; 00060 00061 std::map<int, std::vector<SallyAPI::GUI::CButton*>> m_mImageBox; 00062 std::map<int, std::vector<SallyAPI::GUI::CLabelBox*>> m_mImageName; 00063 00064 void UpdateAlpha(); 00065 void ResetImages(); 00066 void UpdateImages(); 00067 00068 void OnCommandProcessClicked(int reporterId); 00069 00070 virtual void OnCommandMouseMove(SallyAPI::GUI::SendMessage::CParameterBase* messageParameter); 00071 virtual void AddChild(SallyAPI::GUI::CControl* control); 00072 public: 00073 CScrollList(SallyAPI::GUI::CGUIBaseObject* parent, int x, int y, int width, int height, int iconSize, int iconSizeSpace, int controlId = 0); 00074 virtual ~CScrollList(); 00075 00076 virtual void SendMessageToParent(SallyAPI::GUI::CGUIBaseObject *reporter, int reporterId, int messageId, SallyAPI::GUI::SendMessage::CParameterBase* messageParameter = NULL); 00077 virtual void SetAlphaBlending(int alphaBlending); 00078 00079 void AddItem(const SallyAPI::GUI::CScrollListItem& item); 00080 void Clear(); 00081 00082 void SetFont(const std::string& font); 00083 }; 00084 } 00085 }