本文整理汇总了C++中mygui::xml::Document::createDeclaration方法的典型用法代码示例。如果您正苦于以下问题:C++ Document::createDeclaration方法的具体用法?C++ Document::createDeclaration怎么用?C++ Document::createDeclaration使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类mygui::xml::Document
的用法示例。
在下文中一共展示了Document::createDeclaration方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: saveFontTTFXml
void FontPanel::saveFontTTFXml(const std::string& _fontName, const std::string& _fileName)
{
MyGUI::xml::Document document;
document.createDeclaration();
MyGUI::xml::ElementPtr root = document.createRoot("MyGUI");
generateFontTTFXml(root, _fontName);
if (document.save(_fileName))
MyGUI::Message::createMessageBox("Message", "success", _fileName, MyGUI::MessageBoxStyle::Ok | MyGUI::MessageBoxStyle::IconInfo);
else
MyGUI::Message::createMessageBox("Message", "error", document.getLastError(), MyGUI::MessageBoxStyle::Ok | MyGUI::MessageBoxStyle::IconError);
}
示例2: save
void EditorState::save()
{
MyGUI::xml::Document doc;
doc.createDeclaration();
MyGUI::xml::Element* root = doc.createRoot("Root");
MyGUI::xml::Element* skins = root->createChild("SkinManager");
SkinManager::getInstance().serialization(skins, MyGUI::Version());
doc.save(mFileName);
if (mFileName != mDefaultFileName)
RecentFilesManager::getInstance().addRecentFile(mFileName);
ActionManager::getInstance().setChanges(false);
}
示例3: notifyMouseButtonClick
void FontPanel::notifyMouseButtonClick(MyGUI::Widget* _widget)
{
// шрифто?нету
if (mComboFont->getOnlyText().empty()) return;
if (mEditSaveFileName->getOnlyText().empty() && _widget == mButtonSave) return;
MyGUI::xml::Document document;
document.createDeclaration();
MyGUI::xml::ElementPtr root = document.createRoot("MyGUI");
generateFontTTFXml(root);
if (_widget == mButtonSave)
{
if (!document.save(mEditSaveFileName->getOnlyText() + ".xml"))
{
/*MyGUI::Message* message =*/ MyGUI::Message::createMessageBox("Message", "error", document.getLastError(), MyGUI::MessageBoxStyle::Ok | MyGUI::MessageBoxStyle::IconError);
}
else
{
/*MyGUI::Message* message =*/ MyGUI::Message::createMessageBox("Message", "success", mEditSaveFileName->getOnlyText() + ".xml", MyGUI::MessageBoxStyle::Ok | MyGUI::MessageBoxStyle::IconInfo);
}
MyGUI::IFont* font = MyGUI::FontManager::getInstance().getByName(mFontName);
MyGUI::ITexture* texture = font->getTextureFont();
texture->saveToFile(mEditSaveFileName->getOnlyText() + ".png");
}
else if (_widget == mButtonGenerate)
{
MyGUI::ResourceManager& manager = MyGUI::ResourceManager::getInstance();
if (manager.isExist(mFontName))
{
manager.removeByName(mFontName);
}
MyGUI::ResourceManager::getInstance().loadFromXmlNode(root, "", MyGUI::Version());
MyGUI::IResource* resource = manager.getByName(mFontName, false);
MYGUI_ASSERT(resource != nullptr, "Could not find font '" << mFontName << "'");
MyGUI::IFont* font = resource->castType<MyGUI::IFont>();
// выво?реальног?размер?шрифта
mFontHeight = font->getDefaultHeight();
mTextPix->setCaption(MyGUI::utility::toString("Height of a font is ", mFontHeight, " pixels"));
mFontView->setFontName(mFontName);
mTextureView->setFontName(mFontName);
}
}
示例4: notifyMouseButtonClick
void FontPanel::notifyMouseButtonClick(MyGUI::Widget* _widget)
{
// шрифтов нету
if (mComboFont->getOnlyText().empty())
return;
if (mEditSaveFileName->getOnlyText().empty() && _widget == mButtonSave)
return;
if (_widget == mButtonSave)
{
std::string textureName = mEditSaveFileName->getOnlyText() + ".png";
saveTexture(mFontName, textureName);
std::string fontName = MyGUI::utility::toString(mEditSaveFileName->getOnlyText(), ".ttf.", mFontHeight);
std::string fileName = mEditSaveFileName->getOnlyText() + ".ttf.xml";
saveFontTTFXml(fontName, fileName);
fontName = MyGUI::utility::toString(mEditSaveFileName->getOnlyText(), ".manual.", mFontHeight);
fileName = mEditSaveFileName->getOnlyText() + ".manual.xml";
saveFontManualXml(fontName, textureName, fileName);
}
else if (_widget == mButtonGenerate)
{
MyGUI::ResourceManager& manager = MyGUI::ResourceManager::getInstance();
if (manager.isExist(mFontName))
{
manager.removeByName(mFontName);
}
MyGUI::xml::Document document;
document.createDeclaration();
MyGUI::xml::ElementPtr root = document.createRoot("MyGUI");
generateFontTTFXml(root, mFontName);
MyGUI::ResourceManager::getInstance().loadFromXmlNode(root, "", MyGUI::Version());
MyGUI::IResource* resource = manager.getByName(mFontName, false);
MYGUI_ASSERT(resource != nullptr, "Could not find font '" << mFontName << "'");
MyGUI::IFont* font = resource->castType<MyGUI::IFont>();
// вывод реального размера шрифта
mFontHeight = font->getDefaultHeight();
mTextPix->setCaption(MyGUI::utility::toString("Height of a font is ", mFontHeight, " pixels"));
mFontView->setFontName(mFontName);
mTextureView->setFontName(mFontName);
}
}
示例5: exportData
bool FontExportSerializer::exportData(const MyGUI::UString& _folderName, const MyGUI::UString& _fileName)
{
MyGUI::xml::Document document;
document.createDeclaration();
MyGUI::xml::ElementPtr root = document.createRoot("MyGUI");
root->addAttribute("type", "Resource");
root->addAttribute("version", "1.1");
DataPtr data = DataManager::getInstance().getRoot();
for (Data::VectorData::const_iterator child = data->getChilds().begin(); child != data->getChilds().end(); child ++)
{
generateFont((*child));
generateFontManualXml(root, _folderName, (*child));
}
return document.save(common::concatenatePath(_folderName, _fileName));
}
示例6: saveSettings
void SettingsManager::saveSettings(const MyGUI::UString& _fileName)
{
std::string _instance = "Editor";
MyGUI::xml::Document doc;
doc.createDeclaration();
MyGUI::xml::ElementPtr root = doc.createRoot("MyGUI");
root->addAttribute("type", "Settings");
saveSectors(root);
if (!doc.save(_fileName))
{
MYGUI_LOGGING(LogSection, Error, _instance << " : " << doc.getLastError());
return;
}
}
示例7: save
bool HotkeyManager::save( string xml )
{
MyGUI::xml::Document doc;
string path = Game::getSingleton().getResourcePath() + xml;
MyGUI::xml::ElementPtr root = doc.createRoot("HKS");
doc.createDeclaration();
MyGUI::xml::ElementPtr node;
for( HotkeyTable::iterator it = mHotkeys.begin();it!=mHotkeys.end();++it )
{
node = root->createChild("hotkey");
node->addAttribute("name",it->mName);
node->addAttribute("caption",it->mCaption);
node->addAttribute("tip",it->mTip);
node->addAttribute("key",it->mHotkey);
}
return doc.save( path );
}
示例8: exportSkin
void ExportManager::exportSkin(const MyGUI::UString& _fileName)
{
MyGUI::xml::Document doc;
MyGUI::xml::Element* root = doc.createRoot("Root");
SkinManager::getInstance().serialization(root, MyGUI::Version());
MyGUI::xml::Document docOut;
docOut.createDeclaration();
MyGUI::xml::Element* rootOut = docOut.createRoot("MyGUI");
rootOut->addAttribute("type", "Resource");
rootOut->addAttribute("version", "1.1");
MyGUI::xml::ElementEnumerator skins = root->getElementEnumerator();
while (skins.next())
convertSkin(skins.current(), rootOut->createChild("Resource"));
docOut.save(_fileName);
}
示例9: saveSettings
void EditorState::saveSettings(const MyGUI::UString& _fileName)
{
std::string _instance = "Editor";
MyGUI::xml::Document doc;
doc.createDeclaration();
MyGUI::xml::ElementPtr root = doc.createRoot("MyGUI");
root->addAttribute("type", "Settings");
mPropertiesPanelView->save(root);
mSettingsWindow->save(root);
mWidgetsWindow->save(root);
mMetaSolutionWindow->save(root);
// cleanup for duplicates
std::reverse(recentFiles.begin(), recentFiles.end());
for (size_t i = 0; i < recentFiles.size(); ++i)
recentFiles.erase(std::remove(recentFiles.begin() + i + 1, recentFiles.end(), recentFiles[i]), recentFiles.end());
// remove old files
while (recentFiles.size() > MAX_RECENT_FILES)
recentFiles.pop_back();
std::reverse(recentFiles.begin(), recentFiles.end());
for (std::vector<MyGUI::UString>::iterator iter = recentFiles.begin(); iter != recentFiles.end(); ++iter)
{
MyGUI::xml::ElementPtr nodeProp = root->createChild("RecentFile");
nodeProp->addAttribute("name", *iter);
}
for (std::vector<MyGUI::UString>::iterator iter = additionalPaths.begin(); iter != additionalPaths.end(); ++iter)
{
MyGUI::xml::ElementPtr nodeProp = root->createChild("AdditionalPath");
nodeProp->addAttribute("name", *iter);
}
if (!doc.save(_fileName))
{
MYGUI_LOGGING(LogSection, Error, _instance << " : " << doc.getLastError());
return;
}
}
示例10: saveToFile
void DemoKeeper::saveToFile(const std::string& _filename)
{
MyGUI::xml::Document doc;
// есть такой файл
if (!doc.open(_filename))
{
doc.clear();
}
doc.createDeclaration();
MyGUI::xml::ElementPtr root = doc.createRoot("AnimationGraph");
// сохраняем сами ноды
wraps::BaseGraphView::EnumeratorNode node = mGraphView->getNodeEnumerator();
while (node.next())
{
BaseAnimationNode* anim_node = dynamic_cast<BaseAnimationNode*>(node.current());
if (anim_node)
{
MyGUI::xml::ElementPtr node_type = root->createChild("Node");
node_type->addAttribute("type", anim_node->getType());
node_type->addAttribute("name", anim_node->getName());
anim_node->serialization(node_type);
}
}
// сохраняем соединения
node = mGraphView->getNodeEnumerator();
while (node.next())
{
BaseAnimationNode* anim_node = dynamic_cast<BaseAnimationNode*>(node.current());
if (anim_node && anim_node->isAnyConnection())
{
MyGUI::xml::ElementPtr connection = root->createChild("Connections");
connection->addAttribute("node", anim_node->getName());
wraps::EnumeratorConnection node_conn = anim_node->getConnectionEnumerator();
while (node_conn.next())
{
wraps::EnumeratorConnection conn = node_conn->getConnectionEnumerator();
while (conn.next())
{
BaseAnimationNode* anim_node2 = dynamic_cast<BaseAnimationNode*>(conn->getOwnerNode());
if (anim_node2)
{
MyGUI::xml::ElementPtr item = connection->createChild("Connection");
item->addAttribute("node", anim_node2->getName());
item->addAttribute("from", node_conn->getName());
item->addAttribute("to", conn->getName());
}
}
}
}
}
// сохраняем данные для редактора
MyGUI::xml::ElementPtr data = root->createChild("EditorData");
node = mGraphView->getNodeEnumerator();
while (node.next())
{
BaseAnimationNode* anim_node = dynamic_cast<BaseAnimationNode*>(node.current());
if (anim_node)
{
MyGUI::xml::ElementPtr item_data = data->createChild("Node");
item_data->addAttribute("name", anim_node->getName());
item_data->addAttribute("coord", anim_node->getCoord().print());
}
}
doc.save(_filename);
}
示例11: loadFont
//.........这里部分代码省略.........
additional.insert(std::make_pair(45, 0x2014)); // dash
additional.insert(std::make_pair(34, 0x201D)); // right double quotation mark
additional.insert(std::make_pair(34, 0x201C)); // left double quotation mark
additional.insert(std::make_pair(44, 0x201A));
additional.insert(std::make_pair(44, 0x201E));
additional.insert(std::make_pair(43, 0x2020));
additional.insert(std::make_pair(94, 0x02C6));
additional.insert(std::make_pair(37, 0x2030));
additional.insert(std::make_pair(83, 0x0160));
additional.insert(std::make_pair(60, 0x2039));
additional.insert(std::make_pair(79, 0x0152));
additional.insert(std::make_pair(90, 0x017D));
additional.insert(std::make_pair(39, 0x2019));
additional.insert(std::make_pair(126, 0x02DC));
additional.insert(std::make_pair(84, 0x2122));
additional.insert(std::make_pair(83, 0x0161));
additional.insert(std::make_pair(62, 0x203A));
additional.insert(std::make_pair(111, 0x0153));
additional.insert(std::make_pair(122, 0x017E));
additional.insert(std::make_pair(89, 0x0178));
additional.insert(std::make_pair(156, 0x00A2));
additional.insert(std::make_pair(46, 0x2026));
for (std::multimap<int, int>::iterator it = additional.begin(); it != additional.end(); ++it)
{
if (it->first != i)
continue;
MyGUI::xml::ElementPtr code = codes->createChild("Code");
code->addAttribute("index", it->second);
code->addAttribute("coord", MyGUI::utility::toString(x1) + " "
+ MyGUI::utility::toString(y1) + " "
+ MyGUI::utility::toString(w) + " "
+ MyGUI::utility::toString(h));
code->addAttribute("advance", data[i].width);
code->addAttribute("bearing", MyGUI::utility::toString(data[i].kerning) + " "
+ MyGUI::utility::toString((fontSize-data[i].ascent)));
code->addAttribute("size", MyGUI::IntSize(data[i].width, data[i].height));
}
}
// ASCII vertical bar, use this as text input cursor
if (i == 124)
{
MyGUI::xml::ElementPtr cursorCode = codes->createChild("Code");
cursorCode->addAttribute("index", MyGUI::FontCodeType::Cursor);
cursorCode->addAttribute("coord", MyGUI::utility::toString(x1) + " "
+ MyGUI::utility::toString(y1) + " "
+ MyGUI::utility::toString(w) + " "
+ MyGUI::utility::toString(h));
cursorCode->addAttribute("advance", data[i].width);
cursorCode->addAttribute("bearing", MyGUI::utility::toString(data[i].kerning) + " "
+ MyGUI::utility::toString((fontSize-data[i].ascent)));
cursorCode->addAttribute("size", MyGUI::IntSize(data[i].width, data[i].height));
}
// Question mark, use for NotDefined marker (used for glyphs not existing in the font)
if (i == 63)
{
MyGUI::xml::ElementPtr cursorCode = codes->createChild("Code");
cursorCode->addAttribute("index", MyGUI::FontCodeType::NotDefined);
cursorCode->addAttribute("coord", MyGUI::utility::toString(x1) + " "
+ MyGUI::utility::toString(y1) + " "
+ MyGUI::utility::toString(w) + " "
+ MyGUI::utility::toString(h));
cursorCode->addAttribute("advance", data[i].width);
cursorCode->addAttribute("bearing", MyGUI::utility::toString(data[i].kerning) + " "
+ MyGUI::utility::toString((fontSize-data[i].ascent)));
cursorCode->addAttribute("size", MyGUI::IntSize(data[i].width, data[i].height));
}
}
// These are required as well, but the fonts don't provide them
for (int i=0; i<2; ++i)
{
MyGUI::FontCodeType::Enum type;
if(i == 0)
type = MyGUI::FontCodeType::Selected;
else if (i == 1)
type = MyGUI::FontCodeType::SelectedBack;
MyGUI::xml::ElementPtr cursorCode = codes->createChild("Code");
cursorCode->addAttribute("index", type);
cursorCode->addAttribute("coord", "0 0 0 0");
cursorCode->addAttribute("advance", "0");
cursorCode->addAttribute("bearing", "0 0");
cursorCode->addAttribute("size", "0 0");
}
if (exportToFile)
{
xmlDocument.createDeclaration();
xmlDocument.save(resourceName + ".xml");
}
font->deserialization(root, MyGUI::Version(3,2,0));
MyGUI::ResourceManager::getInstance().removeByName(font->getResourceName());
MyGUI::ResourceManager::getInstance().addResource(font);
}