All Classes Namespaces Files Functions Variables Enumerations Enumerator
programs/MultiUrgViewer/DrawWidget.h
Go to the documentation of this file.
00001 #ifndef DRAW_WIDGET_H
00002 #define DRAW_WIDGET_H
00003 
00013 #include <QWidget>
00014 #include <memory>
00015 
00016 namespace qrk
00017 {
00018   class RangeSensor;
00019 }
00020 
00021 class UrgStateWidget;
00022 
00023 
00024 class DrawWidget : public QWidget
00025 {
00026   Q_OBJECT;
00027 
00028   DrawWidget(const DrawWidget& rhs);
00029   DrawWidget& operator = (const DrawWidget& rhs);
00030 
00031   struct pImpl;
00032   std::auto_ptr<pImpl> pimpl;
00033 
00034 private slots:
00035   void closeEvent(QCloseEvent* event);
00036   void quitPressed(void);
00037   void initializeView(void);
00038   void zoomSmaller(void);
00039   void zoomLarger(void);
00040 
00041 
00042 public:
00043   DrawWidget(QWidget* parent = 0);
00044   ~DrawWidget(void);
00045 
00046   void setTitle(const QString& title, UrgStateWidget* urg_state_widget);
00047   void setUrgData(std::vector<long>& data,
00048                   const qrk::RangeSensor* sensor, int timestamp,
00049                   UrgStateWidget* urg_state_widget);
00050   void disconnected(UrgStateWidget* urg_state_widget);
00051 
00052 signals:
00053   void quit(void);
00054 };
00055 
00056 #endif /* !DRAW_WIDGET_H */