more unicode stuff

This commit is contained in:
rdb 2013-10-07 23:20:59 +00:00
parent e1ff689adc
commit 1cf986dd44
3 changed files with 17 additions and 13 deletions

View File

@ -529,9 +529,10 @@ void MaxEggPlugin::DoExport() {
// If "auto overwrite" was not checked and the file exists,
// ask if the user wishes to overwrite the file
bool do_write = true;
if (!autoOverwrite && Filename::from_os_specific(eggList[i]->_file_name).exists()) {
if (!autoOverwrite && GetFileAttributes(eggList[i]->_file_name) != INVALID_FILE_ATTRIBUTES) {
TCHAR msg[1024];
_stprintf(msg, "Overwrite file \"%s.egg\"?", eggList[i]->_short_name);
_stprintf(msg, _T("Overwrite file \"%s.egg\"?"), eggList[i]->_short_name);
do_write = (MessageBox(hMaxEggParams, msg, _T("Panda3D Exporter"), MB_YESNO | MB_ICONQUESTION) == IDYES);
}
if (do_write) {

View File

@ -290,8 +290,8 @@ r_build_node(INode* max_node)
node_desc = _root;
} else {
INode *parent_node;
string local_name = max_node->GetName();
INode *parent_node;
CStr local_name = CStr::FromMSTR(max_node->GetName());
if (max_node->IsRootNode()) {
parent_node = NULL;
} else {
@ -315,17 +315,18 @@ r_build_node(INode* max_node)
MaxNodeDesc *MaxNodeTree::
r_build_joint(MaxNodeDesc *node_desc, INode *max_node)
{
CStr node_name = CStr::FromMSTR(max_node->GetName())
MaxNodeDesc *node_joint;
if (node_desc == _root) {
node_joint = new MaxNodeDesc(_root, max_node->GetName());
node_joint = new MaxNodeDesc(_root, node_name);
_nodes.push_back(node_joint);
return node_joint;
} else if (node_desc->is_node_joint() && node_desc->_joint_entry) {
node_joint = new MaxNodeDesc(node_desc->_joint_entry, max_node->GetName());
return node_joint;
} else if (node_desc->is_node_joint() && node_desc->_joint_entry) {
node_joint = new MaxNodeDesc(node_desc->_joint_entry, node_name);
_nodes.push_back(node_joint);
return node_joint;
return node_joint;
} else {
return r_build_joint(node_desc->_parent, max_node);
return r_build_joint(node_desc->_parent, max_node);
}
}

View File

@ -370,7 +370,8 @@ process_model_node(MaxNodeDesc *node_desc) {
//It's a CV Curve, process it
egg_group = _tree.get_egg_group(node_desc);
get_transform(max_node, egg_group);
make_nurbs_curve((NURBSCVCurve *)nObj, string(max_node->GetName()),
CStr node_name = CStr::FromMSTR(max_node->GetName());
make_nurbs_curve((NURBSCVCurve *)nObj, node_name,
time, egg_group);
}
}
@ -650,7 +651,8 @@ make_polyset(INode *max_node, Mesh *mesh,
// all the vertices up front, we'll start with an empty vpool, and
// add vertices to it on the fly.
string vpool_name = string(max_node->GetName()) + ".verts";
CStr node_name = CStr::FromMSTR(max_node->GetName());
string vpool_name = string(node_name) + ".verts";
EggVertexPool *vpool = new EggVertexPool(vpool_name);
egg_group->add_child(vpool);
@ -1062,7 +1064,7 @@ void MaxToEggConverter::analyze_diffuse_maps(PandaMaterial &pandaMat, Texmap *ma
BitmapTex *diffuseTex = (BitmapTex *)mat;
Filename fullpath, outpath;
#ifdef _UNICDOE
#ifdef _UNICODE
Filename filename = Filename::from_os_specific_w(diffuseTex->GetMapName());
#else
Filename filename = Filename::from_os_specific(diffuseTex->GetMapName());