Skip to content

Commit

Permalink
xrCore and xrGame XML: use own pcstr instead of Microsoft LPCSTR
Browse files Browse the repository at this point in the history
  • Loading branch information
Xottab-DUTY committed Aug 8, 2017
1 parent 89cf211 commit fc6a52d
Show file tree
Hide file tree
Showing 7 changed files with 61 additions and 61 deletions.
2 changes: 1 addition & 1 deletion src/utils/xrSE_Factory/xrUIXmlParser.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#include "xrGame/ui_base.h"
#endif // XRGAME_EXPORTS

shared_str CUIXml::correct_file_name(LPCSTR path, LPCSTR fn)
shared_str CUIXml::correct_file_name(pcstr path, pcstr fn)
{
#ifdef XRGAME_EXPORTS
if (0 == xr_strcmp(path, UI_PATH) || 0 == xr_strcmp(path, "UI"))
Expand Down
2 changes: 1 addition & 1 deletion src/utils/xrSE_Factory/xrUIXmlParser.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,5 @@ class CUIXml : public XMLDocument
CUIXml();
virtual ~CUIXml();

virtual shared_str correct_file_name(LPCSTR path, LPCSTR fn);
virtual shared_str correct_file_name(pcstr path, pcstr fn);
};
52 changes: 26 additions & 26 deletions src/xrCore/XML/XMLDocument.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ void ParseFile(LPCSTR path, CMemoryWriter& W, IReader* F, XMLDocument* xml)
}
}

void XMLDocument::Load(LPCSTR path_alias, LPCSTR path, LPCSTR _xml_filename)
void XMLDocument::Load(pcstr path_alias, pcstr path, pcstr _xml_filename)
{
shared_str fn = correct_file_name(path, _xml_filename);

Expand All @@ -52,7 +52,7 @@ void XMLDocument::Load(LPCSTR path_alias, LPCSTR path, LPCSTR _xml_filename)
}

//инициализация и загрузка XML файла
void XMLDocument::Load(LPCSTR path, LPCSTR xml_filename)
void XMLDocument::Load(pcstr path, pcstr xml_filename)
{
xr_strcpy(m_xml_file_name, xml_filename);
// Load and parse xml file
Expand All @@ -76,7 +76,7 @@ void XMLDocument::Load(LPCSTR path, LPCSTR xml_filename)
m_root = m_Doc.FirstChildElement();
}

