本文整理汇总了C++中wyString::GetLength方法的典型用法代码示例。如果您正苦于以下问题:C++ wyString::GetLength方法的具体用法?C++ wyString::GetLength怎么用?C++ wyString::GetLength使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类wyString
的用法示例。
在下文中一共展示了wyString::GetLength方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Replace
wyInt32
FindAndReplace::ReplaceAll(wyString& replacewhat, wyString& replacewith, wyUInt32 wholeworld, wyUInt32 matchcase)
{
if (replacewhat.GetLength() == 0)
{
return -1;
}
wyInt32 startposition = 0;
wyInt32 endposition = SendMessage(m_hwndedit, SCI_GETLENGTH, 0, 0);
wyInt32 flags = 0;
if(wholeworld)flags = SCFIND_WHOLEWORD;
if(matchcase)flags = SCFIND_MATCHCASE;
::SendMessage(m_hwndedit, SCI_SETTARGETSTART, startposition, 0);
::SendMessage(m_hwndedit, SCI_SETTARGETEND, endposition, 0);
::SendMessage(m_hwndedit, SCI_SETSEARCHFLAGS, flags, 0);
wyInt32 posfind = SendMessage(m_hwndedit, SCI_SEARCHINTARGET, replacewhat.GetLength(), (LPARAM)replacewhat.GetString());
if((posfind != -1) && (posfind <= endposition))
{
::SendMessage(m_hwndedit, SCI_BEGINUNDOACTION, 0, 0);
return Replace(posfind, endposition,
replacewhat, replacewith,
wholeworld, matchcase);
}
return 0;
}
示例2: SendMessage
wyInt32
FindAndReplace::Replace(wyInt32 posfind, wyInt32 endposition,
wyString &replacewhat, wyString &replacewith,
wyUInt32 wholeworld, wyUInt32 matchcase)
{
wyInt32 lastmatch = posfind;
wyInt32 replacements = 0;
//Replacement loop
while(posfind != -1)
{
wyInt32 lentarget = SendMessage(m_hwndedit, SCI_GETTARGETEND, 0, 0) - SendMessage(m_hwndedit, SCI_GETTARGETSTART, 0, 0);
wyInt32 movepasteol = 0;
wyInt32 replacelen = replacewith.GetLength();
wyInt32 lenreplaced = replacelen;
::SendMessage(m_hwndedit, SCI_REPLACETARGET, replacelen, (LPARAM)replacewith.GetString());
//Modify for change caused by replacement
endposition += lenreplaced - lentarget;
// For the special cases of start of line and end of line
// something better could be done but there are too many special cases
lastmatch = posfind + lenreplaced + movepasteol;
if(lentarget == 0)
{
lastmatch = SendMessage(m_hwndedit, SCI_POSITIONAFTER, lastmatch, 0);
}
if(lastmatch >= endposition)
{
// Run off the end of the document/selection with an empty match
posfind = -1;
}
else
{
::SendMessage(m_hwndedit, SCI_SETTARGETSTART, lastmatch, 0);
::SendMessage(m_hwndedit, SCI_SETTARGETEND, endposition, 0);
posfind = SendMessage(m_hwndedit, SCI_SEARCHINTARGET, replacewhat.GetLength(), (LPARAM)replacewhat.GetString());
}
replacements++;
}
::SendMessage(m_hwndedit, SCI_SETSEL, lastmatch, lastmatch);
::SendMessage(m_hwndedit, SCI_ENDUNDOACTION, 0, 0);
return replacements;
}
示例3:
//get column name
wyBool
TableView::GetColumnName(wyString& column, wyInt32 col)
{
if(m_data && m_data->m_datares && col >= 0 && col < m_data->m_datares->field_count)
{
if(m_data->m_datares->fields[col].name && m_data->m_datares->fields[col].name[0])
{
column.SetAs(m_data->m_datares->fields[col].name, m_wnd->m_ismysql41);
}
return column.GetLength() ? wyTrue : wyFalse;
}
return wyFalse;
}
示例4: OnError
// Function to create a favorite file or folder in the given path //
wyBool
FavoriteBase::InsertFavoriteItem(wyString &path, wyBool isfolder , wyString &favquery)
{
DWORD byteswritten;
HANDLE hfile;
//const unsigned char utf8bom[10] = {unsigned char(0xEF), unsigned char(0xBB), unsigned char(0xBF)};
// if the favorite is file type then add the extension//
if(!isfolder)
{
path.Add(".sql");
hfile = ::CreateFile(path.GetAsWideChar(), GENERIC_WRITE, 0, NULL, CREATE_NEW,
NULL, NULL);
if(hfile == INVALID_HANDLE_VALUE)
{
if(::GetLastError() == ERROR_FILE_EXISTS)
{
if(::MessageBox(NULL, _(L"The name you have entered for the shortcut already exists in Favorites menu.\nWould you like to overwrite it?"), _(L"Add Favorite"), MB_YESNO | MB_TASKMODAL | MB_ICONINFORMATION | MB_DEFBUTTON2) == IDYES)
{
hfile = ::CreateFile(path.GetAsWideChar(), GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, NULL, NULL);
if(hfile == INVALID_HANDLE_VALUE)
OnError(_("Cannot write into Favorite File"));
}
else
return wyFalse;
}
else
return OnError(_("Cannot write into Favorite File"));
}
//if (!::WriteFile(hfile, utf8bom, 3, &byteswritten , NULL))
// return OnError("Cannot write into Favorite File");
if (!::WriteFile(hfile, favquery.GetString(), favquery.GetLength(), &byteswritten , NULL))
return OnError(_("Cannot write into Favorite File"));
::CloseHandle(hfile);
}
else if(!::CreateDirectory(path.GetAsWideChar(), NULL))
return OnError(_("Cannot create Favorite Folder"));
return wyTrue;
}
示例5: AllocateBuff
// function to process file type Favorite//
wyBool
FavoriteBase::AddFile(HMENU hmenu, wyString &parentpath, wyWChar *filename)
{
wyInt32 i , j=0;
wyUInt32 lengthwchar = 1;
wyWChar ext[_MAX_EXT] = {0} , *data = {0};
wyChar *path = {0};
MENUITEMINFO lpmii={0};
parentpath.GetAsWideChar(&lengthwchar);
path = AllocateBuff(parentpath.GetLength() + 2);
data = AllocateBuffWChar(wcslen(filename) + 2);
wcscpy(data, (wyWChar*)filename);
strcpy(path, (wyChar*)parentpath.GetString());
for(i = wcslen(data) - 1; i && data[i]!='.'; i--, j++)
ext[j] = data[i];
if(wcsnicmp(ext, L"lqs", 3) != 0)
return wyFalse;
ext[j] = 0;
data[i] = 0;
lpmii.cbSize = sizeof(MENUITEMINFO);
lpmii.fMask = MIIM_STRING|MIIM_ID|MIIM_DATA;
lpmii.wID = m_menuid++;
lpmii.dwItemData = (ULONG_PTR)path;
lpmii.cch = wcslen(data);
lpmii.dwTypeData = data;
VERIFY(::InsertMenuItem(hmenu, -1, TRUE, &lpmii));
free(data);
return wyTrue;
}