X-Git-Url: http://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fwidgets%2Fpopup.h;fp=pv%2Fwidgets%2Fpopup.h;h=0000000000000000000000000000000000000000;hp=83ad7ee0fbd082ebb533fe7dafa280b6944d6a04;hb=2acdb232d6bb452cfdfaea3ef5218fb4da592329;hpb=8dbbc7f0b9ea59d0f0d62225772f8a56eee125f5 diff --git a/pv/widgets/popup.h b/pv/widgets/popup.h deleted file mode 100644 index 83ad7ee0..00000000 --- a/pv/widgets/popup.h +++ /dev/null @@ -1,97 +0,0 @@ -/* - * This file is part of the PulseView project. - * - * Copyright (C) 2013 Joel Holdsworth - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#ifndef PULSEVIEW_PV_WIDGETS_POPUP_H -#define PULSEVIEW_PV_WIDGETS_POPUP_H - -#include - -namespace pv { -namespace widgets { - -class Popup : public QWidget -{ - Q_OBJECT - -public: - enum Position - { - Right, - Top, - Left, - Bottom - }; - -private: - static const unsigned int ArrowLength; - static const unsigned int ArrowOverlap; - static const unsigned int MarginWidth; - -public: - Popup(QWidget *parent); - - const QPoint& point() const; - Position position() const; - - void set_position(const QPoint point, Position pos); - - bool eventFilter(QObject *obj, QEvent *evt); - - void show(); - -private: - bool space_for_arrow() const; - - QPolygon arrow_polygon() const; - - QRegion arrow_region() const; - - QRect bubble_rect() const; - - QRegion bubble_region() const; - - QRegion popup_region() const; - - void reposition_widget(); - -private: - void closeEvent(QCloseEvent*); - - void paintEvent(QPaintEvent*); - - void resizeEvent(QResizeEvent*); - - void mouseReleaseEvent(QMouseEvent *e); - -protected: - void showEvent(QShowEvent *e); - -Q_SIGNALS: - void closed(); - -private: - QPoint point_; - Position pos_; -}; - -} // namespace widgets -} // namespace pv - -#endif // PULSEVIEW_PV_WIDGETS_POPUP_H