ObjectSelectionBrush.h 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #ifndef OBJECTSELECTIONBRUSH_H
  2. #define OBJECTSELECTIONBRUSH_H
  3. /*************************************************************************************************\
  4. ObjectSelectionBrush.h : Interface for the ObjectSelectionBrush component.
  5. //---------------------------------------------------------------------------//
  6. // Copyright (C) Microsoft Corporation. All rights reserved. //
  7. //===========================================================================//
  8. \*************************************************************************************************/
  9. #ifndef BRUSH_H
  10. #include "Brush.h"
  11. #endif
  12. #include "elist.h"
  13. class ActionPaintTile;
  14. class EditorObject;
  15. typedef EList <EditorObject *, EditorObject *> EditorObjectPointerList;
  16. class ObjectSelectionBrush: public Brush
  17. {
  18. public:
  19. ObjectSelectionBrush();
  20. virtual ~ObjectSelectionBrush();
  21. virtual bool beginPaint();
  22. virtual Action* endPaint();
  23. virtual bool paint( Stuff::Vector3D& worldPos, int screenX, int screenY );
  24. virtual bool canPaint( Stuff::Vector3D& worldPos, int screenX, int screenY, int flags ) { return true; }
  25. virtual void render( int screenX, int screenY );
  26. EditorObjectPointerList selectedObjectPointerList();
  27. private:
  28. // suppressed
  29. ObjectSelectionBrush( const ObjectSelectionBrush& electionBrush );
  30. ObjectSelectionBrush& operator=( const ObjectSelectionBrush& electionBrush );
  31. Stuff::Vector4D lastPos;
  32. Stuff::Vector3D lastWorldPos;
  33. bool bPainting;
  34. bool bFirstClick;
  35. ActionPaintTile* pCurAction;
  36. };
  37. //*************************************************************************************************
  38. #endif // end of file ( ObjectSelectionBrush.h )