Changed: Unicode MFC support

--HG--
branch : develop
feature/pipeline-tools
kervala 8 years ago
parent 9e0b38e6e0
commit b66b85cefd

@ -53,8 +53,8 @@ using namespace NLMISC;
#define STRING_SELECT_COMBOBOX_ID 9 #define STRING_SELECT_COMBOBOX_ID 9
#define DIFFERENT_VALUE_STRING _T("<different values>") #define DIFFERENT_VALUE_STRING "<different values>"
#define DIFFERENT_VALUE_MULTI_STRING _T("<diff>") #define DIFFERENT_VALUE_MULTI_STRING "<diff>"
//CDialogProperties PropertyDialog; //CDialogProperties PropertyDialog;
std::list<CDialogProperties*> PropertiesDialogs; std::list<CDialogProperties*> PropertiesDialogs;
@ -352,7 +352,7 @@ void CDialogProperties::addWidget (const CPrimitiveClass::CParameter &parameter,
string Name = widget.Parameter.Name; string Name = widget.Parameter.Name;
// Create a check box // Create a check box
nlverify (widget.CheckBox.Create (Name.c_str (), BS_3STATE|WS_VISIBLE|WS_TABSTOP|(enabled?0:WS_DISABLED), widgetPos, &m_PropertyCont, id)); nlverify (widget.CheckBox.Create (utf8ToTStr(Name), BS_3STATE|WS_VISIBLE|WS_TABSTOP|(enabled?0:WS_DISABLED), widgetPos, &m_PropertyCont, id));
widget.CheckBox.SetFont (GetFont ()); widget.CheckBox.SetFont (GetFont ());
} }
else if (widget.Parameter.Type == CPrimitiveClass::CParameter::ConstString) else if (widget.Parameter.Type == CPrimitiveClass::CParameter::ConstString)
@ -522,7 +522,7 @@ void CDialogProperties::addWidget (const CPrimitiveClass::CParameter &parameter,
for (vector<string>::iterator it=PathList.begin(), itEnd=PathList.end(); it!=itEnd; ++it) for (vector<string>::iterator it=PathList.begin(), itEnd=PathList.end(); it!=itEnd; ++it)
{ {
widget.ListEditBox.StringSelectComboBox.InsertString( -1, it->c_str ()); widget.ListEditBox.StringSelectComboBox.InsertString( -1, utf8ToTStr(*it));
} }
} }
@ -549,7 +549,7 @@ void CDialogProperties::addWidget (const CPrimitiveClass::CParameter &parameter,
for (vector<string>::iterator it=PathList.begin(), itEnd=PathList.end(); it!=itEnd; ++it) for (vector<string>::iterator it=PathList.begin(), itEnd=PathList.end(); it!=itEnd; ++it)
{ {
widget.ListEditBox.StringSelectComboBox.InsertString( -1, it->c_str ()); widget.ListEditBox.StringSelectComboBox.InsertString( -1, utf8ToTStr(*it));
} }
} }
} }
@ -887,16 +887,16 @@ bool CDialogProperties::CWidget::fromParameter (const IProperty *property, const
case CPrimitiveClass::CParameter::ConstString: case CPrimitiveClass::CParameter::ConstString:
// Set as uninitialized // Set as uninitialized
if (!Parameter.SortEntries) if (!Parameter.SortEntries)
ComboBox.InsertString (-1, DIFFERENT_VALUE_STRING); ComboBox.InsertString (-1, _T(DIFFERENT_VALUE_STRING));
else else
ComboBox.AddString( DIFFERENT_VALUE_STRING); ComboBox.AddString( _T(DIFFERENT_VALUE_STRING));
ComboBox.SelectString(-1 ,DIFFERENT_VALUE_STRING); ComboBox.SelectString(-1 , _T(DIFFERENT_VALUE_STRING));
OriginalString = DIFFERENT_VALUE_STRING; OriginalString = DIFFERENT_VALUE_STRING;
updateCombo (); updateCombo ();
break; break;
case CPrimitiveClass::CParameter::String: case CPrimitiveClass::CParameter::String:
// Set as uninitialized // Set as uninitialized
EditBox.SetWindowText (DIFFERENT_VALUE_STRING); EditBox.SetWindowText (_T(DIFFERENT_VALUE_STRING));
break; break;
} }
MultipleValues = true; MultipleValues = true;
@ -1631,8 +1631,8 @@ BOOL CDialogProperties::OnCommand(WPARAM wParam, LPARAM lParam)
/* todo hulud remove /* todo hulud remove
CString oldValue; CString oldValue;
widget->EditBox.GetWindowText (oldValue);*/ widget->EditBox.GetWindowText (oldValue);*/
CFileDialogEx dialog (BASE_REGISTRY_KEY, "default", TRUE, widget->Parameter.FileExtension.c_str (), NULL, OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT, CFileDialogEx dialog (BASE_REGISTRY_KEY, _T("default"), TRUE, widget->Parameter.FileExtension.c_str (), NULL, OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,
(widget->Parameter.FileExtension+" (*."+widget->Parameter.FileExtension+")|*."+widget->Parameter.FileExtension+"|All Files (*.*)|*.*||").c_str (), getMainFrame ()); utf8ToTStr(widget->Parameter.FileExtension+" (*."+widget->Parameter.FileExtension+")|*."+widget->Parameter.FileExtension+"|All Files (*.*)|*.*||"), getMainFrame ());
if (widget->Parameter.Folder != "") if (widget->Parameter.Folder != "")
{ {
dialog.m_ofn.lpstrInitialDir = widget->Parameter.Folder.c_str(); dialog.m_ofn.lpstrInitialDir = widget->Parameter.Folder.c_str();
@ -1738,7 +1738,7 @@ BOOL CDialogProperties::OnCommand(WPARAM wParam, LPARAM lParam)
nlassert (widget->Parameter.Type == CPrimitiveClass::CParameter::ConstString); nlassert (widget->Parameter.Type == CPrimitiveClass::CParameter::ConstString);
// Remove // Remove
int index = widget->ComboBox.FindString (-1, DIFFERENT_VALUE_STRING); int index = widget->ComboBox.FindString (-1, _T(DIFFERENT_VALUE_STRING));
if (index != CB_ERR) if (index != CB_ERR)
widget->ComboBox.DeleteString(index); widget->ComboBox.DeleteString(index);
@ -2309,7 +2309,7 @@ void CDialogProperties::rebuildDialog ()
m_ScrollBar.MoveWindow(&scrollRect, TRUE); m_ScrollBar.MoveWindow(&scrollRect, TRUE);
// set the name of the dlg according to displayed class // set the name of the dlg according to displayed class
SetWindowText( ( std::string( "Properties for : " ) + windowName ).c_str() ); SetWindowText( CString(_T("Properties for : ")) + utf8ToTStr(windowName) );
// // JC: added scrolling properties // // JC: added scrolling properties
// ::CRect clientRect; // ::CRect clientRect;
@ -2751,19 +2751,19 @@ void CDialogProperties::ApplyAutoname()
} }
else if (ite->Parameter.Type == CPrimitiveClass::CParameter::ConstString) else if (ite->Parameter.Type == CPrimitiveClass::CParameter::ConstString)
{ {
ite->ComboBox.SelectString(-1 , ""); ite->ComboBox.SelectString(-1 , _T(""));
ite->updateCombo (); ite->updateCombo ();
} }
else if (ite->Parameter.Type == CPrimitiveClass::CParameter::String) else if (ite->Parameter.Type == CPrimitiveClass::CParameter::String)
{ {
ite->Initializing = true; ite->Initializing = true;
ite->EditBox.SetWindowText(""); ite->EditBox.SetWindowText(_T(""));
ite->Initializing = false; ite->Initializing = false;
} }
else if (ite->Parameter.Type == CPrimitiveClass::CParameter::StringArray) else if (ite->Parameter.Type == CPrimitiveClass::CParameter::StringArray)
{ {
ite->Initializing = true; ite->Initializing = true;
ite->MultiLineEditBox.SetWindowText(""); ite->MultiLineEditBox.SetWindowText(_T(""));
ite->Initializing = false; ite->Initializing = false;
// ite->MultiLineEditBox.LoadText(CString()); // ite->MultiLineEditBox.LoadText(CString());
ite->updateMultiline (); ite->updateMultiline ();
@ -2771,7 +2771,7 @@ void CDialogProperties::ApplyAutoname()
else if (ite->Parameter.Type == CPrimitiveClass::CParameter::ConstStringArray) else if (ite->Parameter.Type == CPrimitiveClass::CParameter::ConstStringArray)
{ {
ite->Initializing = true; ite->Initializing = true;
ite->ListEditBox.SetWindowText(""); ite->ListEditBox.SetWindowText(_T(""));
ite->Initializing = false; ite->Initializing = false;
ite->updateList (); ite->updateList ();
} }
@ -2986,16 +2986,13 @@ void CDialogProperties::SelectFolder(CWidget *widget)
LPITEMIDLIST pidlRoot = NULL; LPITEMIDLIST pidlRoot = NULL;
LPSHELLFOLDER desktop; LPSHELLFOLDER desktop;
OLECHAR olePath[_MAX_PATH + 1];
ULONG ulDummy; ULONG ulDummy;
SHGetDesktopFolder (&desktop); SHGetDesktopFolder (&desktop);
if (widget->Parameter.Folder != "") if (widget->Parameter.Folder != "")
{ {
LPTSTR szPath = (char *)widget->Parameter.Folder.c_str(); desktop->ParseDisplayName (NULL, NULL, utf8ToTStr(widget->Parameter.Folder), &ulDummy, &pidlRoot, &ulDummy);
MultiByteToWideChar (CP_ACP, MB_PRECOMPOSED, szPath, -1, olePath, _MAX_PATH);
desktop->ParseDisplayName (NULL, NULL, olePath, &ulDummy, &pidlRoot, &ulDummy);
} }
bi.pidlRoot = pidlRoot; bi.pidlRoot = pidlRoot;
@ -3007,10 +3004,10 @@ void CDialogProperties::SelectFolder(CWidget *widget)
if (pIIL != NULL) if (pIIL != NULL)
{ {
TCHAR szInitialDir[_MAX_PATH]; TCHAR szInitialDir[_MAX_PATH];
BOOL bRet = ::SHGetPathFromIDList(pIIL, (char*)&szInitialDir); BOOL bRet = ::SHGetPathFromIDList(pIIL, szInitialDir);
if (bRet) if (bRet)
{ {
int s = strlen(szInitialDir); int s = _tcslen(szInitialDir);
while (s) while (s)
{ {
--s; --s;
@ -3023,7 +3020,7 @@ void CDialogProperties::SelectFolder(CWidget *widget)
std::vector<std::string> tempArray; std::vector<std::string> tempArray;
widget->getValue (tempArray); widget->getValue (tempArray);
tempArray.push_back (szInitialDir+s); tempArray.push_back (tStrToUtf8(szInitialDir+s));
setEditTextMultiLine (widget->MultiLineEditBox, tempArray); setEditTextMultiLine (widget->MultiLineEditBox, tempArray);
widget->updateMultiline (); widget->updateMultiline ();
@ -3459,9 +3456,9 @@ void CMyComboBox::reloadData()
if(n != CB_ERR) GetLBText(n, s); if(n != CB_ERR) GetLBText(n, s);
ResetContent(); ResetContent();
SetRedraw(FALSE); SetRedraw(FALSE);
InsertString(-1, ""); InsertString(-1, _T(""));
for (vector<string>::iterator it=_data.begin(), itEnd=_data.end(); it!=itEnd; ++it) for (vector<string>::iterator it=_data.begin(), itEnd=_data.end(); it!=itEnd; ++it)
InsertString(-1, it->c_str()); InsertString(-1, utf8ToTStr(*it));
loaded = true; loaded = true;
SetRedraw(TRUE); SetRedraw(TRUE);
if(n != CB_ERR) SelectString(-1, s); if(n != CB_ERR) SelectString(-1, s);
@ -3504,18 +3501,26 @@ BOOL CMyComboBox::PreTranslateMessage( MSG* pMsg )
{ {
CString rString; CString rString;
GetLBText (curSel, rString); GetLBText (curSel, rString);
dataToClipboard (this, CF_TEXT, (void*)(const char*)rString, rString.GetLength()+1); #ifdef _UNICODE
dataToClipboard(this, CF_UNICODETEXT, (void*)(LPCTSTR)rString, (rString.GetLength() + 1)*2);
#else
dataToClipboard (this, CF_TEXT, (void*)(LPCTSTR)rString, rString.GetLength()+1);
#endif
} }
} }
// Paste ? // Paste ?
else if ((pMsg->message == WM_KEYDOWN) && ('V' == (int) pMsg->wParam) && (GetAsyncKeyState (VK_CONTROL) & 0x8000)) else if ((pMsg->message == WM_KEYDOWN) && ('V' == (int) pMsg->wParam) && (GetAsyncKeyState (VK_CONTROL) & 0x8000))
{ {
char text[512]; TCHAR text[512];
#ifdef _UNICODE
if (dataFromClipboard(this, CF_UNICODETEXT, text, 511*2))
#else
if (dataFromClipboard (this, CF_TEXT, text, 511)) if (dataFromClipboard (this, CF_TEXT, text, 511))
#endif
{ {
// 0 final // 0 final
text[511] = 0; text[511] = 0;
_LastString = text; _LastString = tStrToUtf8(text);
search = true; search = true;
} }
} }
@ -3535,7 +3540,7 @@ BOOL CMyComboBox::PreTranslateMessage( MSG* pMsg )
{ {
CString rString; CString rString;
GetLBText (i, rString); GetLBText (i, rString);
string tmp = strlwr ((const char*)rString); string tmp = toLower(tStrToUtf8(rString));
uint size = std::min (_LastString.size(), tmp.size()); uint size = std::min (_LastString.size(), tmp.size());
if (size > matchSize) if (size > matchSize)
{ {

@ -112,7 +112,7 @@ void CFindPrimitiveDlg::OnFindNext()
// || ( _Locator.Primitive->getPropertyByName ("selected", property) // || ( _Locator.Primitive->getPropertyByName ("selected", property)
|| ( getPrimitiveEditor(_Locator.Primitive)->getSelected())) || ( getPrimitiveEditor(_Locator.Primitive)->getSelected()))
// && property) ) // && property) )
&& _Locator.Primitive->getPropertyByName ((const char*)Property, property) && _Locator.Primitive->getPropertyByName (tStrToUtf8(Property), property)
&& property) && property)
{ {
// Kind of primitive ? // Kind of primitive ?
@ -120,7 +120,7 @@ void CFindPrimitiveDlg::OnFindNext()
if (propString) if (propString)
{ {
// Good value ? // Good value ?
if (propString->String.find(Value)!=std::string::npos) if (propString->String.find(tStrToUtf8(Value))!=std::string::npos)
{ {
found = true; found = true;
} }
@ -135,7 +135,7 @@ void CFindPrimitiveDlg::OnFindNext()
uint i; uint i;
for (i=0; i<propStringArray->StringArray.size (); i++) for (i=0; i<propStringArray->StringArray.size (); i++)
{ {
if (propStringArray->StringArray[i].find(Value)!=std::string::npos) if (propStringArray->StringArray[i].find(tStrToUtf8(Value))!=std::string::npos)
{ {
found = true; found = true;
} }
@ -230,7 +230,7 @@ void CFindPrimitiveDlg::replace(bool all)
// || ( _Locator.Primitive->getPropertyByName ("selected", property) // || ( _Locator.Primitive->getPropertyByName ("selected", property)
|| ( getPrimitiveEditor(_Locator.Primitive)->getSelected())) || ( getPrimitiveEditor(_Locator.Primitive)->getSelected()))
// && property) ) // && property) )
&& _Locator.Primitive->getPropertyByName ((const char*)Property, property) && _Locator.Primitive->getPropertyByName (tStrToUtf8(Property), property)
&& property ) && property )
{ {
// Kind of primitive ? // Kind of primitive ?
@ -238,14 +238,14 @@ void CFindPrimitiveDlg::replace(bool all)
if (propString) if (propString)
{ {
// Good value ? // Good value ?
if (propString->String.find(Value)!=std::string::npos) if (propString->String.find(tStrToUtf8(Value))!=std::string::npos)
{ {
if (!firstTime && !all) if (!firstTime && !all)
break; break;
CString tmp(propString->String.c_str()); CString tmp(propString->String.c_str());
tmp.Replace(Value, ReplaceText); tmp.Replace(Value, ReplaceText);
doc->addModification (new CActionSetPrimitivePropertyString (_Locator,(const char*)Property,(const char*)tmp,false)); doc->addModification (new CActionSetPrimitivePropertyString (_Locator, tStrToUtf8(Property), tStrToUtf8(tmp), false));
doc->addModification (new CActionSelect (_Locator)); doc->addModification (new CActionSelect (_Locator));
firstTime=false; firstTime=false;
@ -265,7 +265,7 @@ void CFindPrimitiveDlg::replace(bool all)
for (i=0; i<propStringArray->StringArray.size (); i++) for (i=0; i<propStringArray->StringArray.size (); i++)
{ {
// todo. // todo.
if (propStringArray->StringArray[i].find(Value)!=std::string::npos) if (propStringArray->StringArray[i].find(tStrToUtf8(Value))!=std::string::npos)
{ {
if ( !firstTime if ( !firstTime
&& !all) && !all)
@ -281,7 +281,7 @@ void CFindPrimitiveDlg::replace(bool all)
newStrings=propStringArray->StringArray; newStrings=propStringArray->StringArray;
firstChange=false; firstChange=false;
} }
newStrings[i]=std::string((const char*)tmp); newStrings[i] = tStrToUtf8(tmp);
} }
firstTime=false; firstTime=false;
} }
@ -290,7 +290,7 @@ void CFindPrimitiveDlg::replace(bool all)
if (!firstChange) // have to make a change if (!firstChange) // have to make a change
{ {
doc->addModification (new CActionSetPrimitivePropertyStringArray (_Locator,(const char*)Property,newStrings,false)); doc->addModification (new CActionSetPrimitivePropertyStringArray (_Locator, tStrToUtf8(Property), newStrings, false));
doc->addModification (new CActionSelect (_Locator)); doc->addModification (new CActionSelect (_Locator));
} }
@ -321,7 +321,7 @@ void CFindPrimitiveDlg::replace(bool all)
if (_End) if (_End)
{ {
MessageBox ("End of the document", "Find a primitive...", MB_OK|MB_ICONEXCLAMATION); MessageBox (_T("End of the document"), _T("Find a primitive..."), MB_OK|MB_ICONEXCLAMATION);
_Locator.getRoot (0); _Locator.getRoot (0);
} }

@ -75,7 +75,7 @@ BOOL CGenerateDlg::OnInitDialog()
// TODO: Add extra initialization here // TODO: Add extra initialization here
for (uint32 i = 0; i < AllMaterials.size(); ++i) for (uint32 i = 0; i < AllMaterials.size(); ++i)
ComboMaterial.InsertString(-1, AllMaterials[i].c_str()); ComboMaterial.InsertString(-1, utf8ToTStr(AllMaterials[i]));
ComboMaterial.SetCurSel (0); ComboMaterial.SetCurSel (0);
@ -90,12 +90,12 @@ void CGenerateDlg::OnOK()
if (MinX > MaxX) if (MinX > MaxX)
{ {
MessageBox ("MinX > MaxX", "Error", MB_OK|MB_ICONSTOP); MessageBox (_T("MinX > MaxX"), _T("Error"), MB_OK|MB_ICONSTOP);
return; return;
} }
if (MinY > MaxY) if (MinY > MaxY)
{ {
MessageBox ("MinY > MaxY", "Error", MB_OK|MB_ICONSTOP); MessageBox (_T("MinY > MaxY"), _T("Error"), MB_OK|MB_ICONSTOP);
return; return;
} }
CDialog::OnOK(); CDialog::OnOK();

@ -31,7 +31,7 @@ using namespace NLMISC;
#pragma warning (disable : 4786) #pragma warning (disable : 4786)
BOOL CALLBACK EnumResLangProc(HMODULE hModule, LPCSTR lpszType, LPCSTR lpszName, WORD wIDLanguage, BOOL CALLBACK EnumResLangProc(HMODULE hModule, LPCTSTR lpszType, LPCTSTR lpszName, WORD wIDLanguage,
LONG_PTR lParam) LONG_PTR lParam)
{ {
set<HRSRC> *iconNames = (set<HRSRC>*)lParam; set<HRSRC> *iconNames = (set<HRSRC>*)lParam;
@ -100,7 +100,7 @@ void CImageListEx::addResourceIcon (const char *filename)
int height = imageInfo.rcImage.bottom - imageInfo.rcImage.top; int height = imageInfo.rcImage.bottom - imageInfo.rcImage.top;
// Load the icon // Load the icon
HICON handle = (HICON) LoadImage (NULL, filename, IMAGE_ICON, width, height, LR_COLOR|LR_LOADFROMFILE); HICON handle = (HICON) LoadImage (NULL, utf8ToTStr(filename), IMAGE_ICON, width, height, LR_COLOR|LR_LOADFROMFILE);
if (handle) if (handle)
{ {
// Copy the icon // Copy the icon

@ -124,7 +124,7 @@ void CMyListBox::OnLButtonDblClk(UINT nFlags, CPoint point)
_SelectAfter = GetCurSel(); _SelectAfter = GetCurSel();
if ((_EditingItem == LB_ERR) || bOutside) if ((_EditingItem == LB_ERR) || bOutside)
{ {
_EditingItem = InsertString (-1, ""); _EditingItem = InsertString (-1, _T(""));
_DeleteItIfCancel = true; _DeleteItIfCancel = true;
} }
else else

@ -88,7 +88,7 @@ BOOL CNameDlg::OnInitDialog()
// print the data directory // print the data directory
CWnd* pWnd = GetDlgItem(IDC_NAME_DIR); CWnd* pWnd = GetDlgItem(IDC_NAME_DIR);
pWnd->SetWindowText(("Data directory: " + m_dataDir).c_str()); pWnd->SetWindowText(CString(_T("Data directory: ")) + utf8ToTStr(m_dataDir));
// tab stops to simulate multi-columns edit boxes // tab stops to simulate multi-columns edit boxes
int tab_stop1[1] = {160}; int tab_stop1[1] = {160};
@ -156,18 +156,18 @@ void CNameDlg::updateSearchList()
{ {
// no filter // no filter
m_listToName.insert(std::make_pair(j, i)); m_listToName.insert(std::make_pair(j, i));
m_searchList.InsertString(j++, s.c_str()); m_searchList.InsertString(j++, utf8ToTStr(s));
} }
else else
{ {
std::string filter(m_nameFilter.LockBuffer()); std::string filter(tStrToUtf8(m_nameFilter.LockBuffer()));
m_nameFilter.UnlockBuffer(); m_nameFilter.UnlockBuffer();
// filter // filter
if (NLMISC::toLower(ig).find(NLMISC::toLower(filter)) != std::string::npos) if (NLMISC::toLower(ig).find(NLMISC::toLower(filter)) != std::string::npos)
{ {
m_listToName.insert(std::make_pair(j, i)); m_listToName.insert(std::make_pair(j, i));
m_searchList.InsertString(j++, s.c_str()); m_searchList.InsertString(j++, utf8ToTStr(s));
} }
} }
} }
@ -214,7 +214,7 @@ void CNameDlg::updateSelectList()
m_listToId.insert(std::make_pair(i, row)); m_listToId.insert(std::make_pair(i, row));
} }
m_idList.InsertString(i++, s.c_str()); m_idList.InsertString(i++, utf8ToTStr(s));
} }
} }
@ -359,19 +359,19 @@ void CNameDlg::checkNewGn()
{ {
// print a message if a new gn will be added to the list // print a message if a new gn will be added to the list
CWnd* pWnd = GetDlgItem(IDC_NAME_NEWGN); CWnd* pWnd = GetDlgItem(IDC_NAME_NEWGN);
std::string s = m_assignGn; std::string s = tStrToUtf8(m_assignGn);
uint rowIndex; uint rowIndex;
if (s == "") if (s == "")
{ {
pWnd->SetWindowText(" "); pWnd->SetWindowText(_T(" "));
} }
else if (!m_fcts.findRow(0, s, rowIndex)) else if (!m_fcts.findRow(0, s, rowIndex))
{ {
pWnd->SetWindowText("new gn !"); pWnd->SetWindowText(_T("new gn !"));
} }
else else
{ {
pWnd->SetWindowText(" "); pWnd->SetWindowText(_T(" "));
// auto-fill ig field // auto-fill ig field
m_assignIg = m_fcts.getData(rowIndex, 1).toString().c_str(); m_assignIg = m_fcts.getData(rowIndex, 1).toString().c_str();
} }

@ -51,7 +51,7 @@ void CPacsManager::loadPacs()
string currentPath = CPath::getCurrentPath(); string currentPath = CPath::getCurrentPath();
// "Path" can be relative to the doc path so we have to be first in the doc path // "Path" can be relative to the doc path so we have to be first in the doc path
string s2 = NLMISC::CFile::getPath ((LPCTSTR)getMainFrame()->getDocument()->GetPathName()); string s2 = NLMISC::CFile::getPath (tStrToUtf8(getMainFrame()->getDocument()->GetPathName()));
CPath::setCurrentPath(s2.c_str()); CPath::setCurrentPath(s2.c_str());
string ss = CPath::getFullPath(path); string ss = CPath::getFullPath(path);
CPath::setCurrentPath (ss.c_str()); CPath::setCurrentPath (ss.c_str());

@ -106,7 +106,7 @@ BOOL CPrimitiveConfigurationDlg::OnInitDialog()
ListView_SetExtendedListViewStyle (ListCtrl, LVS_EX_CHECKBOXES); ListView_SetExtendedListViewStyle (ListCtrl, LVS_EX_CHECKBOXES);
// Add the list column // Add the list column
ListCtrl.InsertColumn (0, "Configuration name"); ListCtrl.InsertColumn (0, _T("Configuration name"));
ListCtrl.SetColumnWidth (0, 350); ListCtrl.SetColumnWidth (0, 350);
// Add configurations // Add configurations
@ -114,7 +114,7 @@ BOOL CPrimitiveConfigurationDlg::OnInitDialog()
uint i; uint i;
for (i=0; i<configurations.size(); i++) for (i=0; i<configurations.size(); i++)
{ {
ListCtrl.InsertItem (i, configurations[i].Name.c_str()); ListCtrl.InsertItem (i, utf8ToTStr(configurations[i].Name));
// setItemTextUTF8 (List, nItem, subString++, entry.Strings[CEntryFile::OldSize].c_str ()); // setItemTextUTF8 (List, nItem, subString++, entry.Strings[CEntryFile::OldSize].c_str ());
} }

Loading…
Cancel
Save