Okular

kjs_display.cpp
1 /*
2  SPDX-FileCopyrightText: 2019 João Netto <[email protected]>
3 
4  SPDX-License-Identifier: GPL-2.0-or-later
5 */
6 
7 #include "../form.h"
8 #include "kjs_display_p.h"
9 
10 #include <kjs/kjsobject.h>
11 #include <kjs/kjsprototype.h>
12 
13 #include <QString>
14 
15 using namespace Okular;
16 
17 static KJSPrototype *g_displayProto;
18 
19 // display.hidden
20 static KJSObject displayGetHidden(KJSContext *, void *)
21 {
22  return KJSNumber(FormDisplay::FormHidden);
23 }
24 
25 // display.visible
26 static KJSObject displayGetVisible(KJSContext *, void *)
27 {
28  return KJSNumber(FormDisplay::FormVisible);
29 }
30 
31 // display.noView
32 static KJSObject displayGetNoView(KJSContext *, void *)
33 {
34  return KJSNumber(FormDisplay::FormNoView);
35 }
36 
37 // display.noPrint
38 static KJSObject displayGetNoPrint(KJSContext *, void *)
39 {
40  return KJSNumber(FormDisplay::FormNoPrint);
41 }
42 
43 void JSDisplay::initType(KJSContext *ctx)
44 {
45  static bool initialized = false;
46  if (initialized) {
47  return;
48  }
49  initialized = true;
50 
51  g_displayProto = new KJSPrototype();
52 
53  g_displayProto->defineProperty(ctx, QStringLiteral("hidden"), displayGetHidden);
54  g_displayProto->defineProperty(ctx, QStringLiteral("visible"), displayGetVisible);
55  g_displayProto->defineProperty(ctx, QStringLiteral("noView"), displayGetNoView);
56  g_displayProto->defineProperty(ctx, QStringLiteral("noPrint"), displayGetNoPrint);
57 }
58 
59 KJSObject JSDisplay::object(KJSContext *ctx)
60 {
61  return g_displayProto->constructObject(ctx, nullptr);
62 }
The documentation to the global Okular namespace.
Definition: action.h:16
void defineProperty(KJSContext *ctx, const QString &name, PropertyGetter getter, PropertySetter setter=nullptr)
KJSObject constructObject(KJSContext *ctx, void *internalValue=nullptr)
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Thu Mar 23 2023 04:04:24 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.