Q3IconViewExtraInfo Class Reference

#include <q3iconview_extrainfo.h>

Inheritance diagram for Q3IconViewExtraInfo:

Inheritance graph
[legend]
Collaboration diagram for Q3IconViewExtraInfo:

Collaboration graph
[legend]
List of all members.

Detailed Description

Definition at line 37 of file q3iconview_extrainfo.h.

Public Member Functions

 Q3IconViewExtraInfo (Q3IconView *widget, QDesignerFormEditorInterface *core, QObject *parent)
virtual QWidgetwidget () const
virtual QDesignerFormEditorInterfacecore () const
virtual bool saveUiExtraInfo (DomUi *ui)
virtual bool loadUiExtraInfo (DomUi *ui)
virtual bool saveWidgetExtraInfo (DomWidget *ui_widget)
virtual bool loadWidgetExtraInfo (DomWidget *ui_widget)
void initializeQ3IconViewItems (const QList< DomItem * > &items)

Private Attributes

QPointer< Q3IconViewm_widget
QPointer< QDesignerFormEditorInterfacem_core


Constructor & Destructor Documentation

Q3IconViewExtraInfo::Q3IconViewExtraInfo ( Q3IconView widget,
QDesignerFormEditorInterface core,
QObject parent 
)

Definition at line 44 of file q3iconview_extrainfo.cpp.

00045     : QObject(parent), m_widget(widget), m_core(core)
00046 {}


Member Function Documentation

QWidget * Q3IconViewExtraInfo::widget (  )  const [virtual]

Returns the widget described by this extension.

Implements QDesignerExtraInfoExtension.

Definition at line 48 of file q3iconview_extrainfo.cpp.

References m_widget.

Referenced by initializeQ3IconViewItems(), loadWidgetExtraInfo(), and saveWidgetExtraInfo().

00049 { return m_widget; }

QDesignerFormEditorInterface * Q3IconViewExtraInfo::core (  )  const [virtual]

### Description required

Implements QDesignerExtraInfoExtension.

Definition at line 51 of file q3iconview_extrainfo.cpp.

References m_core.

Referenced by initializeQ3IconViewItems(), and saveWidgetExtraInfo().

00052 { return m_core; }

bool Q3IconViewExtraInfo::saveUiExtraInfo ( DomUi *  ui  )  [virtual]

Saves the information about the user interface specified by ui, and returns true if successful; otherwise returns false.

Implements QDesignerExtraInfoExtension.

Definition at line 54 of file q3iconview_extrainfo.cpp.

00055 { Q_UNUSED(ui); return false; }

bool Q3IconViewExtraInfo::loadUiExtraInfo ( DomUi *  ui  )  [virtual]

Loads extra information about the user interface specified by ui, and returns true if successful; otherwise returns false.

Implements QDesignerExtraInfoExtension.

Definition at line 57 of file q3iconview_extrainfo.cpp.

00058 { Q_UNUSED(ui); return false; }

bool Q3IconViewExtraInfo::saveWidgetExtraInfo ( DomWidget ui_widget  )  [virtual]

Saves the information about the specified widget, and returns true if successful; otherwise returns false.

Implements QDesignerExtraInfoExtension.

Definition at line 61 of file q3iconview_extrainfo.cpp.

References QList< T >::append(), core(), Q3IconView::firstItem(), QDesignerFormEditorInterface::iconCache(), QString::isEmpty(), Q3IconViewItem::nextItem(), Q3IconViewItem::pixmap(), QDesignerIconCacheInterface::pixmapToFilePath(), QDesignerIconCacheInterface::pixmapToQrcPath(), properties, DomProperty::setAttributeName(), DomResourcePixmap::setAttributeResource(), DomWidget::setElementItem(), DomProperty::setElementPixmap(), DomItem::setElementProperty(), DomProperty::setElementString(), DomString::setText(), DomResourcePixmap::setText(), Q3IconViewItem::text(), and widget().

