本文整理汇总了C++中ITsStrFactoryPtr::MakeStringWithPropsRgch方法的典型用法代码示例。如果您正苦于以下问题:C++ ITsStrFactoryPtr::MakeStringWithPropsRgch方法的具体用法?C++ ITsStrFactoryPtr::MakeStringWithPropsRgch怎么用?C++ ITsStrFactoryPtr::MakeStringWithPropsRgch使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ITsStrFactoryPtr
的用法示例。
在下文中一共展示了ITsStrFactoryPtr::MakeStringWithPropsRgch方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Display
/*----------------------------------------------------------------------------------------------
This is the method for displaying the name of a single reference. This view shows the
name for an RnGenericRec consisting of the type of record, hyphen, title, hyphen,
creation date. "Subevent - Fishing for pirana - 3/22/2001"
@param pvwenv Pointer to the view environment.
@param hvo The id of the object we are displaying.
@param frag Identifies the part of the view we are currently displaying.
@return HRESULT indicating success (S_OK), or failure (E_FAIL).
----------------------------------------------------------------------------------------------*/
STDMETHODIMP CleRecVc::Display(IVwEnv * pvwenv, HVO hvo, int frag)
{
BEGIN_COM_METHOD;
ChkComArgPtr(pvwenv);
Assert(false); // Is this needed for poss lists?
switch (frag)
{
case kfrRefName:
case kfrListName:
{
SmartBstr bstrClass = L"UnLoaded";
ITsStringPtr qtss;
ITsStringPtr qtssTitle;
// Make sure data is loaded.
LoadDataFor(pvwenv, hvo, frag);
AfMainWnd * pafw = AfApp::Papp()->GetCurMainWnd();
AssertPtr(pafw);
AfLpInfo * plpi = pafw->GetLpInfo();
AssertPtr(plpi);
AfDbInfo * pdbi = plpi->GetDbInfo();
AssertPtr(pdbi);
#define HYPERLINK_CHANGE
#ifdef HYPERLINK_CHANGE
// Update the string with the new object.
GUID uid;
if (!pdbi->GetGuidFromId(hvo, uid))
ReturnHr(E_FAIL);
StrUni stuData;
OLECHAR * prgchData;
// Make large enough for a guid plus the type character at the start.
stuData.SetSize(isizeof(GUID) / isizeof(OLECHAR) + 1, &prgchData);
*prgchData = kodtNameGuidHot;
memmove(prgchData + 1, &uid, isizeof(uid));
ITsPropsFactoryPtr qtpf;
ITsPropsBldrPtr qtpb;
ITsTextPropsPtr qttp;
ITsStrFactoryPtr qtsf;
qtpf.CreateInstance(CLSID_TsPropsFactory);
CheckHr(qtpf->GetPropsBldr(&qtpb));
CheckHr(qtpb->SetIntPropValues(ktptWs, ktpvDefault, pdbi->UserWs()));
CheckHr(qtpb->SetStrPropValue(ktptObjData, stuData.Bstr()));
CheckHr(qtpb->GetTextProps(&qttp));
qtsf.CreateInstance(CLSID_TsStrFactory);
OLECHAR chObj = kchObject;
CheckHr(qtsf->MakeStringWithPropsRgch(&chObj, 1, qttp, &qtss));
CheckHr(pvwenv->OpenSpan());
// REVIEW KenZ(RandyR) Whey are DN flids in this app?
int flid = kflidRnGenericRec_Title;
CheckHr(pvwenv->NoteDependency(&hvo, &flid, 1));
CheckHr(pvwenv->AddString(qtss)); // The class name.
CheckHr(pvwenv->CloseSpan());
#else // !HYPERLINK_CHANGE
int clid;
HVO hvoOwn;
int64 ntim;
int ws = pdbi->UserWs();
ISilDataAccessPtr qsda;
CheckHr(pvwenv->get_DataAccess(&qsda));
AssertPtr(qsda);
CheckHr(qsda->get_IntProp(hvo, kflidCmObject_Class, &clid));
CheckHr(qsda->get_ObjectProp(hvo, kflidCmObject_Owner, &hvoOwn));
// REVIEW KenZ(RandyR) Whey are DN flids in this app?
CheckHr(qsda->get_TimeProp(hvo, kflidRnGenericRec_DateCreated, &ntim));
CheckHr(qsda->get_StringProp(hvo, kflidRnGenericRec_Title, &qtssTitle));
int stid;
// Sharon! Not needed?
// if (clid == kclidRnEvent)
// {
// if (plpi->GetRnId() == hvoOwn)
// stid = kstidEvent;
// else
// stid = kstidSubevent;
// }
// else if (clid == kclidRnAnalysis)
// {
// if (plpi->GetRnId() == hvoOwn)
// stid = kstidAnalysis;
// else
// stid = kstidSubanalysis;
// }
StrUni stu(stid);
StrUni stuSep(kstidSpHyphenSp);
//.........这里部分代码省略.........