1/*
2 * Copyright 2006-2010, Stephan A��mus <superstippi@gmx.de>. All rights reserved.
3 * Distributed under the terms of the MIT License.
4 */
5#ifndef TRANSFORM_GRADIENT_COMMAND_H
6#define TRANSFORM_GRADIENT_COMMAND_H
7
8
9#include "IconBuild.h"
10#include "TransformBox.h"
11#include "TransformCommand.h"
12
13
14_BEGIN_ICON_NAMESPACE
15	class Gradient;
16_END_ICON_NAMESPACE
17
18_USING_ICON_NAMESPACE
19
20
21class TransformGradientCommand : public TransformCommand,
22	public TransformBoxListener {
23public:
24								TransformGradientCommand(
25									TransformBox* box, Gradient* gradient,
26									BPoint pivot, BPoint translation,
27									double rotation, double xScale,
28									double yScale, const char* name);
29	virtual						~TransformGradientCommand();
30
31	// Command interface
32	virtual	status_t			InitCheck();
33
34	// TransformBoxListener interface
35	virtual	void				TransformBoxDeleted(const TransformBox* box);
36
37protected:
38 	// TransformCommand interface
39	virtual	status_t			_SetTransformation(BPoint pivotDiff,
40									BPoint translationDiff,
41									double rotationDiff, double xScaleDiff,
42									double yScaleDiff) const;
43
44			TransformBox*		fTransformBox;
45			Gradient*			fGradient;
46};
47
48
49#endif // TRANSFORM_GRADIENT_COMMAND_H
50