XML_NODE* XMLDocument::NavigateToNode(XML_NODE* start_node, LPCSTR path, int node_index)
XML_NODE* XMLDocument::NavigateToNode(XML_NODE* start_node, pcstr path, int node_index)
{
R_ASSERT3(start_node && path, "NavigateToNode failed in XML file ", m_xml_file_name);
XML_NODE* node = NULL;
Expand Down Expand Up @@ -119,12 +119,12 @@ XML_NODE* XMLDocument::NavigateToNode(XML_NODE* start_node, LPCSTR path, int nod
return node;
}

XML_NODE* XMLDocument::NavigateToNode(LPCSTR path, int node_index)
XML_NODE* XMLDocument::NavigateToNode(pcstr path, int node_index)
{
return NavigateToNode(GetLocalRoot() ? GetLocalRoot() : GetRoot(), path, node_index);
}

XML_NODE* XMLDocument::NavigateToNodeWithAttribute(LPCSTR tag_name, LPCSTR attrib_name, LPCSTR attrib_value)
XML_NODE* XMLDocument::NavigateToNodeWithAttribute(pcstr tag_name, pcstr attrib_name, pcstr attrib_value)
{
XML_NODE* root = GetLocalRoot() ? GetLocalRoot() : GetRoot();
int tabsCount = GetNodesNum(root, tag_name);
Expand All @@ -140,21 +140,21 @@ XML_NODE* XMLDocument::NavigateToNodeWithAttribute(LPCSTR tag_name, LPCSTR attri
return NULL;
}

LPCSTR XMLDocument::Read(LPCSTR path, int index, LPCSTR default_str_val)
pcstr XMLDocument::Read(pcstr path, int index, pcstr default_str_val)
{
XML_NODE* node = NavigateToNode(path, index);
LPCSTR result = Read(node, default_str_val);
return result;
}

LPCSTR XMLDocument::Read(XML_NODE* start_node, LPCSTR path, int index, LPCSTR default_str_val)
pcstr XMLDocument::Read(XML_NODE* start_node, pcstr path, int index, pcstr default_str_val)
{
XML_NODE* node = NavigateToNode(start_node, path, index);
LPCSTR result = Read(node, default_str_val);
return result;
}

LPCSTR XMLDocument::Read(XML_NODE* node, LPCSTR default_str_val)
pcstr XMLDocument::Read(XML_NODE* node, pcstr default_str_val)
{
if (node == NULL)
return default_str_val;
Expand Down Expand Up @@ -182,7 +182,7 @@ int XMLDocument::ReadInt(XML_NODE* node, int default_int_val)
return atoi(result_str);
}

int XMLDocument::ReadInt(LPCSTR path, int index, int default_int_val)
int XMLDocument::ReadInt(pcstr path, int index, int default_int_val)
{
LPCSTR result_str = Read(path, index, NULL);
if (result_str == NULL)
Expand All @@ -191,7 +191,7 @@ int XMLDocument::ReadInt(LPCSTR path, int index, int default_int_val)
return atoi(result_str);
}

int XMLDocument::ReadInt(XML_NODE* start_node, LPCSTR path, int index, int default_int_val)
int XMLDocument::ReadInt(XML_NODE* start_node, pcstr path, int index, int default_int_val)
{
LPCSTR result_str = Read(start_node, path, index, NULL);
if (result_str == NULL)
Expand All @@ -200,7 +200,7 @@ int XMLDocument::ReadInt(XML_NODE* start_node, LPCSTR path, int index, int defau
return atoi(result_str);
}

float XMLDocument::ReadFlt(LPCSTR path, int index, float default_flt_val)
float XMLDocument::ReadFlt(pcstr path, int index, float default_flt_val)
{
LPCSTR result_str = Read(path, index, NULL);
if (result_str == NULL)
Expand All @@ -209,7 +209,7 @@ float XMLDocument::ReadFlt(LPCSTR path, int index, float default_flt_val)
return (float)atof(result_str);
}

float XMLDocument::ReadFlt(XML_NODE* start_node, LPCSTR path, int index, float default_flt_val)
float XMLDocument::ReadFlt(XML_NODE* start_node, pcstr path, int index, float default_flt_val)
{
LPCSTR result_str = Read(start_node, path, index, NULL);
if (result_str == NULL)
Expand All @@ -228,22 +228,22 @@ float XMLDocument::ReadFlt(XML_NODE* node, float default_flt_val)
return (float)atof(result_str);
}

LPCSTR XMLDocument::ReadAttrib(XML_NODE* start_node, LPCSTR path, int index, LPCSTR attrib, LPCSTR default_str_val)
pcstr XMLDocument::ReadAttrib(XML_NODE* start_node, pcstr path, int index, pcstr attrib, pcstr default_str_val)
{
XML_NODE* node = NavigateToNode(start_node, path, index);
LPCSTR result = ReadAttrib(node, attrib, default_str_val);

return result;
}

LPCSTR XMLDocument::ReadAttrib(LPCSTR path, int index, LPCSTR attrib, LPCSTR default_str_val)
pcstr XMLDocument::ReadAttrib(pcstr path, int index, pcstr attrib, pcstr default_str_val)
{
XML_NODE* node = NavigateToNode(path, index);
LPCSTR result = ReadAttrib(node, attrib, default_str_val);
return result;
}

LPCSTR XMLDocument::ReadAttrib(XML_NODE* node, LPCSTR attrib, LPCSTR default_str_val)
pcstr XMLDocument::ReadAttrib(XML_NODE* node, pcstr attrib, pcstr default_str_val)
{
if (node == NULL)
return default_str_val;
Expand Down Expand Up @@ -274,7 +274,7 @@ LPCSTR XMLDocument::ReadAttrib(XML_NODE* node, LPCSTR attrib, LPCSTR default_str
}
}

int XMLDocument::ReadAttribInt(XML_NODE* node, LPCSTR attrib, int default_int_val)
int XMLDocument::ReadAttribInt(XML_NODE* node, pcstr attrib, int default_int_val)
{
LPCSTR result_str = ReadAttrib(node, attrib, NULL);

Expand All @@ -284,7 +284,7 @@ int XMLDocument::ReadAttribInt(XML_NODE* node, LPCSTR attrib, int default_int_va
return atoi(result_str);
}

int XMLDocument::ReadAttribInt(LPCSTR path, int index, LPCSTR attrib, int default_int_val)
int XMLDocument::ReadAttribInt(pcstr path, int index, pcstr attrib, int default_int_val)
{
LPCSTR result_str = ReadAttrib(path, index, attrib, NULL);

Expand All @@ -294,7 +294,7 @@ int XMLDocument::ReadAttribInt(LPCSTR path, int index, LPCSTR attrib, int defaul
return atoi(result_str);
}

int XMLDocument::ReadAttribInt(XML_NODE* start_node, LPCSTR path, int index, LPCSTR attrib, int default_int_val)
int XMLDocument::ReadAttribInt(XML_NODE* start_node, pcstr path, int index, pcstr attrib, int default_int_val)
{
LPCSTR result_str = ReadAttrib(start_node, path, index, attrib, NULL);

Expand All @@ -303,7 +303,7 @@ int XMLDocument::ReadAttribInt(XML_NODE* start_node, LPCSTR path, int index, LPC
return atoi(result_str);
}

float XMLDocument::ReadAttribFlt(LPCSTR path, int index, LPCSTR attrib, float default_flt_val)
float XMLDocument::ReadAttribFlt(pcstr path, int index, pcstr attrib, float default_flt_val)
{
LPCSTR result_str = ReadAttrib(path, index, attrib, NULL);

Expand All @@ -313,7 +313,7 @@ float XMLDocument::ReadAttribFlt(LPCSTR path, int index, LPCSTR attrib, float de
return (float)atof(result_str);
}

float XMLDocument::ReadAttribFlt(XML_NODE* start_node, LPCSTR path, int index, LPCSTR attrib, float default_flt_val)
float XMLDocument::ReadAttribFlt(XML_NODE* start_node, pcstr path, int index, pcstr attrib, float default_flt_val)
{
LPCSTR result_str = ReadAttrib(start_node, path, index, attrib, NULL);

Expand All @@ -323,7 +323,7 @@ float XMLDocument::ReadAttribFlt(XML_NODE* start_node, LPCSTR path, int index, L
return (float)atof(result_str);
}

float XMLDocument::ReadAttribFlt(XML_NODE* node, LPCSTR attrib, float default_flt_val)
float XMLDocument::ReadAttribFlt(XML_NODE* node, pcstr attrib, float default_flt_val)
{
LPCSTR result_str = ReadAttrib(node, attrib, NULL);

Expand All @@ -333,7 +333,7 @@ float XMLDocument::ReadAttribFlt(XML_NODE* node, LPCSTR attrib, float default_fl
return (float)atof(result_str);
}

int XMLDocument::GetNodesNum(LPCSTR path, int index, LPCSTR tag_name)
int XMLDocument::GetNodesNum(pcstr path, int index, pcstr tag_name)
{
XML_NODE* node = NULL;

Expand All @@ -354,7 +354,7 @@ int XMLDocument::GetNodesNum(LPCSTR path, int index, LPCSTR tag_name)
return GetNodesNum(node, tag_name);
}

int XMLDocument::GetNodesNum(XML_NODE* node, LPCSTR tag_name)
int XMLDocument::GetNodesNum(XML_NODE* node, pcstr tag_name)
{
if (node == NULL)
return 0;
Expand Down Expand Up @@ -382,15 +382,15 @@ int XMLDocument::GetNodesNum(XML_NODE* node, LPCSTR tag_name)

//нахождение элемнета по его атрибуту
XML_NODE* XMLDocument::SearchForAttribute(
LPCSTR path, int index, LPCSTR tag_name, LPCSTR attrib, LPCSTR attrib_value_pattern)
pcstr path, int index, pcstr tag_name, pcstr attrib, pcstr attrib_value_pattern)
{
XML_NODE* start_node = NavigateToNode(path, index);
XML_NODE* result = SearchForAttribute(start_node, tag_name, attrib, attrib_value_pattern);
return result;
}

XML_NODE* XMLDocument::SearchForAttribute(
XML_NODE* start_node, LPCSTR tag_name, LPCSTR attrib, LPCSTR attrib_value_pattern)
XML_NODE* start_node, pcstr tag_name, pcstr attrib, pcstr attrib_value_pattern)
{
while (start_node)
{
Expand Down Expand Up @@ -419,7 +419,7 @@ XML_NODE* XMLDocument::SearchForAttribute(

#ifdef DEBUG // debug & mixed

LPCSTR XMLDocument::CheckUniqueAttrib(XML_NODE* start_node, LPCSTR tag_name, LPCSTR attrib_name)
pcstr XMLDocument::CheckUniqueAttrib(XML_NODE* start_node, pcstr tag_name, pcstr attrib_name)
{
m_AttribValues.clear_not_free();

Expand Down
58 changes: 29 additions & 29 deletions src/xrCore/XML/XMLDocument.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@

#include "Common/Platform.hpp"

const LPCSTR CONFIG_PATH = "$game_config$";
const LPCSTR UI_PATH = "ui";
const pcstr CONFIG_PATH = "$game_config$";
const pcstr UI_PATH = "ui";

#include "tinyxml.h"

Expand All @@ -14,61 +14,61 @@ typedef TiXmlAttribute XML_ATTRIBUTE;

class XRCORE_API XMLDocument
{
void Load(LPCSTR path_alias, LPCSTR xml_filename);
void Load(pcstr path_alias, pcstr xml_filename);

public:
string_path m_xml_file_name;
XMLDocument();
virtual ~XMLDocument();
void ClearInternal();

void Load(LPCSTR path_alias, LPCSTR path, LPCSTR xml_filename);
void Load(pcstr path_alias, pcstr path, pcstr xml_filename);

//чтение элементов
LPCSTR Read(LPCSTR path, int index, LPCSTR default_str_val);
LPCSTR Read(XML_NODE* start_node, LPCSTR path, int index, LPCSTR default_str_val);
LPCSTR Read(XML_NODE* node, LPCSTR default_str_val);
pcstr Read(pcstr path, int index, pcstr default_str_val);
pcstr Read(XML_NODE* start_node, pcstr path, int index, pcstr default_str_val);
pcstr Read(XML_NODE* node, pcstr default_str_val);

int ReadInt(LPCSTR path, int index, int default_int_val);
int ReadInt(XML_NODE* start_node, LPCSTR path, int index, int default_int_val);
int ReadInt(pcstr path, int index, int default_int_val);
int ReadInt(XML_NODE* start_node, pcstr path, int index, int default_int_val);
int ReadInt(XML_NODE* node, int default_int_val);

float ReadFlt(LPCSTR path, int index, float default_flt_val);
float ReadFlt(XML_NODE* start_node, LPCSTR path, int index, float default_flt_val);
float ReadFlt(pcstr path, int index, float default_flt_val);
float ReadFlt(XML_NODE* start_node, pcstr path, int index, float default_flt_val);
float ReadFlt(XML_NODE* node, float default_flt_val);

LPCSTR ReadAttrib(LPCSTR path, int index, LPCSTR attrib, LPCSTR default_str_val = "");
LPCSTR ReadAttrib(XML_NODE* start_node, LPCSTR path, int index, LPCSTR attrib, LPCSTR default_str_val = "");
LPCSTR ReadAttrib(XML_NODE* node, LPCSTR attrib, LPCSTR default_str_val);
pcstr ReadAttrib(pcstr path, int index, pcstr attrib, pcstr default_str_val = "");
pcstr ReadAttrib(XML_NODE* start_node, pcstr path, int index, pcstr attrib, pcstr default_str_val = "");
pcstr ReadAttrib(XML_NODE* node, pcstr attrib, pcstr default_str_val);

int ReadAttribInt(LPCSTR path, int index, LPCSTR attrib, int default_int_val = 0);
int ReadAttribInt(XML_NODE* start_node, LPCSTR path, int index, LPCSTR attrib, int default_int_val = 0);
int ReadAttribInt(XML_NODE* node, LPCSTR attrib, int default_int_val);
int ReadAttribInt(pcstr path, int index, pcstr attrib, int default_int_val = 0);
int ReadAttribInt(XML_NODE* start_node, pcstr path, int index, pcstr attrib, int default_int_val = 0);
int ReadAttribInt(XML_NODE* node, pcstr attrib, int default_int_val);

float ReadAttribFlt(LPCSTR path, int index, LPCSTR attrib, float default_flt_val = 0.0f);
float ReadAttribFlt(XML_NODE* start_node, LPCSTR path, int index, LPCSTR attrib, float default_flt_val = 0.0f);
float ReadAttribFlt(XML_NODE* node, LPCSTR attrib, float default_flt_val = 0.0f);
float ReadAttribFlt(pcstr path, int index, pcstr attrib, float default_flt_val = 0.0f);
float ReadAttribFlt(XML_NODE* start_node, pcstr path, int index, pcstr attrib, float default_flt_val = 0.0f);
float ReadAttribFlt(XML_NODE* node, pcstr attrib, float default_flt_val = 0.0f);

XML_NODE* SearchForAttribute(LPCSTR path, int index, LPCSTR tag_name, LPCSTR attrib, LPCSTR attrib_value_pattern);
XML_NODE* SearchForAttribute(XML_NODE* start_node, LPCSTR tag_name, LPCSTR attrib, LPCSTR attrib_value_pattern);
XML_NODE* SearchForAttribute(pcstr path, int index, pcstr tag_name, pcstr attrib, pcstr attrib_value_pattern);
XML_NODE* SearchForAttribute(XML_NODE* start_node, pcstr tag_name, pcstr attrib, pcstr attrib_value_pattern);

//возвращает количество узлов с заданым именем
int GetNodesNum(LPCSTR path, int index, LPCSTR tag_name);
int GetNodesNum(XML_NODE* node, LPCSTR tag_name);
int GetNodesNum(pcstr path, int index, pcstr tag_name);
int GetNodesNum(XML_NODE* node, pcstr tag_name);

#ifdef DEBUG // debug & mixed
//проверка того, что аттрибуты у тегов уникальны
//(если не NULL, то уникальность нарушена и возврашается имя
//повторяющегося атрибута)
LPCSTR CheckUniqueAttrib(XML_NODE* start_node, LPCSTR tag_name, LPCSTR attrib_name);
pcstr CheckUniqueAttrib(XML_NODE* start_node, pcstr tag_name, pcstr attrib_name);
#endif

//переместиться по XML дереву
//путь задается в форме PARENT:CHILD:CHIDLS_CHILD
// node_index - номер, если узлов с одним именем несколько
XML_NODE* NavigateToNode(LPCSTR path, int node_index = 0);
XML_NODE* NavigateToNode(XML_NODE* start_node, LPCSTR path, int node_index = 0);
XML_NODE* NavigateToNodeWithAttribute(LPCSTR tag_name, LPCSTR attrib_name, LPCSTR attrib_value);
XML_NODE* NavigateToNode(pcstr path, int node_index = 0);
XML_NODE* NavigateToNode(XML_NODE* start_node, pcstr path, int node_index = 0);
XML_NODE* NavigateToNodeWithAttribute(pcstr tag_name, pcstr attrib_name, pcstr attrib_value);

void SetLocalRoot(XML_NODE* pLocalRoot) { m_pLocalRoot = pLocalRoot; }
XML_NODE* GetLocalRoot() { return m_pLocalRoot; }
Expand All @@ -82,7 +82,7 @@ class XRCORE_API XMLDocument
xr_vector<shared_str> m_AttribValues;
#endif
public:
virtual shared_str correct_file_name(LPCSTR path, LPCSTR fn) { return fn; }
virtual shared_str correct_file_name(pcstr path, pcstr fn) { return fn; }
private:
XMLDocument(const XMLDocument& copy);
void operator=(const XMLDocument& copy);
Expand Down
4 changes: 2 additions & 2 deletions src/xrGame/ui/UIChatWnd.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,8 @@ void CUIChatWnd::PendingMode(bool const is_pending_mode)
pendingGameMode = false;
}

#define CHAT_PREFIX_PENDING "chat_prefix_pending"
#define CHAT_EDITBOX_PENDING "chat_editbox_pending"
const pcstr CHAT_PREFIX_PENDING = "chat_prefix_pending";
const pcstr CHAT_EDITBOX_PENDING = "chat_editbox_pending";

void CUIChatWnd::Init(CUIXml& uiXml)
{
Expand Down
2 changes: 1 addition & 1 deletion src/xrGame/ui/xrUIXmlParser.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#include "ui_base.h"
#endif

shared_str CUIXml::correct_file_name(LPCSTR path, LPCSTR fn)
shared_str CUIXml::correct_file_name(pcstr path, pcstr fn)
{
#ifdef XRGAME_EXPORTS
if (0 == xr_strcmp(path, UI_PATH) || 0 == xr_strcmp(path, "UI"))
Expand Down
2 changes: 1 addition & 1 deletion src/xrGame/ui/xrUIXmlParser.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,5 @@ class CUIXml : public XMLDocument
CUIXml();
virtual ~CUIXml();

virtual shared_str correct_file_name(LPCSTR path, LPCSTR fn);
virtual shared_str correct_file_name(pcstr path, pcstr fn);
};

0 comments on commit fc6a52d

Please sign in to comment.