blob: fb5be0b45f07188c544ea00ac6e662455c353724 [file] [log] [blame]
Nicolas Jagera92f1312016-08-25 08:01:22 -04001#pragma once
2/**************************************************************************
3* Copyright (C) 2016 by Savoir-faire Linux *
4* Author: Jäger Nicolas <nicolas.jager@savoirfairelinux.com> *
5* *
6* This program is free software; you can redistribute it and/or modify *
7* it under the terms of the GNU General Public License as published by *
8* the Free Software Foundation; either version 3 of the License, or *
9* (at your option) any later version. *
10* *
11* This program is distributed in the hope that it will be useful, *
12* but WITHOUT ANY WARRANTY; without even the implied warranty of *
13* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
14* GNU General Public License for more details. *
15* *
16* You should have received a copy of the GNU General Public License *
17* along with this program. If not, see <http://www.gnu.org/licenses/>. *
18**************************************************************************/
19using namespace Platform;
20using namespace Windows::UI::Xaml::Data;
21
22namespace RingClientUWP
23{
24public ref class Call sealed : public INotifyPropertyChanged
25{
26public:
27 /* functions */
28 Call(String^ accountId, String^ callId, String^ from);
29 void stateChange(String^ state, int code);
30
31 /* properties */
32 virtual event PropertyChangedEventHandler^ PropertyChanged;
33
34 property String^ accountId;
35 property String^ callId;
36 property String^ from;
37 property String^ state;
Nicolas Jager5750df02016-09-13 11:20:33 -040038 property bool isOutGoing;
Nicolas Jagera92f1312016-08-25 08:01:22 -040039 property int code;
40
41 /* events */
42
43protected:
44 /* properties */
45 void NotifyPropertyChanged(String^ propertyName);
46
Nicolas Jagerf6a10322016-09-06 08:17:49 -040047internal:
48 void refuse();
49 void accept();
Nicolas Jager5750df02016-09-13 11:20:33 -040050 void cancel();
Nicolas Jagera92f1312016-08-25 08:01:22 -040051
52};
53}
54