EssOtlCreateObject

指定されたオブジェクト・タイプと名前のオブジェクトを作成し、オブジェクト・ハンドルを戻します。

構文

            ESS_FUNC_M EssOtlCreateObject (
            hOutline
            , 
            objType
            , 
            name
            , 
            phObjHandle
            )

         
パラメータデータ型説明

hOutline

ESS_HOUTLINE_T

アウトライン・ハンドル(編集モードのみ)

objType

ESS_OBJECT_TYPES

次のいずれかの値を持つオブジェクト・タイプ:

  • OBJECT_SMARTLIST

    オブジェクト・タイプはテキスト・リスト(スマートリスト)/

name

ESS_STR_T

オブジェクトを特定する文字列

phObjHandle

ESS_PHOBJECT_T

作成されたオブジェクト・ハンドルを戻します。

戻り値

戻り値:

         void TestCreateObject()
{
    ESS_STS_T           sts = ESS_STS_NOERR;
    ESS_HOUTLINE_T      hOutline = ESS_NULL;
    ESS_OBJDEF_T        Object;
    ESS_OBJECT_TYPES    objType;
    ESS_STR_T           smartListName;
    ESS_HOBJECT_T       ObjHandle;
    ESS_ULONG_T         Count, i;
    ESS_PHOBJECT_T      ObjHandles;
    ESS_HOBJECT_T      	hObjHandle;
    ESS_HSMARTLIST_T    hSmartList;
    ESS_STR_T           objName;
   
    memset(&Object, '\0', sizeof(Object));
    Object.hCtx = hCtx;
    Object.ObjType = ESS_OBJTYPE_OUTLINE;
    Object.AppName = szAppName;
    Object.DbName = szDbName;
    Object.FileName = szFileName;
 
    /* Open outline */
    sts = EssOtlOpenOutline(hCtx, &Object, 
								ESS_TRUE, ESS_TRUE, &hOutline);
   
    /* Create a static SmartList */
    objType = OBJECT_SMARTLIST;
    smartListName = "SList1";
    sts = 
         EssOtlCreateObject(hOutline, objType, 
								smartListName, &ObjHandle);

         
    /* List all SmartList objects */
    objType = OBJECT_SMARTLIST;
    sts = EssOtlListObjects(hOutline, objType, 
								&Count, &ObjHandles);

		/* Free resources */
    if(ObjHandles)
        EssFree (hInst, ObjHandles);

    /* Save */
    SaveOutline(hOutline);

    /* Find objects */
    objName = "SList1";
    sts = EssOtlFindObject(hOutline, objType, objName, 
											&hObjHandle);

     /* Delete objects */
    hSmartList = (ESS_HSMARTLIST_T)hObjHandle;
    sts = EssOtlDeleteObject(hOutline, hSmartList);
    SaveOutline(hOutline);

    if(ObjHandles)
        EssFree (hInst, ObjHandles);

    /* Unlock objects */
    sts = EssUnlockObject(hCtx, Object.ObjType,
            Object.AppName, Object.DbName, Object.FileName);

		/* Close outline */
    sts = EssOtlCloseOutline(hOutline);
}
      

関連トピック