本文整理汇总了C++中View2::LoadViewInfo方法的典型用法代码示例。如果您正苦于以下问题:C++ View2::LoadViewInfo方法的具体用法?C++ View2::LoadViewInfo怎么用?C++ View2::LoadViewInfo使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类View2
的用法示例。
在下文中一共展示了View2::LoadViewInfo方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: img
MapEditorForm::MapEditorForm(QWidget *parent) :
QWidget(parent),
ui(new Ui::MapEditorForm)
{
ui->setupUi(this);
is_turf_selected_ = false;
InitSettersForTypes();
scene_ = new GraphicsScene;
map_editor_ = new MapEditor(scene_);
connect(scene_, &GraphicsScene::mousePressed, map_editor_, &MapEditor::mousePressedEvent);
connect(scene_, &GraphicsScene::keyboardPressed, map_editor_, &MapEditor::keyPressedEvent);
connect(scene_, &GraphicsScene::rightClick, this, &MapEditorForm::mapClicked);
connect(map_editor_, &MapEditor::newSelectionSetted, this, &MapEditorForm::newSelectionSetted);
map_editor_->Resize(100, 100, 1);
map_editor_->SetPointer(2, 2);
ui->graphicsView->setScene(scene_);
SetSpriter(new SpriteHolder);
for (auto it = (*itemList()).begin(); it != (*itemList()).end(); ++it)
{
IMainObject* loc = it->second(0);
IOnMapObject* bloc = castTo<IOnMapObject>(loc);
if (!bloc)
{
//delete loc;
continue;
}
bool is_turf = false;
if (castTo<ITurf>(loc))
{
is_turf = true;
}
ViewInfo* view_info = bloc->GetView();
if ( view_info->GetBaseFrameset().GetSprite() == ""
|| view_info->GetBaseFrameset().GetState() == "")
{
continue;
}
QVector<QPixmap> images;
View2 view;
view.LoadViewInfo(*view_info);
if (view.GetBaseFrameset().GetMetadata() == nullptr)
{
continue;
}
for (size_t dir = 0; dir < view.GetBaseFrameset().GetMetadata()->dirs; ++dir)
{
int current_frame_pos = view.GetBaseFrameset().GetMetadata()->first_frame_pos + dir;
int image_state_h_ = current_frame_pos / view.GetBaseFrameset().GetSprite()->FrameW();
int image_state_w_ = current_frame_pos % view.GetBaseFrameset().GetSprite()->FrameW();
SDL_Surface* s = view.GetBaseFrameset().GetSprite()->GetSDLSprite()->frames
[image_state_w_ * view.GetBaseFrameset().GetSprite()->FrameH() + image_state_h_];
QImage img(static_cast<uchar*>(s->pixels),
s->w, s->h, QImage::Format_ARGB32);
images.push_back(QPixmap::fromImage(img));
}
map_editor_->AddItemType(it->first, images);
QListWidgetItem* new_item
= new QListWidgetItem(QIcon(images[0]), bloc->T_ITEM().c_str());
if (!is_turf)
{
types_.push_back(it->first);
ui->listWidget->addItem(new_item);
}
else
{
turf_types_.push_back(it->first);
map_editor_->AddTurfType(it->first);
ui->listWidgetTurf->addItem(new_item);
}
}
}