g++ 4.2 (and possibly earlier) apparently call a copy constructor when passing a temporary to a function that takes a const reference. Added code to allow copy-constructing the AI*Access classes for this compiler. g++-4.2.x also bails out when it encounters files that do not end on a newline. So, also added those where they were missing.
50 lines
1.1 KiB
C++
50 lines
1.1 KiB
C++
/**
|
|
* @file qtoolalign.h
|
|
* @brief A tool to align objects
|
|
*/
|
|
|
|
#ifndef Q_QTOOLALIGN_H
|
|
#define Q_QTOOLALIGN_H
|
|
|
|
#include "lltool.h"
|
|
#include "llbbox.h"
|
|
#include "lltoolcomp.h"
|
|
|
|
class LLViewerObject;
|
|
class LLPickInfo;
|
|
class LLToolSelectRect;
|
|
|
|
class QToolAlign
|
|
: public LLToolComposite, public LLSingleton<QToolAlign>
|
|
{
|
|
public:
|
|
QToolAlign();
|
|
virtual ~QToolAlign();
|
|
|
|
virtual void handleSelect();
|
|
virtual void handleDeselect();
|
|
virtual BOOL handleMouseDown(S32 x, S32 y, MASK mask);
|
|
virtual BOOL handleDoubleClick(S32 x, S32 y, MASK mask);
|
|
virtual BOOL handleMouseUp(S32 x, S32 y, MASK mask);
|
|
virtual BOOL handleHover(S32 x, S32 y, MASK mask);
|
|
virtual void render();
|
|
|
|
virtual LLTool* getOverrideTool(MASK mask);
|
|
|
|
static void pickCallback(const LLPickInfo& pick_info);
|
|
|
|
private:
|
|
void align();
|
|
void computeManipulatorSize();
|
|
void renderManipulators();
|
|
BOOL findSelectedManipulator(S32 x, S32 y);
|
|
|
|
LLBBox mBBox;
|
|
F32 mManipulatorSize;
|
|
S32 mHighlightedAxis;
|
|
F32 mHighlightedDirection;
|
|
BOOL mForce;
|
|
};
|
|
|
|
#endif // Q_QTOOLALIGN_H
|