PolyUIScrollContainer.h 985 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /*
  2. * PolyUIScrollContainer.h
  3. * Poly
  4. *
  5. * Created by Ivan Safrin on 3/25/10.
  6. * Copyright 2010 Ivan Safrin. All rights reserved.
  7. *
  8. */
  9. // @package UI
  10. #pragma once
  11. #include "PolyGlobals.h"
  12. #include "PolyUIVScrollBar.h"
  13. #include "PolyUIHScrollBar.h"
  14. namespace Polycode {
  15. class _PolyExport UIScrollContainer : public ScreenEntity {
  16. public:
  17. UIScrollContainer(ScreenEntity *scrolledEntity, bool hScroll, bool vScroll, Number width, Number height);
  18. ~UIScrollContainer();
  19. void setContentSize(Number newContentWidth, Number newContentHeight);
  20. void Resize(int x, int y);
  21. void onMouseWheelDown(Number x, Number y);
  22. void onMouseWheelUp(Number x, Number y);
  23. void handleEvent(Event *event);
  24. private:
  25. Number defaultScrollSize;
  26. Number contentWidth;
  27. Number contentHeight;
  28. ScreenEntity *scrollChild;
  29. ScreenShape *maskShape;
  30. bool hasHScroll;
  31. bool hasVScroll;
  32. UIVScrollBar *vScrollBar;
  33. UIHScrollBar *hScrollBar;
  34. };
  35. }