当前位置: 首页>>代码示例>>C++>>正文


C++ ItemBase::setUpImage方法代码示例

本文整理汇总了C++中ItemBase::setUpImage方法的典型用法代码示例。如果您正苦于以下问题:C++ ItemBase::setUpImage方法的具体用法?C++ ItemBase::setUpImage怎么用?C++ ItemBase::setUpImage使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ItemBase的用法示例。


在下文中一共展示了ItemBase::setUpImage方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: loadImage

void PartsBinListView::loadImage(ModelPart * modelPart, QListWidgetItem * lwi, const QString & moduleID) 
{
    ItemBase * itemBase = ItemBaseHash.value(moduleID);
    if (itemBase == NULL) {
		itemBase = PartFactory::createPart(modelPart, ViewLayer::NewTop, ViewLayer::IconView, ViewGeometry(), ItemBase::getNextID(), NULL, NULL, false);
		ItemBaseHash.insert(moduleID, itemBase);
		LayerAttributes layerAttributes;
        itemBase->initLayerAttributes(layerAttributes, ViewLayer::IconView, ViewLayer::Icon, itemBase->viewLayerPlacement(), false, false);
		FSvgRenderer * renderer = itemBase->setUpImage(modelPart, layerAttributes);
		if (renderer != NULL) {
			if (itemBase) {
				itemBase->setFilename(renderer->filename());
			}
            itemBase->setSharedRendererEx(renderer);
        }
    }
	lwi->setData(Qt::UserRole, qVariantFromValue( itemBase ) );
	QSize size(HtmlInfoView::STANDARD_ICON_IMG_WIDTH, HtmlInfoView::STANDARD_ICON_IMG_HEIGHT);
	QPixmap * pixmap = FSvgRenderer::getPixmap(itemBase->renderer(), size);
	lwi->setIcon(QIcon(*pixmap));
	delete pixmap;
	lwi->setData(Qt::UserRole + 1, itemBase->renderer()->defaultSize());

	m_itemBaseHash.insert(moduleID, itemBase);
}
开发者ID:himanshuchoudhary,项目名称:cscope,代码行数:25,代码来源:partsbinlistview.cpp

示例2: setItemAux

int PartsBinListView::setItemAux(ModelPart * modelPart, int position) {
	if (modelPart->modelPartShared() == NULL) return position;
	if (modelPart->itemType() == ModelPart::Unknown) {
		// don't want the empty root to appear in the view
		return position;
	}

	emit settingItem();
	QString moduleID = modelPart->moduleID();
	if(contains(moduleID)) {
		m_partHash[moduleID]->copy(modelPart);   // copies into the cached modelPart, but I don't know why
		return position;
	}

	QListWidgetItem * lwi = new QListWidgetItem(modelPart->title());
	if (modelPart->itemType() == ModelPart::Space) {
		lwi->setBackground(QBrush(SectionHeaderBackgroundColor));
		lwi->setForeground(QBrush(SectionHeaderForegroundColor));
		lwi->setData(Qt::UserRole, 0);
		lwi->setFlags(0);
		lwi->setText("        " + TranslatedCategoryNames.value(modelPart->instanceText(), modelPart->instanceText()));
	}
	else {
        ItemBase * itemBase = ItemBaseHash.value(moduleID);
        if (itemBase == NULL) {
		    itemBase = PartFactory::createPart(modelPart, ViewLayer::ThroughHoleThroughTop_OneLayer, ViewLayer::IconView, ViewGeometry(), ItemBase::getNextID(), NULL, NULL, false);
		    ItemBaseHash.insert(moduleID, itemBase);
            QString error;
		    LayerAttributes layerAttributes;
		    FSvgRenderer * renderer = itemBase->setUpImage(modelPart, ViewLayer::IconView, ViewLayer::Icon, itemBase->viewLayerSpec(), layerAttributes, error);
		    if (renderer != NULL) {
			    if (itemBase) {
				    itemBase->setFilename(renderer->filename());
			    }
                itemBase->setSharedRendererEx(renderer);
            }
        }
		lwi->setData(Qt::UserRole, qVariantFromValue( itemBase ) );
		QSize size(HtmlInfoView::STANDARD_ICON_IMG_WIDTH, HtmlInfoView::STANDARD_ICON_IMG_HEIGHT);
		QPixmap * pixmap = FSvgRenderer::getPixmap(itemBase->renderer(), size);
		lwi->setIcon(QIcon(*pixmap));
		delete pixmap;
		lwi->setData(Qt::UserRole + 1, itemBase->renderer()->defaultSize());

		m_partHash[moduleID] = modelPart;
	}

	if(position > -1 && position < count()) {
		insertItem(position, lwi);
	} else {
		addItem(lwi);
		position = this->count();
	}

	return position;
	
}
开发者ID:,项目名称:,代码行数:57,代码来源:


注:本文中的ItemBase::setUpImage方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。