util.cpp

来自「funambol window mobile客户端源代码」· C++ 代码 · 共 154 行

CPP
154
字号
/*
 * 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".
 */

// service.cpp : register and deregister notlstnr service.
//


#include "pim/SettingFunctions.h"
#include "notify/util.h"
#include "notify/timed_msgbox.h"
#include "base/Log.h"
#include "pim/ClientSettings.h"
#include "notify/s4n_service.h"
#include "notify/addresschange.h"
#include "localizationUtils.h"

#ifdef WIN32_PLATFORM_WFSP
#include "funresourcesp.h"
#endif
#ifdef WIN32_PLATFORM_PSPC
#include "funresourceppc.h"
#endif

//----------------------------------
bool askConfirm()
{
    //
    // insert popup
    //
    // ClientSettings cs(APPLICATION_URI);
    // ClientSettings::getInstance()->readConfig();

    char buf[128];

    strcpy(buf, ClientSettings::getInstance()->getAskUser().c_str());

    //
    // possible value 1 and 2.
    // 1 is download auto
    // 2 is ask user
    //
    //if (strcmp(buf, "2") == 0) {
    if (strcmp(buf, "1") == 0) {

        LOG.debug("Confirm needed: user alerted.");
        wchar_t title[128];
        wsprintf(title, TEXT("%s"), getLocalizationUtils()->getLocalizationString(IDS_FUNAMBOL_ALERT));
        int val = TimedMessageBox(NULL, ASK_MESSAGE, title,
                             MB_YESNO | MB_ICONQUESTION | MB_SETFOREGROUND, ASK_TIMEOUT*1000);

        if (val == IDYES) {
            LOG.debug("User said yes.");
            return true;
        }
        else {
            LOG.debug("User said no.\n");
            return false;
        }
    }
    LOG.debug("Confirm not requested, sync auto.");
    return true;

    /*
    wchar_t buf[128];
    if (wcscmp(notificationType, ASK_TCP_IP) == 0) {
        getClientConfigurationInternal (TEXT(""), PROPERTY_SPDM_PUSH_NOTIFICATION,
                                     buf, FALSE);
    } else {
        getClientConfigurationInternal (TEXT(""), PROPERTY_SPDM_SMS_WAP_PUSH,
                                     buf, FALSE);
    }
    //
    // possible value 1 and 2.
    // 1 is download auto
    // 2 is ask user
    //
    if (wcscmp(buf, TEXT("2")) == 0) {

        LOG.debug("Confirm needed: user alerted.");

        int val = TimedMessageBox(NULL, ASK_MESSAGE, TEXT("Alert"),
                             MB_YESNO | MB_ICONQUESTION | MB_SETFOREGROUND, ASK_TIMEOUT*1000);

        if (val == IDYES) {
            LOG.debug("User said yes.");
            return true;
        }
        else {
            LOG.debug("User said no.\n");
            return false;
        }
    }
    LOG.debug("Confirm not requested, sync auto.");
    return true;
    */
}



bool getAvailability() {

    int ret = 0;
    bool alreadyRegistered = false;

    ret = registerService();
    if (ret == 120) {
        alreadyRegistered = true;
    }

    int code = notifyAddressChange(TEXT(APPLICATION_URI));

    if (!alreadyRegistered) {
        deregisterService();
    }

    if (code == AN_AddressAccepted)
        return true;
    else
        return false;

}

⌨️ 快捷键说明

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