00062 {
00063     // ### finish me
00064     Q3IconView *iconView = qobject_cast<Q3IconView*>(widget());
00065     Q_ASSERT(iconView != 0);
00066 
00067     QList<DomItem*> ui_items;
00068 
00069     Q3IconViewItem *__item = iconView->firstItem();
00070     while (__item != 0) {
00071         DomItem *ui_item = new DomItem();
00072 
00073         QList<DomProperty*> properties;
00074 
00075         // text property
00076         DomProperty *ptext = new DomProperty();
00077         DomString *str = new DomString();
00078         str->setText(__item->text());
00079         ptext->setAttributeName(QLatin1String("text"));
00080         ptext->setElementString(str);
00081         properties.append(ptext);
00082 
00083         ui_item->setElementProperty(properties);
00084         ui_items.append(ui_item);
00085 
00086         if (__item->pixmap() != 0 && core()->iconCache()) {
00087             QPixmap pix = *__item->pixmap();
00088             QString filePath = core()->iconCache()->pixmapToFilePath(pix);
00089             QString qrcPath = core()->iconCache()->pixmapToQrcPath(pix);
00090             DomResourcePixmap *ui_pix = new DomResourcePixmap();
00091             if (!qrcPath.isEmpty())
00092                 ui_pix->setAttributeResource(qrcPath);
00093             ui_pix->setText(filePath);
00094 
00095             DomProperty *ppix = new DomProperty();
00096             ppix->setAttributeName(QLatin1String("pixmap"));
00097             ppix->setElementPixmap(ui_pix);
00098             properties.append(ppix);
00099         }
00100 
00101         __item = __item->nextItem();
00102     }
00103 
00104     ui_widget->setElementItem(ui_items);
00105 
00106     return true;
00107 }

Here is the call graph for this function:

bool Q3IconViewExtraInfo::loadWidgetExtraInfo ( DomWidget ui_widget  )  [virtual]

Loads extra information about the specified widget, and returns true if successful; otherwise returns false.

Implements QDesignerExtraInfoExtension.

Definition at line 109 of file q3iconview_extrainfo.cpp.

References DomWidget::elementItem(), initializeQ3IconViewItems(), QList< T >::size(), and widget().

00110 {
00111     Q3IconView *iconView = qobject_cast<Q3IconView*>(widget());
00112     Q_ASSERT(iconView != 0);
00113     Q_UNUSED(iconView);
00114 
00115     if (ui_widget->elementItem().size()) {
00116         initializeQ3IconViewItems(ui_widget->elementItem());
00117     }
00118 
00119     return true;
00120 }

Here is the call graph for this function:

void Q3IconViewExtraInfo::initializeQ3IconViewItems ( const QList< DomItem * > &  items  ) 

Definition at line 122 of file q3iconview_extrainfo.cpp.

References QList< T >::at(), core(), i, p, properties, Q3IconViewItem::setPixmap(), Q3IconViewItem::setText(), QList< T >::size(), widget(), and QDesignerExtraInfoExtension::workingDirectory().

Referenced by loadWidgetExtraInfo().

00123 {
00124     Q3IconView *iconView = qobject_cast<Q3IconView*>(widget());
00125     Q_ASSERT(iconView != 0);
00126 
00127     for (int i=0; i<items.size(); ++i) {
00128         DomItem *item = items.at(i);
00129 
00130         Q3IconViewItem *__item = new Q3IconViewItem(iconView);
00131 
00132         QList<DomProperty*> properties = item->elementProperty();
00133         for (int i=0; i<properties.size(); ++i) {
00134             DomProperty *p = properties.at(i);
00135             if (p->attributeName() == QLatin1String("text"))
00136                 __item->setText(p->elementString()->text());
00137 
00138             if (p->attributeName() == QLatin1String("pixmap")) {
00139                 DomResourcePixmap *pix = p->elementPixmap();
00140                 QPixmap pixmap(core()->iconCache()->resolveQrcPath(pix->text(), pix->attributeResource(), workingDirectory()));
00141                 __item->setPixmap(pixmap);
00142             }
00143         }
00144     }
00145 }

Here is the call graph for this function:


Member Data Documentation

QPointer<Q3IconView> Q3IconViewExtraInfo::m_widget [private]

Definition at line 56 of file q3iconview_extrainfo.h.

Referenced by widget().

QPointer<QDesignerFormEditorInterface> Q3IconViewExtraInfo::m_core [private]

Definition at line 57 of file q3iconview_extrainfo.h.

Referenced by core().


The documentation for this class was generated from the following files:
Generated on Thu Mar 15 16:03:31 2007 for Qt 4.2 User's Guide by  doxygen 1.5.1