메타인포 편집하기

프로젝트 생성 또는 오브젝트 신규 생성 시 설정하지 않고 넘어갔던 오브젝트 메타인포 각 항목에 대해 살펴봅니다. Project Explorer 탭에서 MetaInfo 항목 아래 오브젝트를 선택 후 더블클릭하거나 컨텍스트 메뉴에서 [Edit] 항목 선택해 메타인포 설정값을 편집할 수 있습니다.


설명

1

MetaInfo 항목 아래에 오브젝트를 선택합니다.

선택한 오브젝트에 따라 관련 정보를 편집할 수 있습니다.

2

선택한 오브젝트의 속성, 메소드, 이벤트, CSS, Status 메타인포 정보를 편집합니다.

메타인포 편집 (속성, 메소드, 이벤트) 항목을 참고하세요.

3

Edit Common Information 창을 띄우고 모듈 프로젝트 내에서 공통으로 사용하는 Enum, Unit, Refresh 정보를 편집합니다.

4

선택한 오브젝트의 메타인포 정보를 편집합니다.

오브젝트 메타인포 편집

오브젝트 생성 시 자동 설정되는 항목

아래 항목은 오브젝트 생성 시 적용된 항목으로 수정할 수 없습니다.

설정할 수 있는 항목

항목

설명

shorttypename

오브젝트의 TypeName을 지정합니다.

모듈 설치 시 TypeDefinition에서 ID, PrefixID로 사용합니다.

기본값은 Object ID와 같은 값으로 설정됩니다.

csscontrolname

오브젝트 컨트롤의 CSS TypeName을 지정합니다.

XCSS 파일 편집 시 선택자로 추가할 수 있는 컴포넌트 목록으로 노출됩니다.

기본값은 [Object ID]_Control 형식으로 설정됩니다.

subgroup

컴포넌트의 하위 유형을 지정합니다.

컴포지트 컴포넌트의 경우에는 기본값(Component)로 설정됩니다.

csspseudo

오브젝트의 Status 정보 사용 여부를 지정합니다.

Composite Component, Visible Object은 생성 시 true값으로 설정됩니다.

container

하위에 다른 오브젝트를 포함할 수 있는지 여부를 지정합니다.

tabstop

TAB 키를 사용해 오브젝트에 포커스를 이동할지 여부를 지정합니다.

cssstyle

오브젝트, 오브젝트 컨트롤을 XCSS 파일 편집 시 선택자로 사용할지 여부를 지정합니다.

false로 설정 시에는 컴포넌트 목록에 노출되지 않습니다.

defaultwidth

모듈 등록 후 화면에 컴포넌트 배치 시 기본 너비를 지정합니다.

에뮬레이터 실행 시 기본 너비로도 반영됩니다.

defaultheight

모듈 등록 후 화면에 컴포넌트 배치 시 기본 높이를 지정합니다.

에뮬레이터 실행 시 기본 높이로도 반영됩니다.

registration

오브젝트 등록 가능 여부를 지정합니다.

"deny"로 설정한 경우에는 모듈 설치 시 오브젝트가 표시되지 않으며 등록할 수 없습니다.

edittype

오브젝트 편집 유형을 설정합니다.

Menu 컴포넌트 등을 상속받아 생성한 컴포넌트에서 상속받은 정보를 사용합니다.

popup

실행 시 팝업 형태로 표시되는 컴포넌트를 설정합니다.

PopupMenu, PopupDiv 컴포넌트 등을 상속받아 생성한 컴포넌트 또는 팝업 형태로 표시되는 컴포넌트의 경우 true로 설정합니다.

edittypecomponent

텍스트 편집 영역의 특성을 설정합니다.

Edit, TextArea 컴포넌트 등을 상속받아 생성한 컴포넌트 또는 텍스트 편집 영역을 가지는 컴포넌트의 경우 설정할 수 있습니다.

dblclickevent

디자인 탭에서 컴포넌트를 마우스 더블 클릭 시 생성하거나 이동할 이벤트 함수를 지정합니다.

requirement

생성한 오브젝트의 지원 범위를 설정합니다.

실제 동작에는 영향을 미치지 않습니다.

finalclass

생성한 오브젝트를 다른 오브젝트 생성 시 상속받을 수 있는지 여부를 설정합니다.

false로 설정한 경우 오브젝트 유형에 따라 새로운 오브젝트 생성 시 상속받을 수 있는 오브젝트 목록에 표시됩니다.

icon

모듈 설치 후 넥사크로 스튜디오에 표시할 아이콘을 지정합니다.

모듈 오브젝트에 아이콘 설정하고 배포하기 항목을 참고하세요.

contents

콘텐츠 에디터 사용 여부를 지정합니다.

메타인포 contents 속성으로 설정하기 항목을 참고하세요.

Common Information 메타인포 편집

항목 및 아이템 추가

Edit Common Information 창에서 [+] 버튼을 클릭하면 항목을 추가할 수 있는 창이 표시됩니다.

Enum

항목

설명

ID

오브젝트 속성의 Enuminfo 또는 Enuminfo2로 지정할 값을 설정합니다.

Composit

2개 이상 항목을 선택할 수 있는지 여부를 설정합니다.

true 값 설정 시에는 Delimiter로 설정된 값에 따라 속성값을 설정합니다.

Delimiter

Composit 값이 true인 경우 2개 이상 항목 선택 시 구분자를 설정합니다.

