Home · All Classes · Main Classes · Deprecated
Public Types | Public Member Functions | Protected Member Functions | Properties

MDetailedListItem Class Reference

MDetailedListItem implementation of a detailed widget which can be used with MList. More...

Inheritance diagram for MDetailedListItem:
Inheritance graph
[legend]
Collaboration diagram for MDetailedListItem:
Collaboration graph
[legend]

List of all members.

Public Types

enum  ItemStyle { IconTitleSubtitleAndTwoSideIcons, IconTitleSubtitleAndSideIconWithLabel, ThumbnailTitleSubtitleAndTwoSideIcons, ThumbnailTitleAndTwoSideIcons }
enum  IconStyle { Icon, Thumbnail }

Public Member Functions

 MDetailedListItem (MDetailedListItem::ItemStyle style=IconTitleSubtitleAndTwoSideIcons, QGraphicsItem *parent=NULL)
virtual ~MDetailedListItem ()
void initLayout ()
void setItemStyle (ItemStyle itemStyle)
ItemStyle itemStyle () const
void setIconStyle (IconStyle style)
IconStyle iconStyle () const
void setImageWidget (MImageWidget *icon)
MImageWidgetimageWidget ()
MImageWidgetsideTopImageWidget ()
MImageWidgetsideBottomImageWidget ()
void setTitle (const QString &title)
QString title ()
void setSubtitle (const QString &subtitle)
QString subtitle ()
void setSideBottomTitle (const QString &text)
QString sideBottomTitle ()

Protected Member Functions

MLabeltitleLabelWidget ()
MLabelsubtitleLabelWidget ()
MLabelsideBottomLabelWidget ()
virtual QGraphicsLayoutcreateLayout ()
virtual void clearLayout ()

Properties

QString title
QString subtitle
QString sideBottomTitle
MImageWidget imageWidget
MImageWidget sideTopImageWidget
MImageWidget sideBottomImageWidget

Detailed Description

MDetailedListItem implementation of a detailed widget which can be used with MList.

Overview

MDetailedListItem can show several lines of text, main icon and two icons or one top icon and sub label on left side of the item. The main icon can have two styles, as Icon and as Thumbnail. Exact layout depends on the style and can be set in:

Text and icon can be set using following functions:

Overview

MDetailedListItem appearance can be customized in 2 ways.

Title, subtitle, main icon, side icons and side label are using styles provided by common layout.

Another way is to inherit MDetailedListItem and override:

Definition at line 71 of file corelib/widgets/mdetailedlistitem.h.


Member Enumeration Documentation

Specifies main icon styles for MDetailedListItem.

Enumerator:
Icon 

Defines main icon style as an icon with margins.

Thumbnail 

Defines main icon styles as a thumbnail without margins.

Definition at line 123 of file corelib/widgets/mdetailedlistitem.h.

                   {
        Icon,
        Thumbnail
    };

Specifies layout of MDetailedListItem.

Enumerator:
IconTitleSubtitleAndTwoSideIcons 

Defines style which contains a main icon, title with subtitle and two icons on the side.

IconTitleSubtitleAndSideIconWithLabel 

Defines style which contains a main icon, title with subtitle and small icon with a sublabel on the side.

ThumbnailTitleSubtitleAndTwoSideIcons 

Defines style which contains a main thumbnail, title with subtitle and two icons on the side.

ThumbnailTitleAndTwoSideIcons 

Defines style which contains a main thumbnail, a single title and two icons on the side.

Definition at line 111 of file corelib/widgets/mdetailedlistitem.h.

                   {
        IconTitleSubtitleAndTwoSideIcons,
        IconTitleSubtitleAndSideIconWithLabel,
        ThumbnailTitleSubtitleAndTwoSideIcons,
        ThumbnailTitleAndTwoSideIcons
    };


Constructor & Destructor Documentation

MDetailedListItem::MDetailedListItem ( MDetailedListItem::ItemStyle  style = IconTitleSubtitleAndTwoSideIcons,
QGraphicsItem parent = NULL 
)

MDetailedListItem constructor.

Parameters:
style The style of item to be initialized with, defaults to MDetailedListItem::IconTitleSubtitleAndTwoSideIcons.
parent The item parent.
See also:
MDetailedListItem::ItemStyle
MDetailedListItem::setItemStyle()

Definition at line 175 of file mdetailedlistitem.cpp.

    : MListItem(parent), d_ptr(new MDetailedListItemPrivate(style))
{
    Q_D(MDetailedListItem);
    d->q_ptr = this;

    setItemStyle(style);
    setObjectName("CommonPanel");
}

Here is the call graph for this function:

MDetailedListItem::~MDetailedListItem (  )  [virtual]

