Changeset View
Changeset View
Standalone View
Standalone View
components/impl/DocumentImpl.cpp
Show All 37 Lines | |||||
38 | public: | 38 | public: | ||
39 | Private() | 39 | Private() | ||
40 | : type{DocumentType::Unknown} | 40 | : type{DocumentType::Unknown} | ||
41 | , canvas{nullptr} | 41 | , canvas{nullptr} | ||
42 | , finder{nullptr} | 42 | , finder{nullptr} | ||
43 | , canvasController{nullptr} | 43 | , canvasController{nullptr} | ||
44 | , zoomController{nullptr} | 44 | , zoomController{nullptr} | ||
45 | , document{nullptr} | 45 | , document{nullptr} | ||
46 | , readOnly{false} | ||||
46 | { } | 47 | { } | ||
47 | 48 | | |||
48 | DocumentType::Type type; | 49 | DocumentType::Type type; | ||
49 | QGraphicsWidget* canvas; | 50 | QGraphicsWidget* canvas; | ||
50 | KoFindBase* finder; | 51 | KoFindBase* finder; | ||
51 | KoCanvasController* canvasController; | 52 | KoCanvasController* canvasController; | ||
52 | KoZoomController* zoomController; | 53 | KoZoomController* zoomController; | ||
53 | QSize documentSize; | 54 | QSize documentSize; | ||
54 | KoDocument* document; | 55 | KoDocument* document; | ||
56 | bool readOnly; | ||||
55 | }; | 57 | }; | ||
56 | 58 | | |||
57 | DocumentImpl::DocumentImpl(QObject* parent) | 59 | DocumentImpl::DocumentImpl(QObject* parent) | ||
58 | : QObject{parent}, d{new Private} | 60 | : QObject{parent}, d{new Private} | ||
59 | { | 61 | { | ||
60 | 62 | | |||
61 | } | 63 | } | ||
62 | 64 | | |||
▲ Show 20 Lines • Show All 52 Lines • ▼ Show 20 Line(s) | 116 | { | |||
115 | d->canvas = newCanvas; | 117 | d->canvas = newCanvas; | ||
116 | } | 118 | } | ||
117 | 119 | | |||
118 | void DocumentImpl::setFinder(KoFindBase* newFinder) | 120 | void DocumentImpl::setFinder(KoFindBase* newFinder) | ||
119 | { | 121 | { | ||
120 | d->finder = newFinder; | 122 | d->finder = newFinder; | ||
121 | } | 123 | } | ||
122 | 124 | | |||
125 | void DocumentImpl::setReadOnly(bool readOnly) | ||||
126 | { | ||||
127 | d->readOnly = readOnly; | ||||
128 | } | ||||
129 | | ||||
123 | void DocumentImpl::createAndSetCanvasController(KoCanvasBase* canvas) | 130 | void DocumentImpl::createAndSetCanvasController(KoCanvasBase* canvas) | ||
124 | { | 131 | { | ||
125 | auto controller = new ComponentsKoCanvasController{new KActionCollection{this}}; | 132 | auto controller = new ComponentsKoCanvasController{new KActionCollection{this}}; | ||
126 | d->canvasController = controller; | 133 | d->canvasController = controller; | ||
127 | controller->setCanvas(canvas); | 134 | controller->setCanvas(canvas); | ||
135 | if (!d->readOnly) { | ||||
128 | KoToolManager::instance()->addController(controller); | 136 | KoToolManager::instance()->addController(controller); | ||
137 | } | ||||
129 | connect(controller, &ComponentsKoCanvasController::documentSizeChanged, this, &DocumentImpl::setDocumentSize); | 138 | connect(controller, &ComponentsKoCanvasController::documentSizeChanged, this, &DocumentImpl::setDocumentSize); | ||
130 | } | 139 | } | ||
131 | 140 | | |||
132 | void DocumentImpl::createAndSetZoomController(KoCanvasBase* canvas) | 141 | void DocumentImpl::createAndSetZoomController(KoCanvasBase* canvas) | ||
133 | { | 142 | { | ||
134 | auto zoomHandler = static_cast<KoZoomHandler*>(canvas->viewConverter()); | 143 | auto zoomHandler = static_cast<KoZoomHandler*>(canvas->viewConverter()); | ||
135 | d->zoomController = new KoZoomController{d->canvasController, zoomHandler, new KActionCollection(this)}; | 144 | d->zoomController = new KoZoomController{d->canvasController, zoomHandler, new KActionCollection(this)}; | ||
136 | 145 | | |||
Show All 12 Lines |