Account.h 2.93 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/***************************************************************************
 * Copyright (C) 2016 by Savoir-faire Linux                                *
 * Author: Jäger Nicolas <nicolas.jager@savoirfairelinux.com>              *
 * Author: Traczyk Andreas <andreas.traczyk@savoirfairelinux.com>          *
 *                                                                         *
 * This program is free software; you can redistribute it and/or modify    *
 * it under the terms of the GNU General Public License as published by    *
 * the Free Software Foundation; either version 3 of the License, or       *
 * (at your option) any later version.                                     *
 *                                                                         *
 * This program is distributed in the hope that it will be useful,         *
 * but WITHOUT ANY WARRANTY; without even the implied warranty of          *
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the           *
 * GNU General Public License for more details.                            *
 *                                                                         *
 * You should have received a copy of the GNU General Public License       *
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.   *
 **************************************************************************/

Nicolas Jager's avatar
Nicolas Jager committed
20
#pragma once
21

Nicolas Jager's avatar
Nicolas Jager committed
22
23
using namespace Platform;
using namespace Windows::UI::Xaml::Data;
Nicolas Jager's avatar
Nicolas Jager committed
24
using namespace Platform::Collections;
Nicolas Jager's avatar
Nicolas Jager committed
25
26
27
28
29
30

namespace RingClientUWP
{
public ref class Account sealed : public INotifyPropertyChanged
{
public:
31
    Account(String^ name, String^ ringID, String^ accountType, String^ accountID, String^ deviceId, bool upnpState);
Nicolas Jager's avatar
Nicolas Jager committed
32
33
34

    virtual event PropertyChangedEventHandler^ PropertyChanged;

35
36
37
38
39
40
41
    property String^ name_
    {
        String^ get() {
            return name__;
        }
        void set(String^ value) {
            name__ = value;
42
            NotifyPropertyChanged("name_");
43
44
        }
    }
45
46
47
48
49
50
51
52
53
    property String^ ringID_ {
        String^ get() {
            return ringID__;
        }
        void set(String^ value) {
            ringID__ = value;
            NotifyPropertyChanged("ringID_");
        }
    }
54
    property String^ accountType_; // refacto : create a enum accountType
55
    property String^ accountID_;
Nicolas Jager's avatar
Nicolas Jager committed
56
57
58
59
60
61
62
63
    property String^ _deviceId;
    property Windows::Foundation::Collections::IVector<String^>^ _devicesIdList {
        Windows::Foundation::Collections::IVector<String^>^ get() {
            return devicesIdList_;
        }
        void set(Windows::Foundation::Collections::IVector<String^>^ value) {
            devicesIdList_ = value;
        }
64
65
    };
    property bool _upnpState;
Nicolas Jager's avatar
Nicolas Jager committed
66
67
68
69

protected:
    void NotifyPropertyChanged(String^ propertyName);

Nicolas Jager's avatar
Nicolas Jager committed
70
71
private:
    Windows::Foundation::Collections::IVector<String^>^ devicesIdList_;
72
    String^ name__;
73
    String^ ringID__;
Nicolas Jager's avatar
Nicolas Jager committed
74

Nicolas Jager's avatar
Nicolas Jager committed
75
76
77
};
}