00001 #ifndef MARQUESPAGES_H 00002 #define MARQUESPAGES_H 00003 00004 /*======================================================================== 00005 Nom: MarquesPages.h auteur: Maneschi Romain 00006 Maj: 17.05.2009 Creation: 05.05.2009 00007 Projet: MYW 00008 -------------------------------------------------------------------------- 00009 Specification: 00010 Classe contenant les QPushButton des marques-pages. Définition de la structure struct_marque_page. 00011 =========================================================================*/ 00012 00020 #include <QToolBar> 00021 #include <QSettings> 00022 #include <QList> 00023 #include <QPushButton> 00024 #include <QPointer> 00025 #include <QMenu> 00026 #include <QVBoxLayout> 00027 #include <QPainter> 00028 #include <QComboBox> 00029 #include <QTreeWidget> 00030 #include <QStringList> 00031 #include <QHeaderView> 00032 00033 #include "MarquePage.h" 00034 #include "MarquePageFleches.h" 00035 #include "MarquePageMenu.h" 00036 00037 class WebBrowser; 00038 class Pages; 00039 00046 struct struct_marque_page 00047 { 00048 QString titre; 00049 QMap<QString/*titre*/, QVariant/*url*/> urls;//QVariant = QString c'est pour QSettings 00050 void getUrls(); 00051 }; 00052 00061 class MarquesPages : public virtual QToolBar 00062 { 00063 Q_OBJECT 00064 00065 private: 00066 WebBrowser * parent; 00067 QList<struct struct_marque_page> * list_marques; 00071 virtual void restaurer(); 00075 virtual void enregistrer(); 00079 virtual void creerBoutons(); 00080 QList<MarquePage*> * list_marques_boutons; 00086 virtual void insererWidgetFleche(QPoint); 00087 QAction * action_fleche; 00088 QWidget * widget_fleche; 00089 //---------------AJOUTER DOSSIER--------------- 00090 QWidget * widgetAjouterDossier; 00091 QWidget * widgetSuppression; 00092 QLineEdit * edit; 00093 QComboBox * cb; 00094 //---------------SUPPRESSION--------------- 00095 QTreeWidget * mes_marques_pages; 00096 QList<QTreeWidgetItem*> mp_a_supprimer; 00098 private slots: 00104 virtual void charger(QAction*); 00108 virtual void ajouterDossierOk(); 00115 virtual void selectionItem(QTreeWidgetItem*, int); 00119 virtual void suppressionOk(); 00120 00121 protected: 00127 virtual void paintEvent(QPaintEvent*); 00133 virtual void dragEnterEvent(QDragEnterEvent*); 00139 virtual void dragMoveEvent(QDragMoveEvent*); 00145 virtual void dropEvent(QDropEvent*); 00146 00147 public: 00155 MarquesPages(WebBrowser * p); 00164 virtual void ajouter(int, QString, QString = QString(""), bool = true); 00171 virtual void charger(QUrl, int); 00175 virtual void mettreAJour(); 00179 virtual void supprimerFleche(); 00185 virtual void supprimerMarquePage(int); 00192 virtual void supprimerAction(int, QString); 00199 virtual void supprimerAction(int, int); 00205 virtual WebBrowser* getParent(); 00211 virtual int getNbMarques(); 00218 virtual bool contient(QString); 00222 virtual void toutSupprimer(); 00226 virtual void defaut(); 00232 virtual QList<struct struct_marque_page>* getListMarquesPages(); 00236 virtual void ajouterDossier(); 00240 virtual void suppression(); 00241 00242 }; 00243 #endif // MARQUESPAGES_H