⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 settingsapp.hpp

📁 一个WinCE6。0下的IP phone的源代码
💻 HPP
字号:
//
// Copyright (c) Microsoft Corporation.  All rights reserved.
//
//
// Use of this sample source code is subject to the terms of the Microsoft
// license agreement under which you licensed this sample source code. If
// you did not accept the terms of the license agreement, you are not
// authorized to use this sample source code. For the terms of the license,
// please see the license agreement between you and Microsoft or, if applicable,
// see the LICENSE.RTF on your install media or the root of your tools installation.
// THE SAMPLE SOURCE CODE IS PROVIDED "AS IS", WITH NO WARRANTIES.
//
#pragma once

#ifndef __SETTINGSAPP_HPP__
#define __SETTINGSAPP_HPP__

#include <windows.h>
#include <list.hxx>
#include "Common.hpp"
#include <SettingsApi.hpp>

#define WM_SETTINGSMENU_DONE                (WM_APP + 2)
#define WM_SETTINGS_AUTH_REQUEST_COMPLETE   (WM_APP + 3)

class SettingsApp_t
{
public:
    enum ScreenId
    {
        IdSettings = 0,
        IdCallForwarding,
        IdDoNotDisturb,
        IdCallerIdBlocking,
        IdPhoneSettings,
        IdUserSettings,
        IdVolumeSettings,
        IdRingTones,
        IdAutoDial,
        IdViewServerSettings,
        IdEditServerSettings,
        IdWindowsLogon,
        IdSetPIN,
        IdLast          //MUST be last item
    };

    typedef ce::list<ScreenId> ScreenStack_t;

    SettingsApp_t();
    ~SettingsApp_t();

    static 
    HRESULT
    SendCommandLine(
        __in const WCHAR*  pCommandLine
        );

    HRESULT
    Run(
        HINSTANCE hInstance,
        __in const WCHAR*  pCommandLine
        );

    static 
    LRESULT 
    WINAPI   
    s_HiddenWndProc(
        HWND   hwndDialog, 
        UINT   uMsg, 
        WPARAM wParam,
        LPARAM lParam
        );

    HRESULT 
    CreateNewWindow(
        SettingsApp_t::ScreenId id
        );
    
    HRESULT 
    GoBackToPreviousScreen ();

private:
    LRESULT 
    HiddenWndProc(
        HWND   hwndDialog, 
        UINT   uMsg, 
        WPARAM wParam,
        LPARAM lParam
        );

    HRESULT 
    CreateHiddenWindow(
        void
        );

    void    
    DestroyHiddenWindow(
        void
        );

    HRESULT
    OnCommandLine(
        ScreenId id
        );

    HRESULT
    Exit(
        void
        ); 

    HRESULT
    OnAuthRequestComplete(
        AuthenticationResult_e  Result
        );

private:
    bool                m_IsRunning;
    bool                m_WaitingForAuth;

    HWND                m_HiddenWindow;

    ScreenStack_t       m_Stack;
    HWND                m_TopScreen;
    ScreenId            m_TopId;
    ScreenId            m_PendingAuthScreenId;
};

SettingsApp_t*      GetSettingsApp();

#endif //!defined __SETTINGSAPP_HPP__

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -