00001 /* 00002 Situare - A location system for Facebook 00003 Copyright (C) 2010 Ixonos Plc. Authors: 00004 00005 Jussi Laitinen - jussi.laitinen@ixonos.com 00006 Sami Rämö - sami.ramo@ixonos.com 00007 00008 Situare is free software; you can redistribute it and/or 00009 modify it under the terms of the GNU General Public License 00010 version 2 as published by the Free Software Foundation. 00011 00012 Situare is distributed in the hope that it will be useful, 00013 but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00015 GNU General Public License for more details. 00016 00017 You should have received a copy of the GNU General Public License 00018 along with Situare; if not, write to the Free Software 00019 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, 00020 USA. 00021 */ 00022 00023 #ifndef ROUTINGPANEL_H 00024 #define ROUTINGPANEL_H 00025 00026 #include <QtGui> 00027 00028 #include "panelbase.h" 00029 00030 class ExtendedListItemDelegate; 00031 class GeoCoordinate; 00032 class ImageButton; 00033 class Route; 00034 class RouteWaypointListView; 00035 00042 class RoutingPanel : public PanelBase 00043 { 00044 Q_OBJECT 00045 00046 public: 00052 RoutingPanel(QWidget *parent = 0); 00053 00054 /******************************************************************************* 00055 * BASE CLASS INHERITED AND REIMPLEMENTED MEMBER FUNCTIONS 00056 ******************************************************************************/ 00057 protected: 00065 void hideEvent(QHideEvent *event); 00066 00067 /******************************************************************************* 00068 * MEMBER FUNCTIONS AND SLOTS 00069 ******************************************************************************/ 00070 private slots: 00074 void clearListsSelections(); 00075 00079 void clearRouteButtonClicked(); 00080 00088 void setRoute(Route &route); 00089 00090 /******************************************************************************* 00091 * SIGNALS 00092 ******************************************************************************/ 00093 signals: 00097 void clearRoute(); 00098 00102 void routeToCursor(); 00103 00109 void routeWaypointItemClicked(const GeoCoordinate &coordinate); 00110 00116 void showPanelRequested(QWidget *widget); 00117 00118 /******************************************************************************* 00119 * DATA MEMBERS 00120 ******************************************************************************/ 00121 private: 00122 QLabel *m_resultsLabel; 00123 00124 ImageButton *m_clearRouteButton; 00125 RouteWaypointListView *m_routeWaypointListView; 00126 }; 00127 00128 #endif // ROUTINGPANEL_H