summaryrefslogtreecommitdiff
path: root/fpdfsdk/javascript/Icon.cpp
blob: 05be2599aac5ed925668f25e600ed5903a6aee5b (plain)
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
// Copyright 2014 PDFium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com

#include "fpdfsdk/javascript/Icon.h"

#include "fpdfsdk/javascript/JS_Define.h"
#include "fpdfsdk/javascript/JS_Object.h"
#include "fpdfsdk/javascript/JS_Value.h"

JSConstSpec CJS_Icon::ConstSpecs[] = {{0, JSConstSpec::Number, 0, 0}};

JSPropertySpec CJS_Icon::PropertySpecs[] = {
    {L"name", get_name_static, set_name_static},
    {0, 0, 0}};

JSMethodSpec CJS_Icon::MethodSpecs[] = {{0, 0}};

IMPLEMENT_JS_CLASS(CJS_Icon, Icon)

Icon::Icon(CJS_Object* pJSObject)
    : CJS_EmbedObj(pJSObject), m_pIconStream(nullptr), m_swIconName(L"") {}

Icon::~Icon() {}

void Icon::SetStream(CPDF_Stream* pIconStream) {
  if (pIconStream)
    m_pIconStream = pIconStream;
}

CPDF_Stream* Icon::GetStream() {
  return m_pIconStream;
}

void Icon::SetIconName(CFX_WideString name) {
  m_swIconName = name;
}

CFX_WideString Icon::GetIconName() {
  return m_swIconName;
}

bool Icon::name(CJS_Runtime* pRuntime,
                CJS_PropValue& vp,
                CFX_WideString& sError) {
  if (!vp.IsGetting())
    return false;

  vp << m_swIconName;
  return true;
}