File: pagecontroller.cpp

package info (click to toggle)
okular 4%3A25.11.90-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 36,488 kB
  • sloc: cpp: 81,901; ansic: 7,822; xml: 3,497; javascript: 435; java: 59; sh: 33; makefile: 11
file content (41 lines) | stat: -rw-r--r-- 840 bytes parent folder | download | duplicates (3)
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
/*
    SPDX-FileCopyrightText: 2007 Pino Toscano <pino@kde.org>

    SPDX-License-Identifier: GPL-2.0-or-later
*/

#include "pagecontroller_p.h"

// local includes
#include "page_p.h"
#include "rotationjob_p.h"

#include <threadweaver/queueing.h>

using namespace Okular;

PageController::PageController()
    : QObject()
{
}

PageController::~PageController()
{
}

void PageController::addRotationJob(RotationJob *job)
{
    connect(job, &RotationJob::done, this, &PageController::imageRotationDone);
    ThreadWeaver::enqueue(&m_weaver, job);
}

void PageController::imageRotationDone(const ThreadWeaver::JobPointer &j)
{
    RotationJob *job = static_cast<RotationJob *>(j.data());

    if (job->page()) {
        job->page()->imageRotationDone(job);

        Q_EMIT rotationFinished(job->page()->m_number, job->page()->m_page);
    }
}