MDetailedListItem destructor.

Definition at line 185 of file mdetailedlistitem.cpp.

{
    delete d_ptr;
}


Member Function Documentation

void MDetailedListItem::clearLayout (  )  [protected, virtual]

Clears layout created by createLayout() function.

Definition at line 211 of file mdetailedlistitem.cpp.

{
    Q_D(MDetailedListItem);

    d->clearLayout();
}

QGraphicsLayout * MDetailedListItem::createLayout (  )  [protected, virtual]

Returns layout which will be assigned to MDetailedListItem. Can be called several times, so it should clear layout which was already created.

See also:
MDetailedListItem::titleLabelWidget()
MDetailedListItem::subtitleLabelWidget()
MDetailedListItem::sideBottomLabelWidget()
MDetailedListItem::imageWidget()
MDetailedListItem::sideTopImageWidget()
MDetailedListItem::sideBottomImageWidget()

Definition at line 201 of file mdetailedlistitem.cpp.

{
    Q_D(MDetailedListItem);

    clearLayout();
    d->createLayout();

    return d->layout();
}

Here is the call graph for this function:

MDetailedListItem::IconStyle MDetailedListItem::iconStyle (  )  const

Returns current main icon style.

See also:
MDetailedListItem::setIconStyle()

Definition at line 247 of file mdetailedlistitem.cpp.

{
    Q_D(const MDetailedListItem);

    return d->iconStyle;
}

MImageWidget* MDetailedListItem::imageWidget (  ) 

Creates or returns already created pointer to an item icon widget.

See also:
MDetailedListItem::setImageWidget()
void MDetailedListItem::initLayout (  ) 
Deprecated:
The method is no longer required to be called after constructing the item. There shouldn't be any need for this function.

Definition at line 190 of file mdetailedlistitem.cpp.

{
    Q_D(MDetailedListItem);

    if (d->isLayoutInitialized)
        return;

    setLayout(createLayout());
    d->isLayoutInitialized = true;
}

Here is the call graph for this function:

MDetailedListItem::ItemStyle MDetailedListItem::itemStyle (  )  const

Returns current item style.

See also:
MDetailedListItem::setItemStyle()

Definition at line 230 of file mdetailedlistitem.cpp.

{
    Q_D(const MDetailedListItem);
    return d->listItemStyle;
}

void MDetailedListItem::setIconStyle ( IconStyle  style  ) 

Sets main icon style.

See also:
MDetailedListItem::IconStyle
MDetailedListItem::iconStyle()

Definition at line 236 of file mdetailedlistitem.cpp.

{
    Q_D(MDetailedListItem);

    if(style == d->iconStyle)
        return;

    d->iconStyle = style;
    d->applyIconStyle();
}

void MDetailedListItem::setImageWidget ( MImageWidget icon  ) 

Sets item icon widget. Ownership is transfered to the item.

See also:
MDetailedListItem::imageWidget()

Definition at line 254 of file mdetailedlistitem.cpp.

{
    Q_D(MDetailedListItem);

    if (d->image) {
        if (d->layout())
            for (int i = 0; i < d->layout()->count(); i++) {
                if (d->layout()->itemAt(i) == d->image) {
                    d->layout()->removeAt(i);
                    break;
                }
            }
        delete d->image;
        d->image = NULL;
    }

    if (image) {
        d->image = image;
        if (d->listItemStyle == MDetailedListItem::IconTitleSubtitleAndTwoSideIcons ||
            d->listItemStyle == MDetailedListItem::IconTitleSubtitleAndSideIconWithLabel) {
            setIconStyle(Icon);
            if (d->layout())
                d->layout()->addItem(imageWidget(), 0, 0, 3, 1, Qt::AlignLeft | Qt::AlignVCenter);
        } else if (d->listItemStyle == MDetailedListItem::ThumbnailTitleAndTwoSideIcons) {
            setIconStyle(Thumbnail);
            if (d->layout())
                d->layout()->addItem(imageWidget(), 0, 0, 2, 1, Qt::AlignLeft | Qt::AlignVCenter);
        } else if (d->listItemStyle == MDetailedListItem::ThumbnailTitleSubtitleAndTwoSideIcons) {
            setIconStyle(Thumbnail);
            if (d->layout())
                d->layout()->addItem(imageWidget(), 0, 0, 3, 1);
        }
        d->applyIconStyle();
    }
}

Here is the call graph for this function:

void MDetailedListItem::setItemStyle ( ItemStyle  itemStyle  ) 

Sets item style.

See also:
MDetailedListItem::ItemStyle
MDetailedListItem::itemStyle()

Definition at line 218 of file mdetailedlistitem.cpp.

