You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
83 lines
2.5 KiB
83 lines
2.5 KiB
/*************************************************************************** |
|
* Copyright (C) 2007 by Pino Toscano <pino@kde.org> * |
|
* * |
|
* 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 OKULAR_ANNOTATIONS_P_H |
|
#define OKULAR_ANNOTATIONS_P_H |
|
|
|
#include "annotations.h" |
|
#include "area.h" |
|
|
|
// qt/kde includes |
|
#include <QColor> |
|
#include <QDateTime> |
|
#include <QString> |
|
#include <QVariant> |
|
|
|
class QTransform; |
|
|
|
namespace Okular |
|
{ |
|
class PagePrivate; |
|
|
|
class AnnotationPrivate |
|
{ |
|
public: |
|
AnnotationPrivate(); |
|
|
|
virtual ~AnnotationPrivate(); |
|
|
|
AnnotationPrivate(const AnnotationPrivate &) = delete; |
|
AnnotationPrivate &operator=(const AnnotationPrivate &) = delete; |
|
|
|
/** |
|
* Transforms the annotation coordinates with the transformation |
|
* defined by @p matrix. |
|
*/ |
|
void annotationTransform(const QTransform &matrix); |
|
|
|
virtual void transform(const QTransform &matrix); |
|
virtual void baseTransform(const QTransform &matrix); |
|
virtual void resetTransformation(); |
|
virtual void translate(const NormalizedPoint &coord); |
|
virtual void adjust(const NormalizedPoint &deltaCoord1, const NormalizedPoint &deltaCoord2); |
|
virtual bool openDialogAfterCreation() const; |
|
virtual void setAnnotationProperties(const QDomNode &node); |
|
virtual bool canBeResized() const; |
|
virtual AnnotationPrivate *getNewAnnotationPrivate() = 0; |
|
|
|
/** |
|
* Determines the distance of the closest point of the annotation to the |
|
* given point @p x @p y @p xScale @p yScale |
|
* @since 0.17 |
|
*/ |
|
virtual double distanceSqr(double x, double y, double xScale, double yScale) const; |
|
|
|
PagePrivate *m_page; |
|
|
|
QString m_author; |
|
QString m_contents; |
|
QString m_uniqueName; |
|
QDateTime m_modifyDate; |
|
QDateTime m_creationDate; |
|
|
|
int m_flags; |
|
NormalizedRect m_boundary; |
|
NormalizedRect m_transformedBoundary; |
|
|
|
Okular::Annotation::Style m_style; |
|
Okular::Annotation::Window m_window; |
|
QLinkedList<Okular::Annotation::Revision> m_revisions; |
|
|
|
Annotation::DisposeDataFunction m_disposeFunc; |
|
QVariant m_nativeId; |
|
}; |
|
|
|
} |
|
|
|
#endif
|
|
|