/usr/include/qgis/qgshtmlannotationitem.h is in libqgis-dev 2.8.6+dfsg-1build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 | /***************************************************************************
qgshtmlannotationitem.h
------------------------
begin : February 9, 2010
copyright : (C) 2010 by Marco Hugentobler
email : marco dot hugentobler at hugis dot net
***************************************************************************/
/***************************************************************************
* *
* 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. *
* *
***************************************************************************/
#ifndef QGSHTMLANNOTATIONITEM_H
#define QGSHTMLANNOTATIONITEM_H
#include "qgsannotationitem.h"
#include "qgsfeature.h"
#include <QObject>
#include <QWebView>
#include <QWebFrame>
class QGraphicsProxyWidget;
/**An annotation item that embedds a designer form showing the feature attribute*/
class GUI_EXPORT QgsHtmlAnnotationItem: public QObject, public QgsAnnotationItem
{
Q_OBJECT
public:
QgsHtmlAnnotationItem( QgsMapCanvas* canvas, QgsVectorLayer* vlayer = 0, bool hasFeature = false, int feature = 0 );
~QgsHtmlAnnotationItem();
void paint( QPainter * painter ) override;
//! paint function called by map canvas
void paint( QPainter * painter, const QStyleOptionGraphicsItem * option, QWidget * widget = 0 ) override;
QSizeF minimumFrameSize() const override;
/**Reimplemented from QgsAnnotationItem*/
void setMapPosition( const QgsPoint& pos ) override;
void setHTMLPage( const QString& htmlFile );
QString htmlPage() const { return mHtmlFile; }
void writeXML( QDomDocument& doc ) const override;
void readXML( const QDomDocument& doc, const QDomElement& itemElem ) override;
QgsVectorLayer* vectorLayer() const { return mVectorLayer; }
private slots:
/**Sets a feature for the current map position and updates the dialog*/
void setFeatureForMapPosition();
/**Sets visibility status based on mVectorLayer visibility*/
void updateVisibility();
void javascript();
private:
QGraphicsProxyWidget* mWidgetContainer;
QWebView* mWebView;
/**Associated vectorlayer (or 0 if attributes are not supposed to be replaced)*/
QgsVectorLayer* mVectorLayer;
/**True if the item is related to a vector feature*/
bool mHasAssociatedFeature;
/**Associated feature*/
QgsFeatureId mFeatureId;
QgsFeature mFeature;
QString mHtmlFile;
QString mHtmlSource;
QString replaceText( QString displayText, QgsVectorLayer *layer, QgsFeature &feat );
};
#endif // QGSHTMLANNOTATIONITEM_H
|