{
    Q_D(MDetailedListItem);

    if (itemStyle == d->listItemStyle)
        return;

    d->listItemStyle = itemStyle;
    d->isLayoutInitialized = false;
    initLayout();
}

Here is the call graph for this function:

void MDetailedListItem::setSideBottomTitle ( const QString text  ) 

Sets the item bottom side title text.

See also:
MDetailedListItem::sideBottomTitle()

Definition at line 384 of file mdetailedlistitem.cpp.

Here is the call graph for this function:

void MDetailedListItem::setSubtitle ( const QString subtitle  ) 

Sets the item subtitle text.

See also:
MDetailedListItem::subtitle()

Definition at line 359 of file mdetailedlistitem.cpp.

{
    subtitleLabelWidget()->setText(subtitle);
}

Here is the call graph for this function:

void MDetailedListItem::setTitle ( const QString title  ) 

Sets the item title text.

See also:
MDetailedListItem::title()

Definition at line 336 of file mdetailedlistitem.cpp.

{
    titleLabelWidget()->setText(title);
}

Here is the call graph for this function:

MImageWidget* MDetailedListItem::sideBottomImageWidget (  ) 

Creates or returns already created pointer to an item side bottom icon widget.

MLabel * MDetailedListItem::sideBottomLabelWidget (  )  [protected]

Creates or returns already created bottom side title widget.

See also:
MDetailedListItem::setSideBottomTitle()
MDetailedListItem::sideBottomTitle()

Definition at line 369 of file mdetailedlistitem.cpp.

{
    Q_D(MDetailedListItem);

    if (!d->sideBottomLabel) {
        d->sideBottomLabel = new MLabel(this);
        d->sideBottomLabel->setTextElide(true);
        d->sideBottomLabel->setAlignment(Qt::AlignRight);
        d->sideBottomLabel->setObjectName("CommonItemInfo");
        d->sideBottomLabel->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding);
    }

    return d->sideBottomLabel;
}

QString MDetailedListItem::sideBottomTitle (  ) 

Returns the item bottom side title text.

See also:
MDetailedListItem::setSideBottomTitle()
MImageWidget* MDetailedListItem::sideTopImageWidget (  ) 

Creates or returns already created pointer to an item side top icon widget.

QString MDetailedListItem::subtitle (  ) 

Returns the item subtitle text.

See also:
MDetailedListItem::setSubtitle()
MLabel * MDetailedListItem::subtitleLabelWidget (  )  [protected]

Creates or returns already created subtitle widget.

See also:
MDetailedListItem::setSubtitle()
MDetailedListItem::subtitle()

Definition at line 346 of file mdetailedlistitem.cpp.

{
    Q_D(MDetailedListItem);

    if (!d->subtitleLabel) {
        d->subtitleLabel = new MLabel(this);
        d->subtitleLabel->setTextElide(true);
        d->subtitleLabel->setObjectName("CommonSubTitle");
    }

    return d->subtitleLabel;
}

QString MDetailedListItem::title (  ) 

Returns the item title text.

See also:
MDetailedListItem::setTitle()
MLabel * MDetailedListItem::titleLabelWidget (  )  [protected]

Creates or returns already created title widget.

See also:
MDetailedListItem::setTitle()
MDetailedListItem::title()

Definition at line 323 of file mdetailedlistitem.cpp.

{
    Q_D(MDetailedListItem);

    if (!d->titleLabel) {
        d->titleLabel = new MLabel(this);
        d->titleLabel->setTextElide(true);
        d->titleLabel->setObjectName("CommonTitle");
    }

    return d->titleLabel;
}


Property Documentation

MDetailedListItem::imageWidget [read, write]

Contains pointer to main icon MImageWidget.

Definition at line 95 of file corelib/widgets/mdetailedlistitem.h.

MDetailedListItem::sideBottomImageWidget [read]

Contains pointer to side bottom icon MImageWidget.

Definition at line 105 of file corelib/widgets/mdetailedlistitem.h.

MDetailedListItem::sideBottomTitle [read, write]

Contains side bottom label text.

Definition at line 90 of file corelib/widgets/mdetailedlistitem.h.

MDetailedListItem::sideTopImageWidget [read]

Contains pointer to side top icon MImageWidget.

Definition at line 100 of file corelib/widgets/mdetailedlistitem.h.

MDetailedListItem::subtitle [read, write]

Contains subtitle text.

Definition at line 85 of file corelib/widgets/mdetailedlistitem.h.

MDetailedListItem::title [read, write]

Contains title text.

Definition at line 80 of file corelib/widgets/mdetailedlistitem.h.


Copyright © 2010 Nokia Corporation Generated on Thu Nov 4 2010 18:14:24 (PDT)
Doxygen 1.7.1
MeeGo Touch