syncsettings.h

来自「funambol window mobile客户端源代码」· C头文件 代码 · 共 178 行

H
178
字号
/*
 * Funambol is a mobile platform developed by Funambol, Inc. 
 * Copyright (C) 2003 - 2007 Funambol, Inc.
 * 
 * This program is free software; you can redistribute it and/or modify it under
 * the terms of the GNU Affero General Public License version 3 as published by
 * the Free Software Foundation with the addition of the following permission
 * added to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED
 * WORK IN WHICH THE COPYRIGHT IS OWNED BY FUNAMBOL, FUNAMBOL DISCLAIMS THE
 * WARRANTY OF NON INFRINGEMENT  OF THIRD PARTY RIGHTS.
 * 
 * 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 Affero General Public License
 * along with this program; if not, see http://www.gnu.org/licenses or write to
 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
 * MA 02110-1301 USA.
 * 
 * You can contact Funambol, Inc. headquarters at 643 Bair Island Road, Suite
 * 305, Redwood City, CA 94063, USA, or at email address info@funambol.com.
 * 
 * The interactive user interfaces in modified source and object code versions
 * of this program must display Appropriate Legal Notices, as required under
 * Section 5 of the GNU Affero General Public License version 3.
 * 
 * In accordance with Section 7(b) of the GNU Affero General Public License
 * version 3, these Appropriate Legal Notices must retain the display of the
 * "Powered by Funambol" logo. If the display of the logo is not reasonably
 * feasible for technical reasons, the Appropriate Legal Notices must display
 * the words "Powered by Funambol".
 */

#pragma once

#include "ui.h"
#include "afxcmn.h"
#include "afxwin.h"
#include "CustomButton.h"

/**
 * Sync Settings dialog
 */
class CSyncSettings : public CDialog
{
    DECLARE_DYNAMIC(CSyncSettings)

public:
    CSyncSettings(CWnd* pParent = NULL);   // standard constructor
    virtual ~CSyncSettings();

// Dialog Data
    enum { IDD = IDD_UI_SYNC };

protected:
    int paddingVal;
    CButton checkMail;
    CButton checkCalendar;
    CButton checkContacts;
    CButton checkTasks;
    CButton checkBriefcase;
    CFont fontBold;
    CCustomButton linkAdvanced;
    //CCustomButton linkMail;

    SHMENUBARINFO dlgCommandBar;

    #if defined(WIN32_PLATFORM_PSPC)
        CButton checkNotes;
        CCustomButton butNotes;
    #endif


    CCustomButton butMail;
    CCustomButton butBriefcase;
    CCustomButton butPimOptions;

    CString source;
    int advanced;

    int checkedSources;

    // enables/disables the right soft key 'Details' button
    //void EnableAdvancedButton(bool bEnable);

    /**
     * loads strings onto the dialog from the stringtable
     */
    void LoadStringResources();

    /**
     * processes key events (arrow keys), overriding the default behaviour
     * @return:true if the message was processed
     */
    bool processKeyEvents(WPARAM key);

    /**
     * overrides default handling of some window events
     * @see : processKeyEvents
     */
    BOOL PreTranslateMessage(MSG* pMsg);

    /**
     * called on dialog init
     */
    virtual BOOL OnInitDialog();

    virtual void OnInitMenuPopup(CMenu *pPopupMenu, UINT nIndex,BOOL bSysMenu);

    void OnAdvanced();

    HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);

    virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
    #if defined(_DEVICE_RESOLUTION_AWARE)
        afx_msg void OnSize(UINT /*nType*/, int /*cx*/, int /*cy*/);
    #endif

    afx_msg void OnPaint();

    DECLARE_MESSAGE_MAP()
public:
    /**
     * opens advanced settings window for <source>  sync source
     */
    afx_msg void showAdvanced();

    // TODO: check if needed
    /**
     * when focus is set on a source checkbox
     */
    afx_msg void OnSetfocusSyncContacts();
    afx_msg void OnBnSetfocusSyncCalendar();
    afx_msg void OnBnSetfocusSyncTasks();
    afx_msg void OnBnSetfocusSyncMail();
    afx_msg void OnBnSetfocusSyncBriefcase();
    afx_msg void OnBnSetfocusSyncPimOptions();

    afx_msg void OnSetFocus( CWnd* pOldWnd  );

    // TODO: check if needed
    afx_msg void OnBnClickedSyncContacts();
    afx_msg void OnBnClickedSyncCalendar();
    afx_msg void OnBnClickedSyncTasks();
    afx_msg void OnBnClickedSyncMail();
    afx_msg void OnBnClickedSyncBriefcase();

    afx_msg void OnOK();

    /**
     * when an 'Advanced..' link for a source was activated
     * takes the user in a window with the advanced settings for that source
     */
    afx_msg void OnClickedSyncButtonMail();
    afx_msg void OnClickedSyncButtonBriefcase();
    afx_msg void OnClickedSyncButtonNotes();
    afx_msg void OnClickedSyncButtonPimOptions();

    #if defined(WIN32_PLATFORM_PSPC)
    afx_msg void OnBnClickedSyncNotes();
        afx_msg void OnBnSetfocusSyncNotes();
    #endif

    /**
     *  'Advanced Settings' link was activated
     */
    afx_msg void OnBnClickedSyncLinkAdvanced();

    // TODO: is empty, check if needed
    afx_msg void OnBnSetfocusSyncLinkAdvanced();

    afx_msg void OnEmailOptionsClicked();
    afx_msg void OnPIMOptionsClicked();
    afx_msg void OnSyncMethodClicked();
};

⌨️ 快捷键说明

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