summaryrefslogtreecommitdiff
path: root/winrt/mupdf_cpp/RectList.h
blob: d138397a85e5b29e8a8916d2545b73e2c7bb3cdc (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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
#pragma once

/* WinRT RectList class for binding a collection of rects to the xaml ui */
using namespace Windows::UI::Xaml::Media::Imaging;
using namespace Windows::UI::Xaml::Controls;
using namespace Platform;  /* For String */

namespace mupdf_cpp
{
    [Windows::UI::Xaml::Data::Bindable] // in c++, adding this attribute to ref classes enables data binding for more info search for 'Bindable' on the page http://go.microsoft.com/fwlink/?LinkId=254639 

    public ref class RectList sealed
    {
    private:
        int height;
        int width;
        int x;
        int y; 
        String^ color;
        /* These are used to store the link infomation */
        int type;
        int pagenum;
        Windows::Foundation::Uri ^uri;
    public:
        RectList(void);

        property int Height
        {
            int get() { return ((int) height); }
            void set(int value)
            {
                if (value < 0)
                { 
                    throw ref new Platform::InvalidArgumentException(); 
                }
                height = value;
            }
        }

        property String^ Color
        {
            String^ get() { return (color); }
            void set(String^ value)
            {
                color = value;
            }
        }

        property int Width
        {
            int get() { return width; }
            void set(int value)
            {
                if (value < 0) 
                { 
                    throw ref new Platform::InvalidArgumentException(); 
                }
                width = value;
            }
        }

        property int X
        {
            int get() { return x; }
            void set(int value)
            {
                x = value;
            }
        }

        property int Y
        {
            int get() { return y; }
            void set(int value)
            {
                y = value;
            }
        }

        property int Type
        {
            int get() { return type; }
            void set(int value)
            {
                type = value;
            }
        }

        property int PageNum
        {
            int get() { return pagenum; }
            void set(int value)
            {
                pagenum = value;
            }
        }

        property Windows::Foundation::Uri^ Urilink
        {
            Windows::Foundation::Uri^ get() { return uri; }
            void set(Windows::Foundation::Uri^ value)
            {
                uri = value;
            }
        }
    };
}