2012-12-11 2 views
0

, 당신이 옆 Rename, Move to iCloud, Move To, Duplicate, Lock 마지막 Browse All Versions 등 항목의 몇 가지를 보여줍니다 메뉴를 얻을 파일 이름에 약간의 드롭 다운을 클릭합니다. 코코아 - 버전을 지원하는 메뉴 추가? (텍스트 편집기에서처럼) 텍스트 편집기에서

TextEdit

나는이 메뉴를 지원하는 방법 궁금하네요? 내 응용 프로그램에서 공개 표시기가 있지만 그것을 클릭하는 메뉴가 없습니다. 코드를 통해이 메뉴를 추가해야합니까? 그렇다면 어떻게 든 창에 연결해야한다고 가정하고 있지만 그렇게 할 적절한 장소가 보이지 않습니다. 내가 누락 된 것에 대한 제안은? 문서 기반 응용 프로그램에서 NSDocument 서브 클래스를 사용하는 경우

SQL

+0

공개 삼각형을 거기에 넣었습니까? 나는 툴바 아이콘을 좋아한다! – trojanfoe

+0

@ 트로이 목마 나는 공개 삼각형을 추가하지 않았다. 나는 버전 지원을 추가하기 위해 일하고 있었고 일단 NSDocument 객체에 대해'preservesVersions'와'autosavesInPlace' 모두를 반환하면 공개 삼각형이 나타납니다. 아이콘에 대한 의견을 주셔서 감사합니다, 나는 디자이너에게 그것을 전할 것입니다! – Kyle

답변

0

알아 냈어.

- (void)menuNeedsUpdate:(NSMenu *)menu

나는이 방법을 오버라이드 (override) 할 필요가 없었다, 그래서 그것을 제거 : 나는 무시했다. 내가 그렇게하자마자 메뉴가 작동하기 시작했습니다.

3

당신은 "무료"이 기능을 얻을. 만큼 당신이 구현 한대로 모든 것이 여기에 설명 :

http://developer.apple.com/library/mac/#documentation/DataManagement/Conceptual/DocBasedAppProgrammingGuideForOSX/StandardBehaviors/StandardBehaviors.html

이 ... 버전이 직접 구현하여 영향을받는 것 같이 "자동적으로"작업을 자동으로 저장해야합니다. 고려해야 할

것들 :

  1. 타겟팅하는 최소 OS 버전은 무엇입니까?
  2. Window의 제목 표시 줄과 관련된 사항을 사용자 정의하고 있습니까?
  3. NSDocument 서브 클래스는 현대적인 (비 권장) 읽기/쓰기 메소드를 구현합니까, 아니면 "오래되었거나 펑키 한"것을하고 있습니까?
+0

1. 나는 10.7 + 을 지원합니다. 2. 제목 표시 줄에 어떤 사용자 지정도하지 않습니다. 3. 나는 현대적인 서브 클래 싱 방법을 믿는다. : - (NSData *) dataOfType : (NSString *) typeName 오류 : (NSError **) outError'와'- (BOOL) readFromFileWrapper : (NSFileWrapper *) fileWrapper ofType : (NSString *) typeName 오류 : (NSError **) outError'. 나는이 문서를 읽고 모든 것에 대한 지원을 추가했다는 것을 확신한다. 나는이 시점에서 기본 텍스트 편집 응용 프로그램을 만들고 버전 작업을 할 수 있는지 확인하려고합니다. – Kyle

+0

위의 대답을 보면, "제목 표시 줄의 메뉴를 망쳐 놓는 것"이 ​​"창 제목 표시 줄과 관련이있는 것을 사용자 정의하는 것"으로 간주됩니다. :-) 당신이 그것을 발견하게되어 기쁘다. 질문을 닫으려면 답변을 수락 한 것으로 표시하십시오. –

관련 문제