本文整理汇总了C++中String_256类的典型用法代码示例。如果您正苦于以下问题:C++ String_256类的具体用法?C++ String_256怎么用?C++ String_256使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了String_256类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Colin_Barfoot
/********************************************************************************************
> TemplateAttribute::TemplateAttribute( const StringBase& InternalName,
const StringBase& Question,
const StringBase& Param)
Author: Colin_Barfoot (Xara Group Ltd) <[email protected]>
Created: 27/06/97
Purpose: Default constructor for TemplateAttribute
Inputs: InternalName
Question
Param
Notes: Currently forms a UserAttribute with a LongKey of
WizOp\InternalName/Param
********************************************************************************************/
TemplateAttribute::TemplateAttribute( const StringBase& InternalName,
const StringBase& Question,
const StringBase& Param)
{
// Copy as much of the question as we can.
SetWizOpNameAndParam(InternalName, Param);
// Cache this test for faster Attribute gallery scans.
m_fIsAnObjectName = (GetInternalName() == TA_NAME);
if (Question.Length() > 0)
{
String_256 NewValue;
INT32 LengthToCopy = (NewValue.MaxLength() < Question.Length())
? TRACE( _T("TemplateAttribute::TemplateAttribute: Q truncated\n")),
NewValue.MaxLength()
: Question.Length();
if (LengthToCopy > 0)
{
String_256 TruncatedQuestion;
Question.Left(&TruncatedQuestion, LengthToCopy);
if (!Value.Value.Alloc(TruncatedQuestion.Length()))
{
ERROR1RAW(_R(IDE_NOMORE_MEMORY));
return;
}
Value.Value = TruncatedQuestion;
}
}
}
示例2:
SuperGallery *OpGalleryCommand::GetGalleryAndCommand(OpDescriptor *pOpDesc, String_32 *Command)
{
String_256 Temp = pOpDesc->Token;
TCHAR *Str = (TCHAR *)Temp;
*Command = TEXT("");
while (*Str != '\0' && *Str != ':')
Str++;
if (*Str == '\0')
return(NULL);
// Copy the right end of the string into Command for return
*Command = (TCHAR *) (Str+1);
// Find the gallery referenced by the left end of the string
*Str = '\0'; // NULL Terminate the left end of the string
String_32 Bob;
Temp.Left(&Bob, 31);
SuperGallery* pSuperGallery = SuperGallery::FindSuperGallery(Bob , GalleryBarNameLimitSize);
if (pSuperGallery != NULL && pSuperGallery->IsKindOf(CC_RUNTIME_CLASS(SuperGallery)))
return((SuperGallery *) pSuperGallery);
// Not found, or isn't a gallery?! (eep!)
return(NULL);
}
示例3: GetDebugDetails
void Chapter::GetDebugDetails(StringBase* Str)
{
NodeRenderablePaper::GetDebugDetails(Str);
String_256 TempStr;
TempStr._MakeMsg(TEXT("\r\nFoldLine X Coord = #1%ld\r\n"),
FoldLineXCoord);
(*Str)+=TempStr;
}
示例4: ENSURE
String_256 LayerManager::CreateUniqueLayerID()
{
// We can't generate a unique id if there is no current spread
ENSURE(CurrentSpread != NULL, "There is no current spread");
String_256 UniqueLayerID;
INT32 NumLayers = 0;
ListItem* Lyr = LyrDetList.GetHead();
// Calculate how many layers are on the current spread, we must ignore layers
// which have been deleted.
while (Lyr != NULL)
{
if (!((LyrDetails*)Lyr)->Deleted) // Don't count deleted layers
{
NumLayers++;
}
Lyr = LyrDetList.GetNext(Lyr);
}
ENSURE(NumLayers != 0, "The current spread has no layers");
INT32 NewLayerNum = NumLayers+1;
BOOL Unique; // Flag used to indicate if the id generated is unique or not
do
{
// Construct a first attempt at a unique layer id 'Layer n'
// where n = the number of layers on the current spread + 1
UniqueLayerID.MakeMsg(_R(IDS_LAYERMGR_LAYERNAME),NewLayerNum);
// Check that UniqueLayerID is indeed unique
Unique = TRUE; // Until we know better
Lyr = LyrDetList.GetHead();
while (Lyr != NULL)
{
if (!((LyrDetails*)Lyr)->Deleted) // Ignore deleted layers
{
if (UniqueLayerID == ((LyrDetails*)Lyr)->Status.StringLayerID)
{
Unique = FALSE;
// UniqueLayerID is not unique so increment NewLayerNum and try again
NewLayerNum++;
break;
}
}
Lyr = LyrDetList.GetNext(Lyr); // Get the next layer
}
} while (!Unique);
return(UniqueLayerID);
}
示例5: Graham_Walmsley
/********************************************************************************************
> INT32 HTMLExportFilter::Write(DocCoord dcToWrite, CCLexFile* pfileToWrite, TCHAR* pcBuffer)
Author: Graham_Walmsley (Xara Group Ltd) <[email protected]>
Created: 9/4/97
Inputs: pcToWrite The coordinate to write
pfileToWrite The file to write to (may be NULL)
pcBuffer The text buffer to write to (may be NULL)
Returns: The number of TCHARs written
Purpose: Writes the coordinate to the file, separated by
a comma:
200,100
********************************************************************************************/
INT32 HTMLExportFilter::Write(DocCoord dcToWrite, CCLexFile* pfileToWrite, TCHAR* pcBuffer)
{
//Format our coords
String_256 strFormat;
strFormat.MakeMsg(_R(IDS_HTMLEXPORT_COORDFORMAT), dcToWrite.x, dcToWrite.y);
//And write it out
return Write(strFormat, pfileToWrite, pcBuffer);
}
示例6: PORTNOTETRACE
BOOL PathNameEx::CreateLocation()
{
PORTNOTETRACE("other","PathNameEx::CreateLocation - do nothing");
#ifndef EXCLUDE_FROM_XARALX
if (!IsValid())
return FALSE;
// We'll walk the location string from left to right - if we come across non-existent directories,
// we create them
String_256 strLocation = GetLocation(FALSE);
String_256 strDirPath = drivename;
INT32 nPos = drivename.Length(); // start after the drivename
while( nPos < strLocation.Length() )
{
while( ( strLocation[nPos] != chPathSep ) && ( nPos < strLocation.Length() ) )
{
strDirPath += strLocation[nPos];
nPos++;
}
// strDirPath has been added a directory, we check if it exists
if (_access((TCHAR*) strDirPath, 0) == -1) // not found, try to create the directory
{
if (_mkdir((TCHAR*) strDirPath))
{
#ifdef _DEBUG
TCHAR szMsg[256];
TCHAR szError[128];
switch (errno)
{
case EACCES:
camStrcpy(szError, "access denied (EACCES)");
break;
case ENOENT:
camStrcpy(szError, "path not found (ENOENT)");
break;
default:
wsprintf(szError, "errno = %d", errno);
}
wsprintf(szMsg, "Create directory %s failed, %s", strDirPath, szError);
ERROR3(szMsg);
#endif
return FALSE;
}
}
strDirPath += chPathSep; // add a backslash in case there are further subdirectories
nPos++; // move to the next position
}
#endif
return TRUE;
}
示例7: ERROR2RAW
void CDECL Error::XSetError( UINT32 errID, ...)
{
if ( (errID==FALSE) || (errID==TRUE) )
{
// someone probably used the wrong macro parameters e.g. TRUE and FALSE instead of ID
// This call will set an _R(IDE_INTERNAL_ERROR) for us
ERROR2RAW( "ERROR1 macro used with invalid parameters" );
return;
}
TCHAR buf[256];
va_list marker;
va_start( marker, errID );
String_256 result;
// load the format string as a resoure (note no module ID yet)
if (!SmartLoadString(0, errID, buf, sizeof(buf)))
{
camSnprintf( buf, 256, wxT("Error<%u>"), errID ); // keep inline
}
// now do _MakeMsg type formatting
result.CCvsprintf(buf, marker);
#if !defined(EXCLUDE_FROM_RALPH) && !defined(EXCLUDE_FROM_XARALX)
// Set the help context.
SetNextMsgHelpContext(errID);
#endif
// ralph needs this so that he can map the ID to a HRESULT before passing it
// back to a harness
TRACEUSER( "Chris", wxT("oOoOo Ralph Set Error %d \n"), RalphErrorID );
RalphErrorID =errID;
// and copy result into ErrorString
SetErrorSerious( result );
// trace output because SetErrorSerious doesn't bother
TRACE( wxT("Setting error: ID = %d: \"%s\"\n"), errID, ErrorString);
// then tidy up
va_end( marker );
ResetWhere();
}
示例8: GetDebugDetails
void NodeSimpleShape::GetDebugDetails( StringBase* Str )
{
#ifdef _DEBUG
// Call base class
NodeRenderableInk::GetDebugDetails( Str );
InkPath.FindStartOfPath();
String_256 TempStr;
(*Str) += TEXT( "\r\nEllipse Path Data Dump\r\n" );
TempStr._MakeMsg( TEXT( "Parallelogram :-\r\n\t#1%ld,\t#2%ld\r\n")
TEXT("\t#3%ld,\t#4%ld\r\n")
TEXT("\t#5%ld,\t#6%ld\r\n")
TEXT("\t#7%ld,\t#8%ld\r\n"),
Parallel[0].x, Parallel[0].y,
Parallel[1].x, Parallel[1].y,
Parallel[2].x, Parallel[2].y,
Parallel[3].x, Parallel[3].y );
(*Str) += TempStr;
DocRect BlobRect = GetBlobBoundingRect();
TempStr._MakeMsg( TEXT("Blob Bounding Rect :-\r\n\t#1%ld,\t#2%ld\r\n\t#3%ld,\t#4%ld\r\n"),
BlobRect.lo.x, BlobRect.lo.y, BlobRect.hi.x, BlobRect.hi.y );
(*Str) += TempStr;
if ( InkPath.IsFilled )
(*Str) += TEXT( "The Path is Filled\r\n" );
(*Str) += TEXT( "\r\nNum\tType\tX Coord\tY Coord\r\n" );
PathVerb* Verbs = InkPath.GetVerbArray();
DocCoord* Coords = InkPath.GetCoordArray();
// PathFlags* Flags = InkPath.GetFlagArray();
for (INT32 i=0; i<InkPath.GetNumCoords(); i++)
{
// Add the info to the string
TempStr._MakeMsg( TEXT("#1%d.\t#2%d\t#3%ld,\t#4%ld\r\n"),
i, Verbs[i], Coords[i].x, Coords[i].y );
(*Str) += TempStr;
}
#endif
}
示例9: GetRenderView
BOOL PrintPSRenderRegion::WriteSepFunctions(KernelDC *pDC)
{
PrintControl *pPrintCtl=NULL;
View *pView = GetRenderView();
if (pView) pPrintCtl = pView->GetPrintControl();
if (!pPrintCtl)
return TRUE;
// Get a pointer to the typeset info structure
TypesetInfo *pInfo = pPrintCtl->GetTypesetInfo();
// Is screening off?
if (!pInfo->AreScreening())
return TRUE;
// Get hold of our PostScript prolog resource...
CCResTextFile ScreenFile;
// Open the file
if (!ScreenFile.open(_R(IDM_PS_SPOTFUNCS), _R(IDT_PS_RES)))
{
// Failed to open the file...
ERROR2(FALSE, "Could not get at PostScript resource!");
}
// Read each line from the file and output it to the DC.
String_256 LineBuf;
TCHAR *pBuf = (TCHAR *) LineBuf;
while (!ScreenFile.eof())
{
// Copy this line to output.
ScreenFile.read(&LineBuf);
pDC->OutputTCHARAsChar(pBuf, LineBuf.Length());
pDC->OutputNewLine();
}
// All done
ScreenFile.close();
return TRUE;
}
示例10: ERROR2RAW
void OpGenericDownload::OnDownloadFail()
{
//First get a pointer to the parameters
GenericDownloadParam* pGenParam = (GenericDownloadParam*) pParam;
if (pGenParam==NULL)
{
ERROR2RAW("OpBitmapDownload::OnDownloadFail - no download parameters");
return;
}
//Get the URL which the user typed
String_256 strURL=pGenParam->strURL;
//And put it up as a message
String_256 strMessage;
strMessage.MakeMsg(_R(IDS_HTML_DOWNLOADFAILED), &strURL);
Error::SetError(0, strMessage, 0);
InformError();
}
示例11: String_256
String_256 ArrowRec::GetStockArrowName(StockArrow ArrowType)
{
String_256 ArrowName = String_256(_R(IDS_K_ARROWS_DEFAULTARROW));
switch (ArrowType)
{
case SA_STRAIGHTARROW:
ArrowName.Load(_R(IDS_K_ARROWS_STRAIGHTARROW));
break;
case SA_ANGLEDARROW:
ArrowName.Load(_R(IDS_K_ARROWS_ANGLEDARROW));
break;
case SA_ROUNDEDARROW:
ArrowName.Load(_R(IDS_K_ARROWS_ROUNDEDARROW));
break;
case SA_SPOT:
ArrowName.Load(_R(IDS_K_ARROWS_SPOT));
break;
case SA_DIAMOND:
ArrowName.Load(_R(IDS_K_ARROWS_DIAMOND));
break;
case SA_ARROWFEATHER:
ArrowName.Load(_R(IDS_K_ARROWS_ARROWFEATHER));
break;
case SA_ARROWFEATHER2:
ArrowName.Load(_R(IDS_K_ARROWS_ARROWFEATHER2));
break;
case SA_HOLLOWDIAMOND:
ArrowName.Load(_R(IDS_K_ARROWS_HOLLOWDIAMOND));
break;
default:
ArrowName = "";
break;
}
return ArrowName;
}
示例12: strSearchFilename
void CTemplateManager::GetTemplateList( CTemplateList* pList, const String_256& strTemplatePath, bool fLocal )
{
// Don't bother with any of this is directory is invalid
if( !wxDir::Exists( (PCTSTR)strTemplatePath ) )
return;
//Now search that path for templates
//Start by setting the leaf name to *.xar
String_256 strSearchFilename( _R(IDS_NEWTEMPLATES_DEFAULTTEMPLATEEXTENSION) );
// Get the default entry names
String_256 strPathOfDrawingTemplate = CTemplateManager::GetDefaultDrawingTemplate().GetPath(FALSE);
strPathOfDrawingTemplate.SwapChar( _T('_'), _T(' ') );
String_256 strPathOfAnimationTemplate = CTemplateManager::GetDefaultAnimationTemplate().GetPath(FALSE);
strPathOfAnimationTemplate.SwapChar( _T('_'), _T(' ') );
String_256 strPathOfFile;
TRACEUSER( "jlh92", _T("DefPath = %s, %s\n"), PCTSTR(strPathOfDrawingTemplate),
PCTSTR(strPathOfAnimationTemplate) );
// Build system template path
PathName pathTemplates( strTemplatePath );
pathTemplates.SetFileNameAndType( strSearchFilename );
PathName pathOfFile( pathTemplates );
String_256 strTemplates = pathTemplates.GetPath( FALSE );
//And search the path for xar files that are
//NOT the default animation or drawing templates
String_256 strNameOfFile;
if( FileUtil::StartFindingFiles( &strTemplates ) )
{
while( FileUtil::FindNextFile( &strNameOfFile ) )
{
pathOfFile.SetFileNameAndType( strNameOfFile );
strPathOfFile = pathOfFile.GetFileName(TRUE);
if( 0 != strPathOfFile.CompareTo( strPathOfDrawingTemplate, FALSE ) &&
0 != strPathOfFile.CompareTo( strPathOfAnimationTemplate, FALSE ) )
{
(*pList)[strPathOfFile] = fLocal;
TRACEUSER( "jlh92", _T("Curr = %s\n"), PCTSTR(strPathOfFile) );
}
}
FileUtil::StopFindingFiles();
}
// Don't allow any errors set while searching to propagate outside this scope
Error::ClearError();
}
示例13: SubP
BOOL LibraryFile::CheckForSubIndexes(SuperGallery *ParentGal, PathName *Path, SGLibType Type, BOOL Updated)
{
// The directory given had no XaraInfo\index.txt file, maybe it's a sublib, check
// For defaults...
String_256 DefaultIndex;
String_256 IndexDesc;
BOOL CanGenerate;
BOOL ok = TRUE;
// Need to reset the Quiet status before a stream of Library::Init calls
ParentLibraryGallery->SetQuietStatus(FALSE);
if(GetSubIndexDetails(ParentLibraryGallery, &DefaultIndex, &IndexDesc, &CanGenerate))
{
String_256 SubP(Path->GetPath(TRUE)); // "%s\\XaraInfo\\%s"
SubP += String_16(_R(IDS_LIBRARIES_XARAINFO_DIRNAME));
SubP += TEXT("\\") + DefaultIndex;
PathName SubPath(SubP);
if(!SubPath.IsValid())
{
ERROR3("LibraryFile::CheckForSubIndexes invalid subpath");
return FALSE;
}
BOOL Generate = FALSE;
BOOL Found = FALSE;
// Is there a default sub index ?
Found = SGLibOil::FileExists(&SubPath);
if(!Found && CanGenerate)
{
if(Library::RemoteIndexes && GenerateIndexFile::IsDirectoryReadOnly(Path))
{
// Check whether there's a 'temporary' index for this directory, and
// possibly use that instead of the read only directory...
String_256 RemoteLocationOfIndex;
BOOL Existing = GenerateIndexFile::CheckForRemote(Path, &RemoteLocationOfIndex);
if(Existing)
{
String_256 SubP(RemoteLocationOfIndex); // %s\\XaraInfo\\%s
SGLibOil::AppendSlashIfNotPresent(&SubP);
SubP += String_16(_R(IDS_LIBRARIES_XARAINFO_DIRNAME));
SubP += TEXT("\\") + DefaultIndex;
PathName TmpSubPath(SubP);
Found = SGLibOil::FileExists(&TmpSubPath);
// OK, so there's a remote index sitting pretty in the user's temporary
// location... Use that and don't bother generating a new one...
if(Found)
{
SubPath.SetPathName(SubP);
Path->SetPathName(RemoteLocationOfIndex);
}
}
}
if(!Found)
{
// tell the user that there is no index file, and ask if they want one generating
String_256 WarnMsg;
String_256 TmpPath(SubPath.GetLocation(FALSE));
LibraryFile::TidyUpSubPath(&TmpPath);
WarnMsg.MakeMsg(_R(IDS_LIBRARY_NO_INDEX_FILE_GEN), (TCHAR *)IndexDesc, (TCHAR *)TmpPath);
Error::SetError(0, WarnMsg, 0);
//INT32 ButtonPressed = InformMessage(0, _R(IDS_NOTHUMBNAILS), _R(IDS_THUMBNAILS), _R(IDS_CANCEL)/*, _R(IDS_HELP)*/);
INT32 ButtonPressed = InformMessage(0, _R(IDS_CREATE), _R(IDS_CANCEL));
Error::ClearError();
if(ButtonPressed < 2)
{
// Generate an index...
String_64 Author(PRODUCT_NAME);
Generate = GenerateDefaultIndex(&SubPath, Path, &Author, Type, TRUE);
ok = TRUE;
}
else
{
// Cancel or help clicked
ok = FALSE;
}
}
}
if(!Found && !CanGenerate)
{
// tell the user that there is no index file, and give them a cancel...
String_256 WarnMsg;
String_256 TmpPath(SubPath.GetLocation(FALSE));
LibraryFile::TidyUpSubPath(&TmpPath);
WarnMsg.MakeMsg(_R(IDS_LIBRARY_NO_INDEX_FILE), (TCHAR *)IndexDesc, (TCHAR *)TmpPath);
Error::SetError(0, WarnMsg, 0);
INT32 ButtonPressed = InformWarning(0, _R(IDS_CANCEL), NULL);
Error::ClearError();
ok = FALSE;
}
//.........这里部分代码省略.........
示例14: ERROR3
INT32 LibraryFile::Init(SuperGallery *ParentGal, PathName *APath, SGLibType Type, BOOL Updated, BOOL DoScroll)
{
#ifndef EXCLUDE_GALS
if(ParentGal == NULL || APath == NULL || !Libraries.IsEmpty())
{
ERROR3("LibraryFile::Init - NULL parameters are illegal OR Init called > 1 times");
if(!Libraries.IsEmpty())
return(Libraries.GetCount());
else
return 0;
}
BOOL ok = TRUE;
// Tidy up Path a bit
String_256 OurPath(APath->GetPath());
LibraryFile::TidyUpSubPath(&OurPath);
// Now point Path to the new pathname
PathName ModifiedPath(OurPath);
PathName *Path = &ModifiedPath;
if(!ModifiedPath.IsValid())
{
ERROR3("LibraryFile::Init -> Modified library path is invalid");
return 0;
}
// Remember the pathname and type
MyPath = *Path;
MyType = Type;
ParentGallery = ParentGal;
if(ParentGallery->IsKindOf(CC_RUNTIME_CLASS(LibraryGallery)))
ParentLibraryGallery = (LibraryGallery *)ParentGal;
else
{
ERROR3("LibraryFile::Init passed a non-library gallery - yikes...");
return 0;
}
// Need to reset the Quiet status before a stream of Library::Init calls
ParentLibraryGallery->SetQuietStatus(FALSE);
BOOL Retry = TRUE;
while(Retry)
{
Retry = FALSE;
// Would be nice to have a way of adding a file to a path in PathName... Is there one ?
if(!SGLibOil::FileExists(Path))
{
// We're opening the font gallery, but can't find the font library path - don't warn
if(Type == SGLib_Font)
return 0;
// tell the user that the directory doesn't exist
String_256 WarnMsg;
String_256 DefaultIndex;
String_256 IndexDesc;
BOOL CanGenerate;
ok = LibraryFile::GetSubIndexDetails(ParentLibraryGallery, &DefaultIndex, &IndexDesc, &CanGenerate);
String_256 TmpPath(Path->GetLocation(FALSE));
LibraryFile::TidyUpSubPath(&TmpPath);
// Taken out by Graham 30/10/97: If the gallery had no directory specified,
//we used to throw a warning which said "do you want to specify another folder?"
//We don't do this any more, because the default is to open all galleries empty and
//then download stuff from the Xara web site
#if 0
WarnMsg.MakeMsg(_R(IDS_BROWSE_OR_SCAN), (TCHAR *)IndexDesc, (TCHAR *)TmpPath);
Error::SetError(0, WarnMsg, 0);
INT32 ButtonPressed = InformWarning(0, _R(IDS_BROWSE), _R(IDS_RETRY), _R(IDS_CANCEL)/*, _R(IDS_HELP)*/);
#else // WEBSTER
INT32 ButtonPressed = 3;
#endif // WEBSTER
TRACEUSER( "Richard", _T("ButtonPressed: %d\n"), ButtonPressed);
Error::ClearError();
switch(ButtonPressed)
{
case 1:
{
// Open the Browse dialog (or the Add.. dialog as it seems to be called now)
PathName ThePath(*Path);
// This returns FALSE if Cancel was hit, or an error occurred.
if(!SGLibOil::GetLibPath(ParentLibraryGallery, &ThePath, CanGenerate, Type))
{
ERROR3("GetLibPath returned FALSE in LF::Init");
return 0;
}
else
{
ModifiedPath = ThePath;
if(!ModifiedPath.IsValid())
{
ERROR3("LibraryFile::Init -> scanned library path is invalid");
return 0;
//.........这里部分代码省略.........
示例15: GetDialogTitle
void CBrushGadget::GetDialogTitle (String_256& DlgTitle) const
{
DlgTitle.Load (BubbleID_m);
}