2011-11-30 3 views
0

사용자가 키보드를 누르거나 F2를 누르면 편집 모드로 전환 할 수없는 특정 모양 (TasksGroupShape)으로 매우 간단한 DSL을 만들었습니다."편집 모드"에서 입력 할 도형을 가져올 수 없습니다. 왜?

이 모양은 Name이라는 속성에 연결된 간단한 텍스트 데코레이터 (Name)가있는 도형입니다.

모델 요소는 TasksGroup이라고하고 이름이 도메인 속성 인 NamedElement (abstract)라는 다른 도메인 클래스에서 상속됩니다.

이 속성은 "Is Element Name"이 true로 설정된 간단한 문자열입니다.

이것은 다른 DSL 프로젝트에서 사용한 단순한 디자인으로 잘 작동합니다.

아마이 문제가 있어도 문제가 어디서 발생하는지 알 수 없습니다.

나는 뭔가를 잊고 있습니까? 무엇이 잘못되었는지를 알기 위해 중단 점을 둘 위치에 대한 조언이 있습니까?

답변

0

raskal 덕분에 DSL Tools MSDN 포럼에서이 답변을 찾을 수있었습니다.

문제는 셰이프에 두 개의 텍스트 데코레이터가 정의되어 있고, 하나는 "작업 그룹"이고 다른 하나는 "이름"(이 하나는 Name 속성에 연결됨)이 순서대로라는 점입니다.

"이름"데코레이터가 목록의 첫 번째 데코레이터가되도록 "작업 그룹"데코레이터를 다시 만들면 DSL이 올바르게 작동하기 시작합니다.

원하는 동작을 얻으려면 해당 텍스트 데코레이터가 첫 번째 것이어야합니다.

관련 문제