ginebra2/ToolbarSnippet.h
author hgs
Fri, 06 Aug 2010 17:23:08 -0400
changeset 9 b39122337a00
parent 3 0954f5dd2cd0
permissions -rw-r--r--
201031
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
hgs
parents:
diff changeset
     3
* All rights reserved.
hgs
parents:
diff changeset
     4
*
hgs
parents:
diff changeset
     5
* This program is free software: you can redistribute it and/or modify
hgs
parents:
diff changeset
     6
* it under the terms of the GNU Lesser General Public License as published by
hgs
parents:
diff changeset
     7
* the Free Software Foundation, version 2.1 of the License.
hgs
parents:
diff changeset
     8
*
hgs
parents:
diff changeset
     9
* This program is distributed in the hope that it will be useful,
hgs
parents:
diff changeset
    10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
hgs
parents:
diff changeset
    11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
hgs
parents:
diff changeset
    12
* GNU Lesser General Public License for more details.
hgs
parents:
diff changeset
    13
*
hgs
parents:
diff changeset
    14
* You should have received a copy of the GNU Lesser General Public License
hgs
parents:
diff changeset
    15
* along with this program.  If not,
hgs
parents:
diff changeset
    16
* see "http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html/".
hgs
parents:
diff changeset
    17
*
hgs
parents:
diff changeset
    18
* Description:
hgs
parents:
diff changeset
    19
*
hgs
parents:
diff changeset
    20
*/
hgs
parents:
diff changeset
    21
#ifndef __GINEBRA_TOOLBARSNIPPET_H
hgs
parents:
diff changeset
    22
#define __GINEBRA_TOOLBARSNIPPET_H
hgs
parents:
diff changeset
    23
hgs
parents:
diff changeset
    24
hgs
parents:
diff changeset
    25
#include <QtGui>
hgs
parents:
diff changeset
    26
#include "ActionButtonSnippet.h"
hgs
parents:
diff changeset
    27
#include "Toolbar.h"
hgs
parents:
diff changeset
    28
#include "WebChromeContainerSnippet.h"
hgs
parents:
diff changeset
    29
hgs
parents:
diff changeset
    30
namespace GVA {
hgs
parents:
diff changeset
    31
hgs
parents:
diff changeset
    32
hgs
parents:
diff changeset
    33
/* \brief This is the base class for all toolbar snippets.
hgs
parents:
diff changeset
    34
 * 
hgs
parents:
diff changeset
    35
 * This is the base class for all toolbar snippets. It maintains a list of all actions associated
hgs
parents:
diff changeset
    36
 * with the toolbar (populated by the specific derived class). It connects all the actioins
hgs
parents:
diff changeset
    37
 * to the associated view. It also sets the images for the different states of the button for each
hgs
parents:
diff changeset
    38
 * of the buttons. 
hgs
parents:
diff changeset
    39
 */
hgs
parents:
diff changeset
    40
hgs
parents:
diff changeset
    41
  class ToolbarSnippet : public WebChromeContainerSnippet
hgs
parents:
diff changeset
    42
  {
hgs
parents:
diff changeset
    43
    Q_OBJECT
hgs
parents:
diff changeset
    44
  public:
hgs
parents:
diff changeset
    45
    ToolbarSnippet(const QString& elementId, ChromeWidget * chrome, const QWebElement & element);
hgs
parents:
diff changeset
    46
    virtual ~ToolbarSnippet();
hgs
parents:
diff changeset
    47
hgs
parents:
diff changeset
    48
  private Q_SLOTS:
hgs
parents:
diff changeset
    49
    virtual void onChromeComplete();
hgs
parents:
diff changeset
    50
hgs
parents:
diff changeset
    51
  protected:
hgs
parents:
diff changeset
    52
    virtual void setAction(ChromeSnippet * s);
hgs
parents:
diff changeset
    53
hgs
parents:
diff changeset
    54
    /// Reimplemented from WebChromeContainerSnippet
hgs
parents:
diff changeset
    55
    virtual void updateOwnerArea();
hgs
parents:
diff changeset
    56
    virtual void updateSize(QSize);
hgs
parents:
diff changeset
    57
hgs
parents:
diff changeset
    58
    /// Utilities
hgs
parents:
diff changeset
    59
    int getIndex(ChromeSnippet * s );
hgs
parents:
diff changeset
    60
    int getIndex(int actionId );
hgs
parents:
diff changeset
    61
    ActionButtonSnippet * getActionButtonSnippet( int  actionId);
hgs
parents:
diff changeset
    62
hgs
parents:
diff changeset
    63
    /// Details of all actions in the toolbar
hgs
parents:
diff changeset
    64
    QList<ToolbarActions_t*>  m_actionInfo;
hgs
parents:
diff changeset
    65
    /// View the toolbar is associated with
hgs
parents:
diff changeset
    66
    QString m_type;
hgs
parents:
diff changeset
    67
hgs
parents:
diff changeset
    68
  };
hgs
parents:
diff changeset
    69
hgs
parents:
diff changeset
    70
} // end of namespace GVA
hgs
parents:
diff changeset
    71
hgs
parents:
diff changeset
    72
#endif // __GINEBRA_TOOLBARSNIPPET_H