messagingapp/msgui/msguiutils/inc/msgservicelaunchutil.h
author hgs
Tue, 05 Oct 2010 13:58:47 +0530
changeset 73 ecf6a73a9186
permissions -rw-r--r--
201039_03
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
73
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
     1
/*
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
     2
 * Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
     3
 * All rights reserved.
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
     4
 * This component and the accompanying materials are made available
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
     5
 * under the terms of "Eclipse Public License v1.0"
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
     6
 * which accompanies this distribution, and is available
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
     8
 *
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
     9
 * Initial Contributors:
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    10
 * Nokia Corporation - initial contribution.
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    11
 *
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    12
 * Contributors:
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    13
 * 
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    14
 * Description:This class provides duration of media file by parsing it
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    15
 *
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    16
 */
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    17
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    18
#ifndef MSGSERVICELAUNCHUTIL_H_
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    19
#define MSGSERVICELAUNCHUTIL_H_
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    20
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    21
#ifdef BUILD_MSGUI_UTILS_DLL
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    22
#define MSGUI_UTILS_DLL_EXPORT Q_DECL_EXPORT
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    23
#else
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    24
#define MSGUI_UTILS_DLL_EXPORT Q_DECL_IMPORT
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    25
#endif
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    26
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    27
#include <QObject>
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    28
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    29
/**
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    30
 * This class provides duration of media file by parsing it
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    31
 * 
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    32
 */
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    33
class MSGUI_UTILS_DLL_EXPORT MsgServiceLaunchUtil : public QObject
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    34
{
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    35
    Q_OBJECT
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    36
    
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    37
public:   
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    38
    /**
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    39
     * Constructor
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    40
     */
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    41
    MsgServiceLaunchUtil(QObject* parent=0);
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    42
    
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    43
    /**
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    44
     * Destructor
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    45
     */
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    46
    ~MsgServiceLaunchUtil();
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    47
    
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    48
    /**
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    49
     * Utility function to launch different content viewers.
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    50
     * @param mimeType Mime type of the content.
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    51
     * @param filePath Absolute file path of content.
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    52
     */
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    53
    void launchContentViewer(
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    54
            const QString &mimeType, 
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    55
            const QString &filePath);    
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    56
    
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    57
    /**
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    58
     * Utility function to launch different content viewers.
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    59
     * @param mimeType Mime type of the content.
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    60
     * @param filePath Absolute file path of content.
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    61
     */
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    62
    void launchContentViewer(int messageId); 
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    63
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    64
private slots:
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    65
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    66
    /**
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    67
     * Service launch complete.
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    68
     */
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    69
    void handleOk(const QVariant& result);
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    70
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    71
    /**
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    72
     * Service launch errors.
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    73
     */
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    74
    void handleError(int errorCode, const QString& errorMessage);
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    75
    
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    76
private:
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    77
    
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    78
    /**
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    79
     * This launches any sharable content using XQSharable
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    80
     * @param filePath reference to sharable file path
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    81
    */
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    82
    void launchViaSharableFile(const QString &filePath);   
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    83
    
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    84
};    
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    85
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    86
#endif /* MSGSERVICELAUNCHUTIL_H_ */
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    87
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    88
//eof
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    89