DYTSrouce/src/scene/ui/ZoomManager.h

57 lines
1.0 KiB
C
Raw Normal View History

2025-01-12 17:35:51 +00:00
#ifndef Zoom_H_
#define Zoom_H_
#include "BackGroundWidget.h"
#include "CompositeHandle.h"
#include "CompositeWidget.h"
#include "ZoomWidget.h"
#include "ZoomHandle.h"
#include <QObject>
#include <QVariant>
class ZoomManager : public osg::Referenced {
public:
ZoomManager(void);
~ZoomManager(void);
void ResetCanvasPosition(double x, double y);
void SendZoom();
osgWidget::Canvas* GetCanvasZoom() {
return _canvasZoom;
}
void AttachViewUI(class OsgViewUI* ui);
//
//signals:
// void signalZoom(QVariant var);
private:
osgWidget::Canvas* _canvasZoom;
osgWidget::Widget* _lessen;
osgWidget::Widget* _enlargement;
osgWidget::Widget* _zoomBackground;
osgWidget::Widget* _bar;
osgWidget::Widget* _bar_;
osgWidget::Widget* _zoomBackground_shadow;
int _zoomNum[1];
public:
enum STATE {
MOUSE_PUSH,
MOUSE_RELEASE,
MOUSE_LEAVE,
MOUSE_OVER,
MOUSE_DRAG,
DEFAULT
};
STATE state;
double zoom;
};
#endif