Skip to content
Snippets Groups Projects
Select Git revision
  • e72856b765aa80f5cc7ce1a5f40e20a3fa89c8a0
  • master default protected
  • release/201811
  • release/201812
  • release/201901
  • release/201902
  • release/201903
  • release/201904
  • release/201905
  • release/201906
  • release/201908
  • release/201912
  • release/202001
  • release/202005
  • release/windows-test/201910
  • release/201808
  • wip/smartlist_refacto
  • wip/patches_poly_2017/JimmyHamel/MathieuGirouxHuppe
18 results

CallsViewModel.h

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    CallsViewModel.h 2.34 KiB
    #pragma once
    /**************************************************************************
    * Copyright (C) 2016 by Savoir-faire Linux                                *
    * Author: Jger 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/>.   *
    **************************************************************************/
    using namespace Platform::Collections;
    
    namespace RingClientUWP
    {
    /* delegate */
    delegate void CallRecieved(Call^ call);
    delegate void CallStatusUpdated(Call^ call);
    delegate void CallStarted();
    delegate void CallEnded();
    
    namespace ViewModel {
    public ref class CallsViewModel sealed
    {
    internal:
        /* singleton */
        static property CallsViewModel^ instance
        {
            CallsViewModel^ get()
            {
                static CallsViewModel^ instance_ = ref new CallsViewModel();
                return instance_;
            }
        }
    
        /* properties */
        property Vector<String^>^ _callIdList
        {
            Vector<String^>^ get()
            {
                return callIdsList_;
            }
        }
    
        /* events */
        event CallRecieved^ callRecieved;
        event CallStatusUpdated^ callStatusUpdated;
        event CallStarted^ callStarted;
        event CallEnded^ callEnded;
    
    private:
        CallsViewModel(); // singleton
        Vector<String^>^ callIdsList_;
    
    };
    }
    }