Composit 값이 true인 경우에는 넥사크로 스튜디오에서 오브젝트의 속성 선택 시 2개 이상의 항목을 선택할 수 있도록 체크박스가 표시됩니다. 선택한 값은 Delimiter로 설정한 구분자를 사용해 속성값을 처리합니다. 아래 예는 Edit 컴포넌트의 inputtype 속성 선택 시 Enum 정보가 표시되는 화면입니다.

추가한 항목 선택 후 컨텍스트 메뉴에서 [Add] 항목을 선택하면 아이템을 추가할 수 있습니다.

항목

설명

Name

속성값으로 사용할 값을 설정합니다.

Unit

항목

설명

ID

오브젝트 속성의 UnitInfo로 지정할 값을 설정합니다.

추가한 항목 선택 후 컨텍스트 메뉴에서 [Add] 항목을 선택하면 아이템을 추가할 수 있습니다.

항목

설명

Symbol

속성창에 표시할 단위값을 설정합니다.

Minimum Limit

최소값을 설정합니다.

Maximum Limit

최대값을 설정합니다.

Refresh

항목

설명

ID

오브젝트 속성의 RefreshInfo로 지정할 값을 설정합니다.

추가한 항목 선택 후 컨텍스트 메뉴에서 [Add] 항목을 선택하면 아이템을 추가할 수 있습니다. 오브젝트가 상속받았거나 추가된 속성 중에서 아이템을 적용할 수 있으며 적용한 아이템의 순서를 조정할 수 있습니다.

예를 들어 Combo 컴포넌트의 메타인포 정보에서 index 속성의 refreshinfo 항목값은 "selectitem"입니다. selectitem 항목은 아래와 같이 구성되어 있습니다.

<RefreshInfo id="selectitem">
	<Property name="text" />
	<Property name="value" />
	<Property name="index" />
</RefreshInfo>

넥사크로 스튜디오 속성창에서 index 속성값을 수정하게 되면 refreshinfo에 지정된 순서에 따라 text, value, index 순으로 속성값을 갱신합니다. 또한 Generate 코드에서도 refreshinfo에 지정된 순서에 따라 set_[value] 함수를 호출합니다.

obj = new Combo("Combo00",...;
obj.set_taborder("7");
obj.set_text("Combo00");
obj.set_value("3");
obj.set_index("-1");
this.addChild(obj.name, obj);

Display

속성을 특정값으로 설정 시 편집할 수 없는 상태로 처리할 수 있습니다.

항목

설명

ID

오브젝트 속성의 DisplayInfo로 지정할 값을 설정합니다.

Delimeter

Compare value 값 구분자로 사용할 문자를 설정합니다.

추가한 항목 ID 선택 후 컨텍스트 메뉴에서 [Add] 항목을 선택하면 Compare Value를 추가할 수 있습니다.

항목

설명

Value

Delimeter로 설정한 값을 구분자로 처리할 속성값을 기재합니다.

값이 입력되지 않는 상태는 "@empty"값을 사용합니다.

"@empty,default"로 입력했다면 속성값이 빈값이거나 "default"인 경우 처리됩니다.

추가한 항목 Value 선택 후 컨텍스트 메뉴에서 [Add] 항목을 선택하면 readonly로 처리할 아이템을 추가할 수 있습니다.

예를 들어 Layout 오브젝트의 메타인포 정보에서 type 속성의 displayinfo 항목값은 "layouttype"입니다. layouttype 항목은 아래와 같이 구성되어 있습니다.

<DisplayInfo id="layouttype" delimiter=",">
    <Value compare="@empty,default">
      <Property name="spacing" readonly="true" />
      <Property name="horizontalgap" readonly="true" />
      <Property name="verticalgap" readonly="true" />
      <Property name="flexwrap" readonly="true" />
      <Property name="flexmainaxisalign" readonly="true" />
      <Property name="flexcrossaxisalign" readonly="true" />
      <Property name="flexcrossaxiswrapalign" readonly="true" />
      <Property name="tabletemplate" readonly="true" />
      <Property name="tabletemplatearea" readonly="true" />
      <Property name="tabledirection" readonly="true" />
      <Property name="tablecellalign" readonly="true" />
      <Property name="tablecellincompalign" readonly="true" />
    </Value>
    <Value compare="horizontal,vertical">
      <Property name="stepindex" readonly="true" />
...

넥사크로 스튜디오 속성창에서 type 속성값을 수정하게 되면 DisplayInfo에서 compare value 값을 확인하고 일치하는 속성 항목은 비활성화됩니다.

기존 항목을 복사해 수정하기

선택한 오브젝트의 속성을 선택하고 Enuminfo, Enuminfo2, UnitInfo, Refresh Properties 항목값을 선택할 때 새로운 항목을 추가할 수 있습니다. 이때 기존 항목을 복사해서 수정해 적용할 수 있습니다.

Enum, Unit, Refresh 모두 같은 방식으로 동작하며 아래에서는 Enum 대상으로 설명합니다.

1

속성 선택 후 추가할 항목에 있는 [+] 버튼을 클릭합니다.

2

펼쳐진 목록에서 [Inheritance]를 선택합니다.

3

Add Enum Information 창에서 [+] 버튼을 클릭하고 기존 항목을 선택합니다.

4

ID와 아이템을 수정한 후 저장합니다.

5

수정한 항목은 Common Information 창에서 확인할 수 있습니다.