diff --git a/Frameworks/AppKit/Browser.environment/AppKit.sj b/Frameworks/AppKit/Browser.environment/AppKit.sj index b28abd3bb..f90111501 100644 --- a/Frameworks/AppKit/Browser.environment/AppKit.sj +++ b/Frameworks/AppKit/Browser.environment/AppKit.sj @@ -74461,7 +74461,7 @@ var meta_class = the_class.isa;class_addMethods(the_class, [new objj_method(sel_ ,["void"])]); } -p;12;CPTextView.jt;236961;@STATIC;1.0;i;8;CPText.ji;14;CPPasteboard.ji;14;CPColorPanel.ji;15;CPFontManager.ji;15;CPTextStorage.ji;17;CPLayoutManager.ji;18;CPParagraphStyle.ji;17;CPTextContainer.ji;14;_CPRTFParser.ji;16;_CPRTFProducer.jt;236743;objj_executeFile("CPText.j", YES);objj_executeFile("CPPasteboard.j", YES);objj_executeFile("CPColorPanel.j", YES);objj_executeFile("CPFontManager.j", YES);objj_executeFile("CPTextStorage.j", YES);objj_executeFile("CPLayoutManager.j", YES);objj_executeFile("CPParagraphStyle.j", YES);objj_executeFile("CPTextContainer.j", YES);objj_executeFile("_CPRTFParser.j", YES);objj_executeFile("_CPRTFProducer.j", YES);; +p;12;CPTextView.jt;238200;@STATIC;1.0;i;8;CPText.ji;14;CPPasteboard.ji;14;CPColorPanel.ji;15;CPFontManager.ji;15;CPTextStorage.ji;17;CPLayoutManager.ji;18;CPParagraphStyle.ji;17;CPTextContainer.ji;14;_CPRTFParser.ji;16;_CPRTFProducer.jt;237982;objj_executeFile("CPText.j", YES);objj_executeFile("CPPasteboard.j", YES);objj_executeFile("CPColorPanel.j", YES);objj_executeFile("CPFontManager.j", YES);objj_executeFile("CPTextStorage.j", YES);objj_executeFile("CPLayoutManager.j", YES);objj_executeFile("CPParagraphStyle.j", YES);objj_executeFile("CPTextContainer.j", YES);objj_executeFile("_CPRTFParser.j", YES);objj_executeFile("_CPRTFProducer.j", YES);; ; ; ; @@ -75087,7 +75087,31 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function var ___r1, ___r2; } -,["void","id"]), new objj_method(sel_getUid("stringValue"), function $CPTextView__stringValue(self, _cmd) +,["void","id"]), new objj_method(sel_getUid("_registeringUndoManager"), function $CPTextView___registeringUndoManager(self, _cmd) +{ + return self._allowsUndo ? ((___r1 = (self.isa.method_msgSend["window"] || _objj_forward)(self, "window")), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["undoManager"] || _objj_forward)(___r1, "undoManager")) : nil; + var ___r1; +} + +,["CPUndoManager"]), new objj_method(sel_getUid("respondsToSelector:"), function $CPTextView__respondsToSelector_(self, _cmd, aSelector) +{ + if (!self._allowsUndo && (aSelector === sel_getUid("undo:") || aSelector === sel_getUid("redo:"))) + return NO; + return (objj_getClass("CPTextView").super_class.method_dtable["respondsToSelector:"] || _objj_forward)(self, "respondsToSelector:", aSelector); +} + +,["BOOL","SEL"]), new objj_method(sel_getUid("validateUserInterfaceItem:"), function $CPTextView__validateUserInterfaceItem_(self, _cmd, anItem) +{ + var action = (anItem == null ? anItem : (anItem.isa.method_msgSend["action"] || _objj_forward)(anItem, "action")); + if (action === sel_getUid("undo:")) + return ((___r1 = ((___r2 = (self.isa.method_msgSend["window"] || _objj_forward)(self, "window")), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["undoManager"] || _objj_forward)(___r2, "undoManager"))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["canUndo"] || _objj_forward)(___r1, "canUndo")); + if (action === sel_getUid("redo:")) + return ((___r1 = ((___r2 = (self.isa.method_msgSend["window"] || _objj_forward)(self, "window")), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["undoManager"] || _objj_forward)(___r2, "undoManager"))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["canRedo"] || _objj_forward)(___r1, "canRedo")); + return YES; + var ___r1, ___r2; +} + +,["BOOL","id"]), new objj_method(sel_getUid("stringValue"), function $CPTextView__stringValue(self, _cmd) { return self._textStorage._string; } @@ -75207,10 +75231,10 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function ,["void","CPRange"]), new objj_method(sel_getUid("_replaceCharactersInRange:withAttributedString:selectionRange:"), function $CPTextView___replaceCharactersInRange_withAttributedString_selectionRange_(self, _cmd, aRange, aString, selectionRange) { - ((___r1 = ((___r2 = ((___r3 = (self.isa.method_msgSend["window"] || _objj_forward)(self, "window")), ___r3 == null ? ___r3 : (___r3.isa.method_msgSend["undoManager"] || _objj_forward)(___r3, "undoManager"))), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(___r2, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["_replaceCharactersInRange:withAttributedString:selectionRange:"] || _objj_forward)(___r1, "_replaceCharactersInRange:withAttributedString:selectionRange:", CPMakeRange(aRange.location, (aString == null ? aString : (aString.isa.method_msgSend["length"] || _objj_forward)(aString, "length"))), ((___r2 = self._textStorage), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["attributedSubstringFromRange:"] || _objj_forward)(___r2, "attributedSubstringFromRange:", CPMakeRangeCopy(aRange))), CPMakeRangeCopy(self._selectionRange))); + ((___r1 = ((___r2 = (self.isa.method_msgSend["_registeringUndoManager"] || _objj_forward)(self, "_registeringUndoManager")), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(___r2, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["_replaceCharactersInRange:withAttributedString:selectionRange:"] || _objj_forward)(___r1, "_replaceCharactersInRange:withAttributedString:selectionRange:", CPMakeRange(aRange.location, (aString == null ? aString : (aString.isa.method_msgSend["length"] || _objj_forward)(aString, "length"))), ((___r2 = self._textStorage), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["attributedSubstringFromRange:"] || _objj_forward)(___r2, "attributedSubstringFromRange:", CPMakeRangeCopy(aRange))), CPMakeRangeCopy(self._selectionRange))); ((___r1 = self._textStorage), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["replaceCharactersInRange:withAttributedString:"] || _objj_forward)(___r1, "replaceCharactersInRange:withAttributedString:", aRange, aString)); (self.isa.method_msgSend["_fixupReplaceForRange:"] || _objj_forward)(self, "_fixupReplaceForRange:", selectionRange); - var ___r1, ___r2, ___r3; + var ___r1, ___r2; } ,["void","CPRange","CPString","CPRange"]), new objj_method(sel_getUid("insertText:"), function $CPTextView__insertText_(self, _cmd, aString) @@ -75223,7 +75247,7 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function aString = ((___r1 = (CPAttributedString.isa.method_msgSend["alloc"] || _objj_forward)(CPAttributedString, "alloc")), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["initWithString:attributes:"] || _objj_forward)(___r1, "initWithString:attributes:", aString, self._typingAttributes)); else if (!(self.isa.method_msgSend["isRichText"] || _objj_forward)(self, "isRichText")) aString = ((___r1 = (CPAttributedString.isa.method_msgSend["alloc"] || _objj_forward)(CPAttributedString, "alloc")), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["initWithString:attributes:"] || _objj_forward)(___r1, "initWithString:attributes:", string, self._typingAttributes)); - var undoManager = ((___r1 = (self.isa.method_msgSend["window"] || _objj_forward)(self, "window")), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["undoManager"] || _objj_forward)(___r1, "undoManager")); + var undoManager = (self.isa.method_msgSend["_registeringUndoManager"] || _objj_forward)(self, "_registeringUndoManager"); (undoManager == null ? undoManager : (undoManager.isa.method_msgSend["setActionName:"] || _objj_forward)(undoManager, "setActionName:", "Replace/insert text")); ((___r1 = (undoManager == null ? undoManager : (undoManager.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(undoManager, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["_replaceCharactersInRange:withAttributedString:selectionRange:"] || _objj_forward)(___r1, "_replaceCharactersInRange:withAttributedString:selectionRange:", CPMakeRange(self._selectionRange.location, (aString == null ? aString : (aString.isa.method_msgSend["length"] || _objj_forward)(aString, "length"))), ((___r2 = self._textStorage), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["attributedSubstringFromRange:"] || _objj_forward)(___r2, "attributedSubstringFromRange:", CPMakeRangeCopy(self._selectionRange))), CPMakeRangeCopy(self._selectionRange))); (self.isa.method_msgSend["willChangeValueForKey:"] || _objj_forward)(self, "willChangeValueForKey:", "objectValue"); @@ -75921,7 +75945,7 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function if (!(self.isa.method_msgSend["_didBeginEditing"] || _objj_forward)(self, "_didBeginEditing") || !(self.isa.method_msgSend["shouldChangeTextInRange:replacementString:"] || _objj_forward)(self, "shouldChangeTextInRange:replacementString:", changedRange, "")) return; changedRange = CPIntersectionRange(CPMakeRange(0, ((___r1 = self._layoutManager), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["numberOfCharacters"] || _objj_forward)(___r1, "numberOfCharacters"))), changedRange); - ((___r1 = ((___r2 = ((___r3 = self._window), ___r3 == null ? ___r3 : (___r3.isa.method_msgSend["undoManager"] || _objj_forward)(___r3, "undoManager"))), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(___r2, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["_replaceCharactersInRange:withAttributedString:selectionRange:"] || _objj_forward)(___r1, "_replaceCharactersInRange:withAttributedString:selectionRange:", CPMakeRange(changedRange.location, 0), ((___r2 = self._textStorage), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["attributedSubstringFromRange:"] || _objj_forward)(___r2, "attributedSubstringFromRange:", CPMakeRangeCopy(changedRange))), CPMakeRangeCopy(self._selectionRange))); + ((___r1 = ((___r2 = (self.isa.method_msgSend["_registeringUndoManager"] || _objj_forward)(self, "_registeringUndoManager")), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(___r2, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["_replaceCharactersInRange:withAttributedString:selectionRange:"] || _objj_forward)(___r1, "_replaceCharactersInRange:withAttributedString:selectionRange:", CPMakeRange(changedRange.location, 0), ((___r2 = self._textStorage), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["attributedSubstringFromRange:"] || _objj_forward)(___r2, "attributedSubstringFromRange:", CPMakeRangeCopy(changedRange))), CPMakeRangeCopy(self._selectionRange))); (self.isa.method_msgSend["willChangeValueForKey:"] || _objj_forward)(self, "willChangeValueForKey:", "objectValue"); ((___r1 = self._textStorage), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["deleteCharactersInRange:"] || _objj_forward)(___r1, "deleteCharactersInRange:", CPMakeRangeCopy(changedRange))); (self.isa.method_msgSend["didChangeValueForKey:"] || _objj_forward)(self, "didChangeValueForKey:", "objectValue"); @@ -75932,7 +75956,7 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function (self.isa.method_msgSend["sizeToFit"] || _objj_forward)(self, "sizeToFit"); (self.isa.method_msgSend["scrollRangeToVisible:"] || _objj_forward)(self, "scrollRangeToVisible:", CPMakeRange(changedRange.location, 0)); self._stickyXLocation = self._caret._rect.origin.x; - var ___r1, ___r2, ___r3; + var ___r1, ___r2; } ,["void","CPRange"]), new objj_method(sel_getUid("cancelOperation:"), function $CPTextView__cancelOperation_(self, _cmd, sender) @@ -76080,10 +76104,10 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function ((___r1 = self._textStorage), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["setFont:"] || _objj_forward)(___r1, "setFont:", self._font)); } var currentAttributes = ((___r1 = self._textStorage), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["attributesAtIndex:effectiveRange:"] || _objj_forward)(___r1, "attributesAtIndex:effectiveRange:", range.location, nil)) || self._typingAttributes; - ((___r1 = ((___r2 = ((___r3 = (self.isa.method_msgSend["window"] || _objj_forward)(self, "window")), ___r3 == null ? ___r3 : (___r3.isa.method_msgSend["undoManager"] || _objj_forward)(___r3, "undoManager"))), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(___r2, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["setFont:range:"] || _objj_forward)(___r1, "setFont:range:", (currentAttributes == null ? currentAttributes : (currentAttributes.isa.method_msgSend["objectForKey:"] || _objj_forward)(currentAttributes, "objectForKey:", CPFontAttributeName)) || (self.isa.method_msgSend["font"] || _objj_forward)(self, "font"), CPMakeRangeCopy(range))); + ((___r1 = ((___r2 = (self.isa.method_msgSend["_registeringUndoManager"] || _objj_forward)(self, "_registeringUndoManager")), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(___r2, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["setFont:range:"] || _objj_forward)(___r1, "setFont:range:", (currentAttributes == null ? currentAttributes : (currentAttributes.isa.method_msgSend["objectForKey:"] || _objj_forward)(currentAttributes, "objectForKey:", CPFontAttributeName)) || (self.isa.method_msgSend["font"] || _objj_forward)(self, "font"), CPMakeRangeCopy(range))); ((___r1 = self._textStorage), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["addAttribute:value:range:"] || _objj_forward)(___r1, "addAttribute:value:range:", CPFontAttributeName, font, CPMakeRangeCopy(range))); ((___r1 = self._layoutManager), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["_validateLayoutAndGlyphs"] || _objj_forward)(___r1, "_validateLayoutAndGlyphs")); - var ___r1, ___r2, ___r3; + var ___r1, ___r2; } ,["void","CPFont","CPRange"]), new objj_method(sel_getUid("changeFont:"), function $CPTextView__changeFont_(self, _cmd, sender) @@ -76092,7 +76116,7 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function oldFont, attributes, scrollRange = CPMakeRange(CPMaxRange(self._selectionRange), 0), - undoManager = ((___r1 = (self.isa.method_msgSend["window"] || _objj_forward)(self, "window")), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["undoManager"] || _objj_forward)(___r1, "undoManager")); + undoManager = (self.isa.method_msgSend["_registeringUndoManager"] || _objj_forward)(self, "_registeringUndoManager"); (undoManager == null ? undoManager : (undoManager.isa.method_msgSend["beginUndoGrouping"] || _objj_forward)(undoManager, "beginUndoGrouping")); if ((self.isa.method_msgSend["isRichText"] || _objj_forward)(self, "isRichText")) { @@ -76143,7 +76167,7 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function ,["void","CPColor"]), new objj_method(sel_getUid("setTextColor:range:"), function $CPTextView__setTextColor_range_(self, _cmd, aColor, range) { var currentAttributes = ((___r1 = self._textStorage), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["attributesAtIndex:effectiveRange:"] || _objj_forward)(___r1, "attributesAtIndex:effectiveRange:", range.location, nil)) || self._typingAttributes; - ((___r1 = ((___r2 = ((___r3 = (self.isa.method_msgSend["window"] || _objj_forward)(self, "window")), ___r3 == null ? ___r3 : (___r3.isa.method_msgSend["undoManager"] || _objj_forward)(___r3, "undoManager"))), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(___r2, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["setTextColor:range:"] || _objj_forward)(___r1, "setTextColor:range:", (currentAttributes == null ? currentAttributes : (currentAttributes.isa.method_msgSend["objectForKey:"] || _objj_forward)(currentAttributes, "objectForKey:", CPForegroundColorAttributeName)) || self._textColor, CPMakeRangeCopy(range))); + ((___r1 = ((___r2 = (self.isa.method_msgSend["_registeringUndoManager"] || _objj_forward)(self, "_registeringUndoManager")), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(___r2, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["setTextColor:range:"] || _objj_forward)(___r1, "setTextColor:range:", (currentAttributes == null ? currentAttributes : (currentAttributes.isa.method_msgSend["objectForKey:"] || _objj_forward)(currentAttributes, "objectForKey:", CPForegroundColorAttributeName)) || self._textColor, CPMakeRangeCopy(range))); if (!CPEmptyRange(range)) { if (aColor) @@ -76154,7 +76178,7 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function else ((___r1 = self._typingAttributes), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["setObject:forKey:"] || _objj_forward)(___r1, "setObject:forKey:", aColor, CPForegroundColorAttributeName)); ((___r1 = self._layoutManager), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["textStorage:edited:range:changeInLength:invalidatedRange:"] || _objj_forward)(___r1, "textStorage:edited:range:changeInLength:invalidatedRange:", self._textStorage, 0, CPMakeRangeCopy(range), 0, CPMakeRangeCopy(range))); - var ___r1, ___r2, ___r3; + var ___r1, ___r2; } ,["void","CPColor","CPRange"]), new objj_method(sel_getUid("bold:"), function $CPTextView__bold_(self, _cmd, sender) @@ -76203,7 +76227,7 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function (newStyle == null ? newStyle : (newStyle.isa.method_msgSend["setAlignment:"] || _objj_forward)(newStyle, "setAlignment:", anAlignment)); if (self._selectionRange.length > 0) { - var undoManager = ((___r1 = (self.isa.method_msgSend["window"] || _objj_forward)(self, "window")), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["undoManager"] || _objj_forward)(___r1, "undoManager")); + var undoManager = (self.isa.method_msgSend["_registeringUndoManager"] || _objj_forward)(self, "_registeringUndoManager"); if (undoManager) { ((___r1 = (undoManager == null ? undoManager : (undoManager.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(undoManager, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["_setAlignment:"] || _objj_forward)(___r1, "_setAlignment:", (style == null ? style : (style.isa.method_msgSend["alignment"] || _objj_forward)(style, "alignment")))); @@ -79690,7 +79714,7 @@ var meta_class = the_class.isa;class_addIvars(the_class, [new objj_ivar("_window ,["void"])]); } -p;10;CPWindow.jt;212709;@STATIC;1.0;I;25;Foundation/CPCountedSet.jI;33;Foundation/CPNotificationCenter.jI;26;Foundation/CPUndoManager.ji;12;CGGeometry.ji;13;CPAnimation.ji;10;CPCursor.ji;14;CPDragServer.ji;9;CPEvent.ji;18;CPPlatformWindow.ji;22;CPPlatformWindow+DOM.ji;13;CPResponder.ji;10;CPScreen.ji;8;CPText.ji;16;CPTrackingArea.ji;8;CPView.ji;20;CPWindow_Constants.ji;31;_CPBorderlessBridgeWindowView.ji;25;_CPBorderlessWindowView.ji;23;_CPDocModalWindowView.ji;18;_CPHUDWindowView.ji;20;_CPModalWindowView.ji;22;_CPPopoverWindowView.ji;21;_CPShadowWindowView.ji;23;_CPStandardWindowView.ji;22;_CPToolTipWindowView.jt;212104;objj_executeFile("Foundation/CPCountedSet.j", NO);objj_executeFile("Foundation/CPNotificationCenter.j", NO);objj_executeFile("Foundation/CPUndoManager.j", NO);objj_executeFile("CGGeometry.j", YES);objj_executeFile("CPAnimation.j", YES);objj_executeFile("CPCursor.j", YES);objj_executeFile("CPDragServer.j", YES);objj_executeFile("CPEvent.j", YES);objj_executeFile("CPPlatformWindow.j", YES);objj_executeFile("CPPlatformWindow+DOM.j", YES);objj_executeFile("CPResponder.j", YES);objj_executeFile("CPScreen.j", YES);objj_executeFile("CPText.j", YES);objj_executeFile("CPTrackingArea.j", YES);objj_executeFile("CPView.j", YES);objj_executeFile("CPWindow_Constants.j", YES);objj_executeFile("_CPBorderlessBridgeWindowView.j", YES);objj_executeFile("_CPBorderlessWindowView.j", YES);objj_executeFile("_CPDocModalWindowView.j", YES);objj_executeFile("_CPHUDWindowView.j", YES);objj_executeFile("_CPModalWindowView.j", YES);objj_executeFile("_CPPopoverWindowView.j", YES);objj_executeFile("_CPShadowWindowView.j", YES);objj_executeFile("_CPStandardWindowView.j", YES);objj_executeFile("_CPToolTipWindowView.j", YES);{var the_typedef = objj_allocateTypeDef("_CPWindowFullPlatformWindowSession"); +p;10;CPWindow.jt;213239;@STATIC;1.0;I;25;Foundation/CPCountedSet.jI;33;Foundation/CPNotificationCenter.jI;26;Foundation/CPUndoManager.ji;12;CGGeometry.ji;13;CPAnimation.ji;10;CPCursor.ji;14;CPDragServer.ji;9;CPEvent.ji;18;CPPlatformWindow.ji;22;CPPlatformWindow+DOM.ji;13;CPResponder.ji;10;CPScreen.ji;8;CPText.ji;16;CPTrackingArea.ji;8;CPView.ji;20;CPWindow_Constants.ji;31;_CPBorderlessBridgeWindowView.ji;25;_CPBorderlessWindowView.ji;23;_CPDocModalWindowView.ji;18;_CPHUDWindowView.ji;20;_CPModalWindowView.ji;22;_CPPopoverWindowView.ji;21;_CPShadowWindowView.ji;23;_CPStandardWindowView.ji;22;_CPToolTipWindowView.jt;212634;objj_executeFile("Foundation/CPCountedSet.j", NO);objj_executeFile("Foundation/CPNotificationCenter.j", NO);objj_executeFile("Foundation/CPUndoManager.j", NO);objj_executeFile("CGGeometry.j", YES);objj_executeFile("CPAnimation.j", YES);objj_executeFile("CPCursor.j", YES);objj_executeFile("CPDragServer.j", YES);objj_executeFile("CPEvent.j", YES);objj_executeFile("CPPlatformWindow.j", YES);objj_executeFile("CPPlatformWindow+DOM.j", YES);objj_executeFile("CPResponder.j", YES);objj_executeFile("CPScreen.j", YES);objj_executeFile("CPText.j", YES);objj_executeFile("CPTrackingArea.j", YES);objj_executeFile("CPView.j", YES);objj_executeFile("CPWindow_Constants.j", YES);objj_executeFile("_CPBorderlessBridgeWindowView.j", YES);objj_executeFile("_CPBorderlessWindowView.j", YES);objj_executeFile("_CPDocModalWindowView.j", YES);objj_executeFile("_CPHUDWindowView.j", YES);objj_executeFile("_CPModalWindowView.j", YES);objj_executeFile("_CPPopoverWindowView.j", YES);objj_executeFile("_CPShadowWindowView.j", YES);objj_executeFile("_CPStandardWindowView.j", YES);objj_executeFile("_CPToolTipWindowView.j", YES);{var the_typedef = objj_allocateTypeDef("_CPWindowFullPlatformWindowSession"); objj_registerTypeDef(the_typedef); }{var the_protocol = objj_allocateProtocol("CPWindowDelegate"); var aProtocol = objj_getProtocol("CPObject"); @@ -81385,12 +81409,18 @@ default: ,["void","id"]), new objj_method(sel_getUid("validateUserInterfaceItem:"), function $CPWindow__validateUserInterfaceItem_(self, _cmd, anItem) { - if ((anItem == null ? anItem : (anItem.isa.method_msgSend["action"] || _objj_forward)(anItem, "action")) !== sel_getUid("toggleToolbarShown:")) + var action = (anItem == null ? anItem : (anItem.isa.method_msgSend["action"] || _objj_forward)(anItem, "action")); + if (action === sel_getUid("undo:")) + return ((___r1 = (self.isa.method_msgSend["undoManager"] || _objj_forward)(self, "undoManager")), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["canUndo"] || _objj_forward)(___r1, "canUndo")); + if (action === sel_getUid("redo:")) + return ((___r1 = (self.isa.method_msgSend["undoManager"] || _objj_forward)(self, "undoManager")), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["canRedo"] || _objj_forward)(___r1, "canRedo")); + if (action !== sel_getUid("toggleToolbarShown:")) return YES; var toolbar = (self.isa.method_msgSend["toolbar"] || _objj_forward)(self, "toolbar"); if ((anItem == null ? anItem : (anItem.isa.method_msgSend["respondsToSelector:"] || _objj_forward)(anItem, "respondsToSelector:", sel_getUid("setTitle:")))) (anItem == null ? anItem : (anItem.isa.method_msgSend["setTitle:"] || _objj_forward)(anItem, "setTitle:", (toolbar == null ? toolbar : (toolbar.isa.method_msgSend["isVisible"] || _objj_forward)(toolbar, "isVisible")) ? "Hide Toolbar" : "Show Toolbar")); return !!toolbar; + var ___r1; } ,["BOOL","id"]), new objj_method(sel_getUid("_noteToolbarChanged"), function $CPWindow___noteToolbarChanged(self, _cmd) diff --git a/Frameworks/AppKit/CommonJS.environment/AppKit.sj b/Frameworks/AppKit/CommonJS.environment/AppKit.sj index b28abd3bb..f90111501 100644 --- a/Frameworks/AppKit/CommonJS.environment/AppKit.sj +++ b/Frameworks/AppKit/CommonJS.environment/AppKit.sj @@ -74461,7 +74461,7 @@ var meta_class = the_class.isa;class_addMethods(the_class, [new objj_method(sel_ ,["void"])]); } -p;12;CPTextView.jt;236961;@STATIC;1.0;i;8;CPText.ji;14;CPPasteboard.ji;14;CPColorPanel.ji;15;CPFontManager.ji;15;CPTextStorage.ji;17;CPLayoutManager.ji;18;CPParagraphStyle.ji;17;CPTextContainer.ji;14;_CPRTFParser.ji;16;_CPRTFProducer.jt;236743;objj_executeFile("CPText.j", YES);objj_executeFile("CPPasteboard.j", YES);objj_executeFile("CPColorPanel.j", YES);objj_executeFile("CPFontManager.j", YES);objj_executeFile("CPTextStorage.j", YES);objj_executeFile("CPLayoutManager.j", YES);objj_executeFile("CPParagraphStyle.j", YES);objj_executeFile("CPTextContainer.j", YES);objj_executeFile("_CPRTFParser.j", YES);objj_executeFile("_CPRTFProducer.j", YES);; +p;12;CPTextView.jt;238200;@STATIC;1.0;i;8;CPText.ji;14;CPPasteboard.ji;14;CPColorPanel.ji;15;CPFontManager.ji;15;CPTextStorage.ji;17;CPLayoutManager.ji;18;CPParagraphStyle.ji;17;CPTextContainer.ji;14;_CPRTFParser.ji;16;_CPRTFProducer.jt;237982;objj_executeFile("CPText.j", YES);objj_executeFile("CPPasteboard.j", YES);objj_executeFile("CPColorPanel.j", YES);objj_executeFile("CPFontManager.j", YES);objj_executeFile("CPTextStorage.j", YES);objj_executeFile("CPLayoutManager.j", YES);objj_executeFile("CPParagraphStyle.j", YES);objj_executeFile("CPTextContainer.j", YES);objj_executeFile("_CPRTFParser.j", YES);objj_executeFile("_CPRTFProducer.j", YES);; ; ; ; @@ -75087,7 +75087,31 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function var ___r1, ___r2; } -,["void","id"]), new objj_method(sel_getUid("stringValue"), function $CPTextView__stringValue(self, _cmd) +,["void","id"]), new objj_method(sel_getUid("_registeringUndoManager"), function $CPTextView___registeringUndoManager(self, _cmd) +{ + return self._allowsUndo ? ((___r1 = (self.isa.method_msgSend["window"] || _objj_forward)(self, "window")), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["undoManager"] || _objj_forward)(___r1, "undoManager")) : nil; + var ___r1; +} + +,["CPUndoManager"]), new objj_method(sel_getUid("respondsToSelector:"), function $CPTextView__respondsToSelector_(self, _cmd, aSelector) +{ + if (!self._allowsUndo && (aSelector === sel_getUid("undo:") || aSelector === sel_getUid("redo:"))) + return NO; + return (objj_getClass("CPTextView").super_class.method_dtable["respondsToSelector:"] || _objj_forward)(self, "respondsToSelector:", aSelector); +} + +,["BOOL","SEL"]), new objj_method(sel_getUid("validateUserInterfaceItem:"), function $CPTextView__validateUserInterfaceItem_(self, _cmd, anItem) +{ + var action = (anItem == null ? anItem : (anItem.isa.method_msgSend["action"] || _objj_forward)(anItem, "action")); + if (action === sel_getUid("undo:")) + return ((___r1 = ((___r2 = (self.isa.method_msgSend["window"] || _objj_forward)(self, "window")), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["undoManager"] || _objj_forward)(___r2, "undoManager"))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["canUndo"] || _objj_forward)(___r1, "canUndo")); + if (action === sel_getUid("redo:")) + return ((___r1 = ((___r2 = (self.isa.method_msgSend["window"] || _objj_forward)(self, "window")), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["undoManager"] || _objj_forward)(___r2, "undoManager"))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["canRedo"] || _objj_forward)(___r1, "canRedo")); + return YES; + var ___r1, ___r2; +} + +,["BOOL","id"]), new objj_method(sel_getUid("stringValue"), function $CPTextView__stringValue(self, _cmd) { return self._textStorage._string; } @@ -75207,10 +75231,10 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function ,["void","CPRange"]), new objj_method(sel_getUid("_replaceCharactersInRange:withAttributedString:selectionRange:"), function $CPTextView___replaceCharactersInRange_withAttributedString_selectionRange_(self, _cmd, aRange, aString, selectionRange) { - ((___r1 = ((___r2 = ((___r3 = (self.isa.method_msgSend["window"] || _objj_forward)(self, "window")), ___r3 == null ? ___r3 : (___r3.isa.method_msgSend["undoManager"] || _objj_forward)(___r3, "undoManager"))), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(___r2, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["_replaceCharactersInRange:withAttributedString:selectionRange:"] || _objj_forward)(___r1, "_replaceCharactersInRange:withAttributedString:selectionRange:", CPMakeRange(aRange.location, (aString == null ? aString : (aString.isa.method_msgSend["length"] || _objj_forward)(aString, "length"))), ((___r2 = self._textStorage), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["attributedSubstringFromRange:"] || _objj_forward)(___r2, "attributedSubstringFromRange:", CPMakeRangeCopy(aRange))), CPMakeRangeCopy(self._selectionRange))); + ((___r1 = ((___r2 = (self.isa.method_msgSend["_registeringUndoManager"] || _objj_forward)(self, "_registeringUndoManager")), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(___r2, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["_replaceCharactersInRange:withAttributedString:selectionRange:"] || _objj_forward)(___r1, "_replaceCharactersInRange:withAttributedString:selectionRange:", CPMakeRange(aRange.location, (aString == null ? aString : (aString.isa.method_msgSend["length"] || _objj_forward)(aString, "length"))), ((___r2 = self._textStorage), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["attributedSubstringFromRange:"] || _objj_forward)(___r2, "attributedSubstringFromRange:", CPMakeRangeCopy(aRange))), CPMakeRangeCopy(self._selectionRange))); ((___r1 = self._textStorage), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["replaceCharactersInRange:withAttributedString:"] || _objj_forward)(___r1, "replaceCharactersInRange:withAttributedString:", aRange, aString)); (self.isa.method_msgSend["_fixupReplaceForRange:"] || _objj_forward)(self, "_fixupReplaceForRange:", selectionRange); - var ___r1, ___r2, ___r3; + var ___r1, ___r2; } ,["void","CPRange","CPString","CPRange"]), new objj_method(sel_getUid("insertText:"), function $CPTextView__insertText_(self, _cmd, aString) @@ -75223,7 +75247,7 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function aString = ((___r1 = (CPAttributedString.isa.method_msgSend["alloc"] || _objj_forward)(CPAttributedString, "alloc")), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["initWithString:attributes:"] || _objj_forward)(___r1, "initWithString:attributes:", aString, self._typingAttributes)); else if (!(self.isa.method_msgSend["isRichText"] || _objj_forward)(self, "isRichText")) aString = ((___r1 = (CPAttributedString.isa.method_msgSend["alloc"] || _objj_forward)(CPAttributedString, "alloc")), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["initWithString:attributes:"] || _objj_forward)(___r1, "initWithString:attributes:", string, self._typingAttributes)); - var undoManager = ((___r1 = (self.isa.method_msgSend["window"] || _objj_forward)(self, "window")), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["undoManager"] || _objj_forward)(___r1, "undoManager")); + var undoManager = (self.isa.method_msgSend["_registeringUndoManager"] || _objj_forward)(self, "_registeringUndoManager"); (undoManager == null ? undoManager : (undoManager.isa.method_msgSend["setActionName:"] || _objj_forward)(undoManager, "setActionName:", "Replace/insert text")); ((___r1 = (undoManager == null ? undoManager : (undoManager.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(undoManager, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["_replaceCharactersInRange:withAttributedString:selectionRange:"] || _objj_forward)(___r1, "_replaceCharactersInRange:withAttributedString:selectionRange:", CPMakeRange(self._selectionRange.location, (aString == null ? aString : (aString.isa.method_msgSend["length"] || _objj_forward)(aString, "length"))), ((___r2 = self._textStorage), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["attributedSubstringFromRange:"] || _objj_forward)(___r2, "attributedSubstringFromRange:", CPMakeRangeCopy(self._selectionRange))), CPMakeRangeCopy(self._selectionRange))); (self.isa.method_msgSend["willChangeValueForKey:"] || _objj_forward)(self, "willChangeValueForKey:", "objectValue"); @@ -75921,7 +75945,7 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function if (!(self.isa.method_msgSend["_didBeginEditing"] || _objj_forward)(self, "_didBeginEditing") || !(self.isa.method_msgSend["shouldChangeTextInRange:replacementString:"] || _objj_forward)(self, "shouldChangeTextInRange:replacementString:", changedRange, "")) return; changedRange = CPIntersectionRange(CPMakeRange(0, ((___r1 = self._layoutManager), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["numberOfCharacters"] || _objj_forward)(___r1, "numberOfCharacters"))), changedRange); - ((___r1 = ((___r2 = ((___r3 = self._window), ___r3 == null ? ___r3 : (___r3.isa.method_msgSend["undoManager"] || _objj_forward)(___r3, "undoManager"))), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(___r2, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["_replaceCharactersInRange:withAttributedString:selectionRange:"] || _objj_forward)(___r1, "_replaceCharactersInRange:withAttributedString:selectionRange:", CPMakeRange(changedRange.location, 0), ((___r2 = self._textStorage), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["attributedSubstringFromRange:"] || _objj_forward)(___r2, "attributedSubstringFromRange:", CPMakeRangeCopy(changedRange))), CPMakeRangeCopy(self._selectionRange))); + ((___r1 = ((___r2 = (self.isa.method_msgSend["_registeringUndoManager"] || _objj_forward)(self, "_registeringUndoManager")), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(___r2, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["_replaceCharactersInRange:withAttributedString:selectionRange:"] || _objj_forward)(___r1, "_replaceCharactersInRange:withAttributedString:selectionRange:", CPMakeRange(changedRange.location, 0), ((___r2 = self._textStorage), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["attributedSubstringFromRange:"] || _objj_forward)(___r2, "attributedSubstringFromRange:", CPMakeRangeCopy(changedRange))), CPMakeRangeCopy(self._selectionRange))); (self.isa.method_msgSend["willChangeValueForKey:"] || _objj_forward)(self, "willChangeValueForKey:", "objectValue"); ((___r1 = self._textStorage), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["deleteCharactersInRange:"] || _objj_forward)(___r1, "deleteCharactersInRange:", CPMakeRangeCopy(changedRange))); (self.isa.method_msgSend["didChangeValueForKey:"] || _objj_forward)(self, "didChangeValueForKey:", "objectValue"); @@ -75932,7 +75956,7 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function (self.isa.method_msgSend["sizeToFit"] || _objj_forward)(self, "sizeToFit"); (self.isa.method_msgSend["scrollRangeToVisible:"] || _objj_forward)(self, "scrollRangeToVisible:", CPMakeRange(changedRange.location, 0)); self._stickyXLocation = self._caret._rect.origin.x; - var ___r1, ___r2, ___r3; + var ___r1, ___r2; } ,["void","CPRange"]), new objj_method(sel_getUid("cancelOperation:"), function $CPTextView__cancelOperation_(self, _cmd, sender) @@ -76080,10 +76104,10 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function ((___r1 = self._textStorage), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["setFont:"] || _objj_forward)(___r1, "setFont:", self._font)); } var currentAttributes = ((___r1 = self._textStorage), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["attributesAtIndex:effectiveRange:"] || _objj_forward)(___r1, "attributesAtIndex:effectiveRange:", range.location, nil)) || self._typingAttributes; - ((___r1 = ((___r2 = ((___r3 = (self.isa.method_msgSend["window"] || _objj_forward)(self, "window")), ___r3 == null ? ___r3 : (___r3.isa.method_msgSend["undoManager"] || _objj_forward)(___r3, "undoManager"))), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(___r2, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["setFont:range:"] || _objj_forward)(___r1, "setFont:range:", (currentAttributes == null ? currentAttributes : (currentAttributes.isa.method_msgSend["objectForKey:"] || _objj_forward)(currentAttributes, "objectForKey:", CPFontAttributeName)) || (self.isa.method_msgSend["font"] || _objj_forward)(self, "font"), CPMakeRangeCopy(range))); + ((___r1 = ((___r2 = (self.isa.method_msgSend["_registeringUndoManager"] || _objj_forward)(self, "_registeringUndoManager")), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(___r2, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["setFont:range:"] || _objj_forward)(___r1, "setFont:range:", (currentAttributes == null ? currentAttributes : (currentAttributes.isa.method_msgSend["objectForKey:"] || _objj_forward)(currentAttributes, "objectForKey:", CPFontAttributeName)) || (self.isa.method_msgSend["font"] || _objj_forward)(self, "font"), CPMakeRangeCopy(range))); ((___r1 = self._textStorage), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["addAttribute:value:range:"] || _objj_forward)(___r1, "addAttribute:value:range:", CPFontAttributeName, font, CPMakeRangeCopy(range))); ((___r1 = self._layoutManager), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["_validateLayoutAndGlyphs"] || _objj_forward)(___r1, "_validateLayoutAndGlyphs")); - var ___r1, ___r2, ___r3; + var ___r1, ___r2; } ,["void","CPFont","CPRange"]), new objj_method(sel_getUid("changeFont:"), function $CPTextView__changeFont_(self, _cmd, sender) @@ -76092,7 +76116,7 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function oldFont, attributes, scrollRange = CPMakeRange(CPMaxRange(self._selectionRange), 0), - undoManager = ((___r1 = (self.isa.method_msgSend["window"] || _objj_forward)(self, "window")), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["undoManager"] || _objj_forward)(___r1, "undoManager")); + undoManager = (self.isa.method_msgSend["_registeringUndoManager"] || _objj_forward)(self, "_registeringUndoManager"); (undoManager == null ? undoManager : (undoManager.isa.method_msgSend["beginUndoGrouping"] || _objj_forward)(undoManager, "beginUndoGrouping")); if ((self.isa.method_msgSend["isRichText"] || _objj_forward)(self, "isRichText")) { @@ -76143,7 +76167,7 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function ,["void","CPColor"]), new objj_method(sel_getUid("setTextColor:range:"), function $CPTextView__setTextColor_range_(self, _cmd, aColor, range) { var currentAttributes = ((___r1 = self._textStorage), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["attributesAtIndex:effectiveRange:"] || _objj_forward)(___r1, "attributesAtIndex:effectiveRange:", range.location, nil)) || self._typingAttributes; - ((___r1 = ((___r2 = ((___r3 = (self.isa.method_msgSend["window"] || _objj_forward)(self, "window")), ___r3 == null ? ___r3 : (___r3.isa.method_msgSend["undoManager"] || _objj_forward)(___r3, "undoManager"))), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(___r2, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["setTextColor:range:"] || _objj_forward)(___r1, "setTextColor:range:", (currentAttributes == null ? currentAttributes : (currentAttributes.isa.method_msgSend["objectForKey:"] || _objj_forward)(currentAttributes, "objectForKey:", CPForegroundColorAttributeName)) || self._textColor, CPMakeRangeCopy(range))); + ((___r1 = ((___r2 = (self.isa.method_msgSend["_registeringUndoManager"] || _objj_forward)(self, "_registeringUndoManager")), ___r2 == null ? ___r2 : (___r2.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(___r2, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["setTextColor:range:"] || _objj_forward)(___r1, "setTextColor:range:", (currentAttributes == null ? currentAttributes : (currentAttributes.isa.method_msgSend["objectForKey:"] || _objj_forward)(currentAttributes, "objectForKey:", CPForegroundColorAttributeName)) || self._textColor, CPMakeRangeCopy(range))); if (!CPEmptyRange(range)) { if (aColor) @@ -76154,7 +76178,7 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function else ((___r1 = self._typingAttributes), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["setObject:forKey:"] || _objj_forward)(___r1, "setObject:forKey:", aColor, CPForegroundColorAttributeName)); ((___r1 = self._layoutManager), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["textStorage:edited:range:changeInLength:invalidatedRange:"] || _objj_forward)(___r1, "textStorage:edited:range:changeInLength:invalidatedRange:", self._textStorage, 0, CPMakeRangeCopy(range), 0, CPMakeRangeCopy(range))); - var ___r1, ___r2, ___r3; + var ___r1, ___r2; } ,["void","CPColor","CPRange"]), new objj_method(sel_getUid("bold:"), function $CPTextView__bold_(self, _cmd, sender) @@ -76203,7 +76227,7 @@ class_addMethods(the_class, [new objj_method(sel_getUid("allowsUndo"), function (newStyle == null ? newStyle : (newStyle.isa.method_msgSend["setAlignment:"] || _objj_forward)(newStyle, "setAlignment:", anAlignment)); if (self._selectionRange.length > 0) { - var undoManager = ((___r1 = (self.isa.method_msgSend["window"] || _objj_forward)(self, "window")), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["undoManager"] || _objj_forward)(___r1, "undoManager")); + var undoManager = (self.isa.method_msgSend["_registeringUndoManager"] || _objj_forward)(self, "_registeringUndoManager"); if (undoManager) { ((___r1 = (undoManager == null ? undoManager : (undoManager.isa.method_msgSend["prepareWithInvocationTarget:"] || _objj_forward)(undoManager, "prepareWithInvocationTarget:", self))), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["_setAlignment:"] || _objj_forward)(___r1, "_setAlignment:", (style == null ? style : (style.isa.method_msgSend["alignment"] || _objj_forward)(style, "alignment")))); @@ -79690,7 +79714,7 @@ var meta_class = the_class.isa;class_addIvars(the_class, [new objj_ivar("_window ,["void"])]); } -p;10;CPWindow.jt;212709;@STATIC;1.0;I;25;Foundation/CPCountedSet.jI;33;Foundation/CPNotificationCenter.jI;26;Foundation/CPUndoManager.ji;12;CGGeometry.ji;13;CPAnimation.ji;10;CPCursor.ji;14;CPDragServer.ji;9;CPEvent.ji;18;CPPlatformWindow.ji;22;CPPlatformWindow+DOM.ji;13;CPResponder.ji;10;CPScreen.ji;8;CPText.ji;16;CPTrackingArea.ji;8;CPView.ji;20;CPWindow_Constants.ji;31;_CPBorderlessBridgeWindowView.ji;25;_CPBorderlessWindowView.ji;23;_CPDocModalWindowView.ji;18;_CPHUDWindowView.ji;20;_CPModalWindowView.ji;22;_CPPopoverWindowView.ji;21;_CPShadowWindowView.ji;23;_CPStandardWindowView.ji;22;_CPToolTipWindowView.jt;212104;objj_executeFile("Foundation/CPCountedSet.j", NO);objj_executeFile("Foundation/CPNotificationCenter.j", NO);objj_executeFile("Foundation/CPUndoManager.j", NO);objj_executeFile("CGGeometry.j", YES);objj_executeFile("CPAnimation.j", YES);objj_executeFile("CPCursor.j", YES);objj_executeFile("CPDragServer.j", YES);objj_executeFile("CPEvent.j", YES);objj_executeFile("CPPlatformWindow.j", YES);objj_executeFile("CPPlatformWindow+DOM.j", YES);objj_executeFile("CPResponder.j", YES);objj_executeFile("CPScreen.j", YES);objj_executeFile("CPText.j", YES);objj_executeFile("CPTrackingArea.j", YES);objj_executeFile("CPView.j", YES);objj_executeFile("CPWindow_Constants.j", YES);objj_executeFile("_CPBorderlessBridgeWindowView.j", YES);objj_executeFile("_CPBorderlessWindowView.j", YES);objj_executeFile("_CPDocModalWindowView.j", YES);objj_executeFile("_CPHUDWindowView.j", YES);objj_executeFile("_CPModalWindowView.j", YES);objj_executeFile("_CPPopoverWindowView.j", YES);objj_executeFile("_CPShadowWindowView.j", YES);objj_executeFile("_CPStandardWindowView.j", YES);objj_executeFile("_CPToolTipWindowView.j", YES);{var the_typedef = objj_allocateTypeDef("_CPWindowFullPlatformWindowSession"); +p;10;CPWindow.jt;213239;@STATIC;1.0;I;25;Foundation/CPCountedSet.jI;33;Foundation/CPNotificationCenter.jI;26;Foundation/CPUndoManager.ji;12;CGGeometry.ji;13;CPAnimation.ji;10;CPCursor.ji;14;CPDragServer.ji;9;CPEvent.ji;18;CPPlatformWindow.ji;22;CPPlatformWindow+DOM.ji;13;CPResponder.ji;10;CPScreen.ji;8;CPText.ji;16;CPTrackingArea.ji;8;CPView.ji;20;CPWindow_Constants.ji;31;_CPBorderlessBridgeWindowView.ji;25;_CPBorderlessWindowView.ji;23;_CPDocModalWindowView.ji;18;_CPHUDWindowView.ji;20;_CPModalWindowView.ji;22;_CPPopoverWindowView.ji;21;_CPShadowWindowView.ji;23;_CPStandardWindowView.ji;22;_CPToolTipWindowView.jt;212634;objj_executeFile("Foundation/CPCountedSet.j", NO);objj_executeFile("Foundation/CPNotificationCenter.j", NO);objj_executeFile("Foundation/CPUndoManager.j", NO);objj_executeFile("CGGeometry.j", YES);objj_executeFile("CPAnimation.j", YES);objj_executeFile("CPCursor.j", YES);objj_executeFile("CPDragServer.j", YES);objj_executeFile("CPEvent.j", YES);objj_executeFile("CPPlatformWindow.j", YES);objj_executeFile("CPPlatformWindow+DOM.j", YES);objj_executeFile("CPResponder.j", YES);objj_executeFile("CPScreen.j", YES);objj_executeFile("CPText.j", YES);objj_executeFile("CPTrackingArea.j", YES);objj_executeFile("CPView.j", YES);objj_executeFile("CPWindow_Constants.j", YES);objj_executeFile("_CPBorderlessBridgeWindowView.j", YES);objj_executeFile("_CPBorderlessWindowView.j", YES);objj_executeFile("_CPDocModalWindowView.j", YES);objj_executeFile("_CPHUDWindowView.j", YES);objj_executeFile("_CPModalWindowView.j", YES);objj_executeFile("_CPPopoverWindowView.j", YES);objj_executeFile("_CPShadowWindowView.j", YES);objj_executeFile("_CPStandardWindowView.j", YES);objj_executeFile("_CPToolTipWindowView.j", YES);{var the_typedef = objj_allocateTypeDef("_CPWindowFullPlatformWindowSession"); objj_registerTypeDef(the_typedef); }{var the_protocol = objj_allocateProtocol("CPWindowDelegate"); var aProtocol = objj_getProtocol("CPObject"); @@ -81385,12 +81409,18 @@ default: ,["void","id"]), new objj_method(sel_getUid("validateUserInterfaceItem:"), function $CPWindow__validateUserInterfaceItem_(self, _cmd, anItem) { - if ((anItem == null ? anItem : (anItem.isa.method_msgSend["action"] || _objj_forward)(anItem, "action")) !== sel_getUid("toggleToolbarShown:")) + var action = (anItem == null ? anItem : (anItem.isa.method_msgSend["action"] || _objj_forward)(anItem, "action")); + if (action === sel_getUid("undo:")) + return ((___r1 = (self.isa.method_msgSend["undoManager"] || _objj_forward)(self, "undoManager")), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["canUndo"] || _objj_forward)(___r1, "canUndo")); + if (action === sel_getUid("redo:")) + return ((___r1 = (self.isa.method_msgSend["undoManager"] || _objj_forward)(self, "undoManager")), ___r1 == null ? ___r1 : (___r1.isa.method_msgSend["canRedo"] || _objj_forward)(___r1, "canRedo")); + if (action !== sel_getUid("toggleToolbarShown:")) return YES; var toolbar = (self.isa.method_msgSend["toolbar"] || _objj_forward)(self, "toolbar"); if ((anItem == null ? anItem : (anItem.isa.method_msgSend["respondsToSelector:"] || _objj_forward)(anItem, "respondsToSelector:", sel_getUid("setTitle:")))) (anItem == null ? anItem : (anItem.isa.method_msgSend["setTitle:"] || _objj_forward)(anItem, "setTitle:", (toolbar == null ? toolbar : (toolbar.isa.method_msgSend["isVisible"] || _objj_forward)(toolbar, "isVisible")) ? "Hide Toolbar" : "Show Toolbar")); return !!toolbar; + var ___r1; } ,["BOOL","id"]), new objj_method(sel_getUid("_noteToolbarChanged"), function $CPWindow___noteToolbarChanged(self, _cmd) diff --git a/Resources/TextEditor/DocumentWindowController.j b/Resources/TextEditor/DocumentWindowController.j index bebcbf24a..ee587c024 100644 --- a/Resources/TextEditor/DocumentWindowController.j +++ b/Resources/TextEditor/DocumentWindowController.j @@ -123,4 +123,51 @@ var DocumentWindowMinimumWidth = 360.0, Math.max(aSize.height, DocumentWindowMinimumHeight)); } +/*! + Turns undo on or off for this document's text view. + + This is test scaffolding, not a Cocoa convention: Cocoa apps set + allowsUndo once, in Interface Builder or in code. The Edit > Allow Undo + menu item exists so that both settings can be tried while the app runs. + It will move to a Settings window. + + Like Insert Lorem Ipsum, the menu item sends its action to First + Responder, and the responder chain delivers it to the controller of the + active document's window. Neither the text view nor the window responds + to toggleAllowsUndo:, so the action passes them by. +*/ +- (@action)toggleAllowsUndo:(id)aSender +{ + var allowsUndo = ![textView allowsUndo]; + + [textView setAllowsUndo:allowsUndo]; + + /* + A text view that does not allow undo registers no changes, and does + not respond to undo: or redo:, so those actions go on to the window + and its undo manager. Remove the changes the text view registered + before undo was turned off, so that Edit > Undo cannot still undo + them through the window. + */ + if (!allowsUndo) + [[[self window] undoManager] removeAllActionsWithTarget:textView]; +} + +/*! + Validates the menu items whose actions this controller handles. + + AppKit calls this method before it shows a menu, for each item whose + action reaches this controller through the responder chain. For Allow + Undo, it sets the item's check mark from the active document's text + view, so the mark follows the document whose window is in front. Every + item is enabled. +*/ +- (BOOL)validateMenuItem:(CPMenuItem)aMenuItem +{ + if ([aMenuItem action] === @selector(toggleAllowsUndo:)) + [aMenuItem setState:[textView allowsUndo] ? CPOnState : CPOffState]; + + return YES; +} + @end diff --git a/Resources/TextEditor/Resources/MainMenu.cib b/Resources/TextEditor/Resources/MainMenu.cib index 59946ccb4..ebbb4cabe 100644 --- a/Resources/TextEditor/Resources/MainMenu.cib +++ b/Resources/TextEditor/Resources/MainMenu.cib @@ -1 +1 @@ -280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;0E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;4E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;0E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;1;7E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;1;9E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;11E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;13E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;15E;D;K;6;CP$UIDd;2;17E;D;K;6;CP$UIDd;2;18E;D;K;6;CP$UIDd;2;19E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;50E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;118E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;2;52E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;2;11E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;119E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;120E;E;D;K;10;$classnameS;20;CPCibOutletConnectorK;8;$classesA;S;20;CPCibOutletConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;11E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;118E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;121E;E;D;K;10;$classnameS;21;CPCibControlConnectorK;8;$classesA;S;21;CPCibControlConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;114E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;122E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;111E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;123E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;56E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;11E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;124E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;62E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;125E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;67E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;126E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;68E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;127E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;69E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;128E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;61E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;129E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;117E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;130E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;70E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;131E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;65E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;132E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;104E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;103E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;134E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;80E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;136E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;76E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;93E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;138E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;79E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;139E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;78E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;140E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;92E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;141E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;73E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;142E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;85E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;143E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;89E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;144E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;74E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;145E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;94E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;146E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;112E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;147E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;107E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;148E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;108E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;149E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;95E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;150E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;98E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;151E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;99E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;100E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;153E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;81E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;119E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;51E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;155E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;156E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;157E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;158E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;55E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;159E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;55E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;51E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;158E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;164E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;165E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;166E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;55E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;167E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;168E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;169E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;55E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;170E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;55E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;171E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;172E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;60E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;159E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;60E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;51E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;172E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;173E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;174E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;60E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;175E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;176E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;60E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;177E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;178E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;64E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;159E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;64E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;60E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;51E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;178E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;179E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;180E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;181E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;64E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;167E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;168E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;169E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;60E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;182E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;60E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;183E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;184E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;60E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;185E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;186E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;60E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;187E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;188E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;189E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;60E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;190E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;72E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;159E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;72E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;51E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;190E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;191E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;192E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;72E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;193E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;194E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;72E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;195E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;188E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;167E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;168E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;169E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;72E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;196E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;72E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;197E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;198E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;72E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;199E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;200E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;72E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;201E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;202E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;72E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;203E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;72E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;204E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;205E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;72E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;167E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;168E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;169E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;72E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;206E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;84E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;159E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;84E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;72E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;51E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;206E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;207E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;208E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;209E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;210E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;211E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;212E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;213E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;214E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;215E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;216E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;188E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;217E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;218E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;219E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;220E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;84E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;221E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;222E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;91E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;159E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;91E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;72E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;51E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;222E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;223E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;224E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;225E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;226E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;227E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;228E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;229E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;91E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;230E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;97E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;159E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;97E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;72E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;51E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;230E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;231E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;232E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;209E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;97E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;210E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;233E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;212E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;97E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;213E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;234E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;215E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;97E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;216E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;188E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;235E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;3;102E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;159E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;102E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;72E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;51E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;235E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;236E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;237E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;102E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;238E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;102E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;239E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;3;106E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;159E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;106E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;51E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;239E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;240E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;241E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;106E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;242E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;243E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;244E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;106E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;245E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;3;110E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;159E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;110E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;51E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;245E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;246E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;247E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;248E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;249E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;250E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;167E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;168E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;169E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;251E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;110E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;252E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;3;116E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;159E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;116E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;52E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;51E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;252E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;253E;E;D;K;6;$classD;K;6;CP$UIDd;2;53E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;254E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;161E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;162E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;116E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;255E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;163E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;256E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;S;8;delegateS;15;arrangeInFront:S;19;performMiniaturize:S;29;orderFrontStandardAboutPanel:S;13;openDocument:S;13;performClose:S;13;saveDocument:S;15;saveDocumentAs:S;12;newDocument:S;9;showHelp:S;22;revertDocumentToSaved:S;21;clearRecentDocuments:S;13;stopSpeaking:S;14;startSpeaking:S;5;copy:S;10;selectAll:S;4;cut:S;14;checkSpelling:S;7;delete:S;6;paste:S;15;showGuessPanel:S;5;undo:S;23;performFindPanelAction:S;29;centerSelectionInVisibleArea:S;5;redo:S;30;toggleContinuousSpellChecking:S;12;performZoom:S;19;toggleToolbarShown:S;31;runToolbarCustomizationPalette:S;22;toggleGrammarChecking:S;24;toggleSmartInsertDelete:S;33;toggleAutomaticQuoteSubstitution:S;29;toggleAutomaticLinkDetection:S;17;insertLoremIpsum:S;9;AMainMenuS;11;_CPMainMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;54E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;115E;E;E;S;22;TextEdit by CappuccinoS;14;submenuAction:D;K;10;$classnameS;20;_CPCibCustomResourceK;8;$classesA;S;20;_CPCibCustomResourceS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;160E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;257E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;258E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;260E;E;D;K;6;$classD;K;6;CP$UIDd;3;160E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;257E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;261E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;262E;E;d;7;1048576S;18;_CPApplicationMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;E;E;S;28;About TextEdit by CappuccinoT;S;0;F;S;9;Settings…S;1;,S;4;FileD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;70E;E;E;S;3;NewS;1;nS;5;Open…S;1;oS;11;Open RecentS;22;_CPRecentDocumentsMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;65E;E;E;S;10;Clear MenuS;5;CloseS;1;wS;4;SaveS;1;sS;8;Save As…S;1;Sd;7;1179648S;15;Revert to SavedS;4;EditD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;3;101E;E;E;S;4;UndoS;1;zS;4;RedoS;1;ZS;3;CutS;1;xS;4;CopyS;1;cS;5;PasteS;1;vS;6;DeleteS;10;Select AllS;1;aS;18;Insert Lorem IpsumS;4;FindD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;E;E;S;5;Find…d;1;1S;1;fS;9;Find Nextd;1;2S;1;gS;13;Find Previousd;1;3S;1;GS;22;Use Selection for Findd;1;7S;1;eS;17;Jump to SelectionS;1;jS;20;Spelling and GrammarD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;E;E;S;14;Show Spelling…S;1;:S;14;Check SpellingS;1;;S;27;Check Spelling While TypingS;27;Check Grammar With SpellingS;13;SubstitutionsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;E;E;S;16;Smart Copy/PasteS;12;Smart QuotesS;11;Smart LinksS;6;SpeechD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;E;E;S;14;Start SpeakingS;13;Stop SpeakingS;4;ViewD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;108E;E;E;S;12;Show ToolbarS;1;td;7;1572864S;18;Customize Toolbar…S;6;WindowS;14;_CPWindowsMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;114E;E;E;S;8;MinimizeS;1;mS;4;ZoomS;18;Bring All to FrontS;4;HelpD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;117E;E;E;S;27;TextEdit by Cappuccino HelpS;1;?S;13;AppControllerS;7;CPImageS;15;CPMenuCheckmarkD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;259E;K;10;CP.objectsD;K;9;frameworkD;K;6;CP$UIDd;3;168E;K;16;bundleIdentifierD;K;6;CP$UIDd;3;168E;K;4;sizeD;K;6;CP$UIDd;3;264E;E;E;S;16;CPMenuMixedStateD;K;6;$classD;K;6;CP$UIDd;3;259E;K;10;CP.objectsD;K;9;frameworkD;K;6;CP$UIDd;3;168E;K;16;bundleIdentifierD;K;6;CP$UIDd;3;168E;K;4;sizeD;K;6;CP$UIDd;3;265E;E;E;D;K;10;$classnameS;21;_CPKeyedArchiverValueK;8;$classesA;S;21;_CPKeyedArchiverValueS;7;CPValueS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;263E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;266E;E;D;K;6;$classD;K;6;CP$UIDd;3;263E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;266E;E;S;22;{"width":0,"height":0}E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file +280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;2E;E;K;8;$objectsA;S;5;$nullD;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;1E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;0E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;0E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;4E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;0E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;1;7E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;1;9E;K;28;_CPCibObjectDataFileOwnerKeyD;K;6;CP$UIDd;2;11E;K;33;_CPCibObjectDataVisibleWindowsKeyD;K;6;CP$UIDd;2;13E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;15E;D;K;6;CP$UIDd;2;17E;D;K;6;CP$UIDd;2;18E;D;K;6;CP$UIDd;2;19E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;D;K;6;CP$UIDd;2;29E;D;K;6;CP$UIDd;2;30E;D;K;6;CP$UIDd;2;31E;D;K;6;CP$UIDd;2;32E;D;K;6;CP$UIDd;2;33E;D;K;6;CP$UIDd;2;34E;D;K;6;CP$UIDd;2;35E;D;K;6;CP$UIDd;2;36E;D;K;6;CP$UIDd;2;37E;D;K;6;CP$UIDd;2;38E;D;K;6;CP$UIDd;2;39E;D;K;6;CP$UIDd;2;40E;D;K;6;CP$UIDd;2;41E;D;K;6;CP$UIDd;2;42E;D;K;6;CP$UIDd;2;43E;D;K;6;CP$UIDd;2;44E;D;K;6;CP$UIDd;2;45E;D;K;6;CP$UIDd;2;46E;D;K;6;CP$UIDd;2;47E;D;K;6;CP$UIDd;2;48E;D;K;6;CP$UIDd;2;49E;D;K;6;CP$UIDd;2;50E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;51E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;59E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;66E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;92E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;103E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;3;120E;D;K;6;CP$UIDd;3;121E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;11E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;56E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;65E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;61E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;87E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;94E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;3;100E;D;K;6;CP$UIDd;2;73E;D;K;6;CP$UIDd;3;104E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;3;105E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;3;109E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;3;113E;D;K;6;CP$UIDd;2;53E;D;K;6;CP$UIDd;3;118E;D;K;6;CP$UIDd;3;119E;D;K;6;CP$UIDd;2;11E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;D;K;10;$classnameS;18;_CPCibCustomObjectK;8;$classesA;S;18;_CPCibCustomObjectS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;122E;E;D;K;10;$classnameS;5;CPSetK;8;$classesA;S;5;CPSetS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;12E;K;15;CPSetObjectsKeyD;K;6;CP$UIDd;3;123E;E;D;K;10;$classnameS;20;CPCibOutletConnectorK;8;$classesA;S;20;CPCibOutletConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;14E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;11E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;3;121E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;124E;E;D;K;10;$classnameS;21;CPCibControlConnectorK;8;$classesA;S;21;CPCibControlConnectorS;14;CPCibConnectorS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;117E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;125E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;114E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;126E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;57E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;2;11E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;127E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;63E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;128E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;68E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;129E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;69E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;130E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;70E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;131E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;62E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;132E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;120E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;133E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;71E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;134E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;66E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;135E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;107E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;136E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;106E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;137E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;80E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;138E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;83E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;139E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;79E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;140E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;96E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;141E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;82E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;142E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;81E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;143E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;95E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;144E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;74E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;145E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;88E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;146E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;92E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;147E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;75E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;148E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;97E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;149E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;115E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;150E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;110E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;151E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;111E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;152E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;98E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;153E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;101E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;154E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;102E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;155E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;3;103E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;156E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;84E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;157E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;24;_CPCibConnectorSourceKeyD;K;6;CP$UIDd;2;77E;K;29;_CPCibConnectorDestinationKeyD;K;6;CP$UIDd;1;0E;K;23;_CPCibConnectorLabelKeyD;K;6;CP$UIDd;3;158E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;122E;E;D;K;10;$classnameS;6;CPMenuK;8;$classesA;S;6;CPMenuS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;159E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;160E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;161E;E;D;K;10;$classnameS;10;CPMenuItemK;8;$classesA;S;10;CPMenuItemS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;162E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;56E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;163E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;56E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;53E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;162E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;168E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;169E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;170E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;56E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;171E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;172E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;173E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;56E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;174E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;56E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;175E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;176E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;61E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;163E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;61E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;53E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;176E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;177E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;178E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;61E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;179E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;180E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;61E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;181E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;182E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;65E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;163E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;65E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;61E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;182E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;183E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;184E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;185E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;65E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;171E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;172E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;173E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;61E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;186E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;61E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;187E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;188E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;61E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;189E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;190E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;61E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;191E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;192E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;193E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;61E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;194E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;73E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;163E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;73E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;53E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;194E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;195E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;196E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;73E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;197E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;198E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;73E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;199E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;192E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;171E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;172E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;173E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;73E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;200E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;73E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;171E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;172E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;173E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;73E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;201E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;73E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;202E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;203E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;73E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;204E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;205E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;73E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;206E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;207E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;73E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;208E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;73E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;209E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;210E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;73E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;171E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;172E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;173E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;73E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;211E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;87E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;163E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;87E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;73E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;211E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;212E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;213E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;214E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;215E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;216E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;217E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;218E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;219E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;220E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;221E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;192E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;222E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;223E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;224E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;225E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;87E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;226E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;227E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;2;94E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;163E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;2;94E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;73E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;227E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;228E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;229E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;94E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;230E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;231E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;94E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;232E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;233E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;94E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;234E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;94E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;235E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;3;100E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;163E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;100E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;73E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;235E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;236E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;237E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;214E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;100E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;215E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;238E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;217E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;100E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;218E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;239E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;16;CPMenuItemTagKeyD;K;6;CP$UIDd;3;220E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;100E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;221E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;192E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;240E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;3;105E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;163E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;105E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;73E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;240E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;241E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;242E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;105E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;243E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;105E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;244E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;3;109E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;163E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;109E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;53E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;244E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;245E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;246E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;109E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;247E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;248E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;249E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;109E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;250E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;3;113E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;163E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;113E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;53E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;250E;K;13;CPMenuNameKeyD;K;6;CP$UIDd;3;251E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;252E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;253E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;113E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;254E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;255E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;113E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;24;CPMenuItemIsSeparatorKeyD;K;6;CP$UIDd;3;171E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;172E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;22;CPMenuItemIsEnabledKeyD;K;6;CP$UIDd;3;173E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;113E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;256E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;113E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;257E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;3;119E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;3;163E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;20;CPMenuItemSubmenuKeyD;K;6;CP$UIDd;3;119E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;2;53E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;52E;K;14;CPMenuTitleKeyD;K;6;CP$UIDd;3;257E;K;14;CPMenuItemsKeyD;K;6;CP$UIDd;3;258E;E;D;K;6;$classD;K;6;CP$UIDd;2;54E;K;18;CPMenuItemTitleKeyD;K;6;CP$UIDd;3;259E;K;19;CPMenuItemTargetKeyD;K;6;CP$UIDd;1;0E;K;19;CPMenuItemActionKeyD;K;6;CP$UIDd;1;0E;K;25;CPMenuItemOnStateImageKeyD;K;6;CP$UIDd;3;165E;K;28;CPMenuItemMixedStateImageKeyD;K;6;CP$UIDd;3;166E;K;17;CPMenuItemMenuKeyD;K;6;CP$UIDd;3;119E;K;26;CPMenuItemKeyEquivalentKeyD;K;6;CP$UIDd;3;260E;K;38;CPMenuItemKeyEquivalentModifierMaskKeyD;K;6;CP$UIDd;3;167E;E;D;K;6;$classD;K;6;CP$UIDd;2;10E;K;27;_CPCibCustomObjectClassNameD;K;6;CP$UIDd;3;261E;E;S;13;CPApplicationD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;E;E;S;8;delegateS;15;arrangeInFront:S;19;performMiniaturize:S;29;orderFrontStandardAboutPanel:S;13;openDocument:S;13;performClose:S;13;saveDocument:S;15;saveDocumentAs:S;12;newDocument:S;9;showHelp:S;22;revertDocumentToSaved:S;21;clearRecentDocuments:S;13;stopSpeaking:S;14;startSpeaking:S;5;copy:S;10;selectAll:S;4;cut:S;14;checkSpelling:S;7;delete:S;6;paste:S;15;showGuessPanel:S;5;undo:S;23;performFindPanelAction:S;29;centerSelectionInVisibleArea:S;5;redo:S;30;toggleContinuousSpellChecking:S;12;performZoom:S;19;toggleToolbarShown:S;31;runToolbarCustomizationPalette:S;22;toggleGrammarChecking:S;24;toggleSmartInsertDelete:S;33;toggleAutomaticQuoteSubstitution:S;29;toggleAutomaticLinkDetection:S;17;insertLoremIpsum:S;17;toggleAllowsUndo:S;9;AMainMenuS;11;_CPMainMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;55E;D;K;6;CP$UIDd;2;60E;D;K;6;CP$UIDd;2;72E;D;K;6;CP$UIDd;3;108E;D;K;6;CP$UIDd;3;112E;D;K;6;CP$UIDd;3;118E;E;E;S;22;TextEdit by CappuccinoS;14;submenuAction:D;K;10;$classnameS;20;_CPCibCustomResourceK;8;$classesA;S;20;_CPCibCustomResourceS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;164E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;262E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;263E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;265E;E;D;K;6;$classD;K;6;CP$UIDd;3;164E;K;32;_CPCibCustomResourceClassNameKeyD;K;6;CP$UIDd;3;262E;K;35;_CPCibCustomResourceResourceNameKeyD;K;6;CP$UIDd;3;266E;K;33;_CPCibCustomResourcePropertiesKeyD;K;6;CP$UIDd;3;267E;E;d;7;1048576S;18;_CPApplicationMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;57E;D;K;6;CP$UIDd;2;58E;D;K;6;CP$UIDd;2;59E;E;E;S;28;About TextEdit by CappuccinoT;S;0;F;S;9;Settings…S;1;,S;4;FileD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;62E;D;K;6;CP$UIDd;2;63E;D;K;6;CP$UIDd;2;64E;D;K;6;CP$UIDd;2;67E;D;K;6;CP$UIDd;2;68E;D;K;6;CP$UIDd;2;69E;D;K;6;CP$UIDd;2;70E;D;K;6;CP$UIDd;2;71E;E;E;S;3;NewS;1;nS;5;Open…S;1;oS;11;Open RecentS;22;_CPRecentDocumentsMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;66E;E;E;S;10;Clear MenuS;5;CloseS;1;wS;4;SaveS;1;sS;8;Save As…S;1;Sd;7;1179648S;15;Revert to SavedS;4;EditD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;74E;D;K;6;CP$UIDd;2;75E;D;K;6;CP$UIDd;2;76E;D;K;6;CP$UIDd;2;77E;D;K;6;CP$UIDd;2;78E;D;K;6;CP$UIDd;2;79E;D;K;6;CP$UIDd;2;80E;D;K;6;CP$UIDd;2;81E;D;K;6;CP$UIDd;2;82E;D;K;6;CP$UIDd;2;83E;D;K;6;CP$UIDd;2;84E;D;K;6;CP$UIDd;2;85E;D;K;6;CP$UIDd;2;86E;D;K;6;CP$UIDd;2;93E;D;K;6;CP$UIDd;2;99E;D;K;6;CP$UIDd;3;104E;E;E;S;4;UndoS;1;zS;4;RedoS;1;ZS;11;Allows UndoS;3;CutS;1;xS;4;CopyS;1;cS;5;PasteS;1;vS;6;DeleteS;10;Select AllS;1;aS;18;Insert Lorem IpsumS;4;FindD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;88E;D;K;6;CP$UIDd;2;89E;D;K;6;CP$UIDd;2;90E;D;K;6;CP$UIDd;2;91E;D;K;6;CP$UIDd;2;92E;E;E;S;5;Find…d;1;1S;1;fS;9;Find Nextd;1;2S;1;gS;13;Find Previousd;1;3S;1;GS;22;Use Selection for Findd;1;7S;1;eS;17;Jump to SelectionS;1;jS;20;Spelling and GrammarD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;95E;D;K;6;CP$UIDd;2;96E;D;K;6;CP$UIDd;2;97E;D;K;6;CP$UIDd;2;98E;E;E;S;14;Show Spelling…S;1;:S;14;Check SpellingS;1;;S;27;Check Spelling While TypingS;27;Check Grammar With SpellingS;13;SubstitutionsD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;101E;D;K;6;CP$UIDd;3;102E;D;K;6;CP$UIDd;3;103E;E;E;S;16;Smart Copy/PasteS;12;Smart QuotesS;11;Smart LinksS;6;SpeechD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;106E;D;K;6;CP$UIDd;3;107E;E;E;S;14;Start SpeakingS;13;Stop SpeakingS;4;ViewD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;110E;D;K;6;CP$UIDd;3;111E;E;E;S;12;Show ToolbarS;1;td;7;1572864S;18;Customize Toolbar…S;6;WindowS;14;_CPWindowsMenuD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;114E;D;K;6;CP$UIDd;3;115E;D;K;6;CP$UIDd;3;116E;D;K;6;CP$UIDd;3;117E;E;E;S;8;MinimizeS;1;mS;4;ZoomS;18;Bring All to FrontS;4;HelpD;K;6;$classD;K;6;CP$UIDd;1;3E;K;10;CP.objectsA;D;K;6;CP$UIDd;3;120E;E;E;S;27;TextEdit by Cappuccino HelpS;1;?S;13;AppControllerS;7;CPImageS;15;CPMenuCheckmarkD;K;10;$classnameS;12;CPDictionaryK;8;$classesA;S;12;CPDictionaryS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;264E;K;10;CP.objectsD;K;9;frameworkD;K;6;CP$UIDd;3;172E;K;16;bundleIdentifierD;K;6;CP$UIDd;3;172E;K;4;sizeD;K;6;CP$UIDd;3;269E;E;E;S;16;CPMenuMixedStateD;K;6;$classD;K;6;CP$UIDd;3;264E;K;10;CP.objectsD;K;9;frameworkD;K;6;CP$UIDd;3;172E;K;16;bundleIdentifierD;K;6;CP$UIDd;3;172E;K;4;sizeD;K;6;CP$UIDd;3;270E;E;E;D;K;10;$classnameS;21;_CPKeyedArchiverValueK;8;$classesA;S;21;_CPKeyedArchiverValueS;7;CPValueS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;3;268E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;271E;E;D;K;6;$classD;K;6;CP$UIDd;3;268E;K;15;CPValueValueKeyD;K;6;CP$UIDd;3;271E;E;S;22;{"width":0,"height":0}E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E; \ No newline at end of file diff --git a/Resources/TextEditor/Resources/MainMenu.xib b/Resources/TextEditor/Resources/MainMenu.xib index 15dc2fcaa..a8f2564b7 100644 --- a/Resources/TextEditor/Resources/MainMenu.xib +++ b/Resources/TextEditor/Resources/MainMenu.xib @@ -99,6 +99,15 @@ + + + + + + + + + diff --git a/Resources/TextEditor/WORKLIST.md b/Resources/TextEditor/WORKLIST.md index 5ae62e177..0b8bc6881 100644 --- a/Resources/TextEditor/WORKLIST.md +++ b/Resources/TextEditor/WORKLIST.md @@ -20,10 +20,6 @@ TextEditor is a document-based test application and a tutorial. When the app use - **`CPTextView` has no ruler control API.** `usesRuler`, `setUsesRuler:`, `setRulerVisible:` and `toggleRuler:` do not exist. `isRulerVisible` always returns `NO` (`CPTextView.j:2088`). - **`CPRulerMarker` ignores `markerLocation`.** `initWithRulerView:markerLocation:imageValue:representedObject:` uses `imageValue` as the location. -### Undo and redo - -- **Undo stays enabled when `allowsUndo` is `NO`.** `-[CPTextView undo:]` then does nothing (`CPTextView.j:679`). The text view must disable the menu item in that case. - ### Clipboard - **Paste and Cut from the Edit menu do nothing.** `-[CPTextView paste:]` (`CPTextView.j:521`) and `cut:` (`:1754`) return unless the current event is `CPAppKitDefined`. Only the browser's native clipboard events, from the keyboard, create that event. @@ -43,6 +39,10 @@ TextEditor is a document-based test application and a tutorial. When the app use - **The content view's resizing setting does not reach the cib.** Making the document window's content view resize with the window in `DocumentWindow.xib` produces a byte-identical `DocumentWindow.cib`. CPView omits the autoresizing mask from the archive only when it is `CPViewNotSizable` (`CPView.j:4016`), so the content view is archived as not sizable. Not yet determined whether `ibtool` or nib2cib drops the setting. The app still behaves correctly, because the window resizes its content view itself. +### Menus and key equivalents (needs discussion) + +- **The key equivalent of a disabled menu item reaches the browser.** `-[CPMenu performKeyEquivalent:]` (`CPMenu.j:1059`) stops the browser's default action only when the matching item is enabled. For a disabled item it reports the key as handled, but the browser still acts on it: with File > Close disabled, Cmd-W closes the browser tab. Cocoa consumes the key equivalent of a disabled item with a beep. Stopping the browser's default for disabled items as well would match Cocoa for most keys, but not all: some browsers do not let a page block certain shortcuts, such as Cmd-W, Cmd-N and Cmd-T in Chrome, and Copy, Cut and Paste must keep reaching the browser for its clipboard events. This needs careful thought, and perhaps discussion, before any change. + ### Platform - **Key equivalents on platforms other than macOS.** Filed as an issue. @@ -70,4 +70,5 @@ TextEditor is a document-based test application and a tutorial. When the app use - View > Show Toolbar and Hide Toolbar: the item's title follows the toolbar's visibility. - The Window menu lists the open document windows, marks the main window with a check mark and brings a window to the front when chosen. Bring All to Front can be tested once documents open in separate browser windows. - The About panel shows the display name from `CPBundleDisplayName`. +- Edit > Allow Undo turns undo on and off for the active document. With undo off, Undo and Redo stay disabled, and the check mark follows the document in front. - Builds with both the legacy toolchain and capp-build. diff --git a/Resources/recipes.txt b/Resources/recipes.txt index 1540df325..786f54b62 100644 --- a/Resources/recipes.txt +++ b/Resources/recipes.txt @@ -1,150 +1,150 @@ -1792795662824|ArrayControllerInitialSelectionTest| -1792795662838|ArrayControllerRemovingFirstTest| -1792795662851|ArrayControllerTest| -1792795662865|AttachedSheet2Test| -1792795662878|AttachedSheetTest| -1792795662892|BindingContentArrayTest| -1792795662905|CGCanvasContextTest| -1792795662918|CGPathTest| -1792795662932|CPAlertTest| -1792795662945|CPAnimatablePropertyContainerTest| -1792795662958|CPAnimationContextTest| -1792795662972|CPAnimationTest| -1792795662985|CPBinderEchoBug| -1792795662999|CPBoxCibTest| -1792795663012|CPBoxTest| -1792795663026|CPBrowserTest| -1792795663039|CPButtonBarTest| -1792795663053|CPButtonKeyEquivalentDefaultTest| -1792795663066|CPButtonTest| -1792795663080|CPByteCountFormatterTest| -1792795663093|CPCollectionViewNibTest| -1792795663106|CPColorCPImageDescriptionTest| -1792795663120|CPColorWellBindingsTest| -1792795663133|CPComboBoxTest| -1792795663147|CPControlPerformClickExceptionTest| -1792795663161|CPControlSizeTest| -1792795663174|CPCursorTest| -1792795663188|CPDateFormatterTest| -1792795663201|CPDatePickerTest| -1792795663214|CPDictionaryControllerTest| -1792795663228|CPDocumentControllerTest| -1792795663242|CPFormatterTest| -1792795663255|CPGraphicsTest| -1792795663268|CPImageAndTextViewImageScalingTest| -1792795663282|CPImageViewAlignmentScaling| -1792795663295|CPImageViewTest| -1792795663309|CPImageViewbindingsTest| -1792795663322|CPLanguageModelChatbotTest| -1792795663336|CPLevelIndicator| -1792795663349|CPLevelIndicatorTest| -1792795663362|CPLocalizationTest| -1792795663376|CPLogTest| -1792795663389|CPMarkdownParserTest| -1792795663403|CPMenuCALayerTest| -1792795663416|CPMenuEnabledBindingsTest| -1792795663430|CPMenuKeyEquivalentsTest| -1792795663443|CPMenuRemoveAllTest| -1792795663457|CPMenuSubmenuPlacementConstraints| -1792795663470|CPMenuTest| -1792795663484|CPOutlineViewCibTest| -1792795663497|CPOutlineViewTest| -1792795663511|CPOutlineViewViewBasedCibTest| -1792795663524|CPPanelTest| -1792795663538|CPPlatformWindow| -1792795663551|CPPlattformWindowMinSize| -1792795663564|CPPopUpButtonBindingsTest| -1792795663578|CPPopUpButtonTest| -1792795663591|CPPopoverTest| -1792795663605|CPPredicateEditorCibTest| -1792795663618|CPProgressIndicatorTest| -1792795663632|CPPropertyListSerializationTest| -1792795663645|CPRadioBindingsTest| -1792795663658|CPRuleEditorCibTest| -1792795663672|CPRuleEditorTest| -1792795663685|CPScrollView2Test| -1792795663699|CPScrollViewTest| -1792795663712|CPSearchFieldPredicateBinding| -1792795663725|CPSearchFieldTest| -1792795663739|CPSegmentedControlBindingsTest| -1792795663752|CPSegmentedControlTest| -1792795663766|CPSoundTest| -1792795663779|CPSplitViewDividerTest| -1792795663792|CPSplitViewTest| -1792795663806|CPStackViewTest| -1792795663819|CPStepperBindingsTest| -1792795663833|CPStepperNibTest| -1792795663846|CPTabView2Test| -1792795663859|CPTabViewBindingsTest| -1792795663873|CPTabViewNibTest| -1792795663886|CPTableViewGroupRowsTest| -1792795663899|CPTextFieldEditingStyleTest| -1792795663913|CPTextFieldHeightTest| -1792795663926|CPTextFieldMovementsTest| -1792795663940|CPTextFieldMultiLineTest| -1792795663953|CPTextFieldTest| -1792795663967|CPTextViewCibTest| -1792795663980|CPTextViewDelegateAndNotificationsTest| -1792795663994|CPTimeZoneTest| -1792795664007|CPTokenFieldTest| -1792795664021|CPToolTipTest| -1792795664034|CPToolbarTest| -1792795664048|CPTreeControllerTest| -1792795664062|CPURLConnectionAsyncTest| -1792795664076|CPURLConnectionSynchronousTest| -1792795664089|CPUserDefaultsControllerTest| -1792795664103|CPUserDefaultsTest| -1792795664117|CPUserNotificationTest| -1792795664130|CPViewControllerTest| -1792795664143|CPVisualEffectViewTest| -1792795664157|CPWebViewTest| -1792795664170|CPWebViewTest2| -1792795664184|CPWindowLiveResizeTest| -1792795664197|CPWindowMovableTest| -1792795664210|CPWindowResizeStyleTest| -1792795664224|ChildWindowsTest| -1792795664237|CompilationTests| -1792795664250|ContinuouslyUpdatesValueBinding| -1792795664264|CopyAndPasteTest| -1792795664277|CrossOriginTest| -1792795664290|FF4096Test| -1792795664304|FontEnhancementTest| -1792795664317|FontMetricsExplorerTest| -1792795664330|KeyEquivalentsTest| -1792795664343|KeyViewLoopTest| -1792795664357|KeyWindowInTheBackgroundActivation| -1792795664370|LayoutTest| -1792795664383|LoadDynamicFrameworksTest| -1792795664397|LoadTimeTest| -1792795664410|LongBindingsTest| -1792795664423|MobileTest| -1792795664437|MultipleValueBindingsTest| -1792795664450|NSBoxTest| -1792795664463|NSBrowserTest| -1792795664477|NewTextFieldBezelTest| -1792795664490|Nib2CibAlignmentTest| -1792795664503|Nib2CibBaselineAlignementTest| -1792795664517|Nib2CibSubviewsOrderTest| -1792795664530|NibAppRemixedTest| -1792795664543|PatternFillTest| -1792795664557|PlatformWindowsTest| -1792795664570|PopUpButtonEscTest| -1792795664583|PredicateWithFormatTest| -1792795664596|ResignFirstResponderWithCPControlTextDidEndEditingTest| -1792795664610|Scaling2Test| -1792795664623|ScalingTest| -1792795664636|ScrollviewThemingTest| -1792795664650|SimpleBindings2Test| -1792795664663|SizeToFitTest| -1792795664676|SmartFoldersDemo| -1792795664690|SmartFoldersTest| -1792795664703|TableTest| -1792795664716|TextEditor| -1792795664730|ThemeBrowserTest| -1792795664743|ThemeKitchenSinkTest| -1792795664756|TrackingAreaTest| -1792795664770|UndoRedoWithMenuUpdateTest| -1792795664783|UserlandNSTest| -1792795664797|WindowSheetOrderTest| -1792795664810|layoutEphemeralSubviewTest| -1792795664823|performKeyEquivalentTest| +1792797830379|ArrayControllerInitialSelectionTest| +1792797830398|ArrayControllerRemovingFirstTest| +1792797830416|ArrayControllerTest| +1792797830436|AttachedSheet2Test| +1792797830455|AttachedSheetTest| +1792797830474|BindingContentArrayTest| +1792797830492|CGCanvasContextTest| +1792797830510|CGPathTest| +1792797830529|CPAlertTest| +1792797830548|CPAnimatablePropertyContainerTest| +1792797830567|CPAnimationContextTest| +1792797830585|CPAnimationTest| +1792797830604|CPBinderEchoBug| +1792797830623|CPBoxCibTest| +1792797830641|CPBoxTest| +1792797830660|CPBrowserTest| +1792797830679|CPButtonBarTest| +1792797830697|CPButtonKeyEquivalentDefaultTest| +1792797830716|CPButtonTest| +1792797830734|CPByteCountFormatterTest| +1792797830753|CPCollectionViewNibTest| +1792797830772|CPColorCPImageDescriptionTest| +1792797830790|CPColorWellBindingsTest| +1792797830809|CPComboBoxTest| +1792797830828|CPControlPerformClickExceptionTest| +1792797830847|CPControlSizeTest| +1792797830867|CPCursorTest| +1792797830886|CPDateFormatterTest| +1792797830905|CPDatePickerTest| +1792797830925|CPDictionaryControllerTest| +1792797830944|CPDocumentControllerTest| +1792797830962|CPFormatterTest| +1792797830982|CPGraphicsTest| +1792797831108|CPImageAndTextViewImageScalingTest| +1792797831197|CPImageViewAlignmentScaling| +1792797831383|CPImageViewTest| +1792797831571|CPImageViewbindingsTest| +1792797831758|CPLanguageModelChatbotTest| +1792797831947|CPLevelIndicator| +1792797831113|CPLevelIndicatorTest| +1792797831132|CPLocalizationTest| +1792797831151|CPLogTest| +1792797831170|CPMarkdownParserTest| +1792797831188|CPMenuCALayerTest| +1792797831207|CPMenuEnabledBindingsTest| +1792797831225|CPMenuKeyEquivalentsTest| +1792797831244|CPMenuRemoveAllTest| +1792797831263|CPMenuSubmenuPlacementConstraints| +1792797831281|CPMenuTest| +1792797831300|CPOutlineViewCibTest| +1792797831318|CPOutlineViewTest| +1792797831337|CPOutlineViewViewBasedCibTest| +1792797831356|CPPanelTest| +1792797831374|CPPlatformWindow| +1792797831393|CPPlattformWindowMinSize| +1792797831411|CPPopUpButtonBindingsTest| +1792797831430|CPPopUpButtonTest| +1792797831448|CPPopoverTest| +1792797831467|CPPredicateEditorCibTest| +1792797831486|CPProgressIndicatorTest| +1792797831505|CPPropertyListSerializationTest| +1792797831524|CPRadioBindingsTest| +1792797831542|CPRuleEditorCibTest| +1792797831561|CPRuleEditorTest| +1792797831579|CPScrollView2Test| +1792797831598|CPScrollViewTest| +1792797831617|CPSearchFieldPredicateBinding| +1792797831635|CPSearchFieldTest| +1792797831654|CPSegmentedControlBindingsTest| +1792797831673|CPSegmentedControlTest| +1792797831692|CPSoundTest| +1792797831712|CPSplitViewDividerTest| +1792797831730|CPSplitViewTest| +1792797831749|CPStackViewTest| +1792797831769|CPStepperBindingsTest| +1792797831787|CPStepperNibTest| +1792797831806|CPTabView2Test| +1792797831825|CPTabViewBindingsTest| +1792797831844|CPTabViewNibTest| +1792797831863|CPTableViewGroupRowsTest| +1792797831882|CPTextFieldEditingStyleTest| +1792797831900|CPTextFieldHeightTest| +1792797831919|CPTextFieldMovementsTest| +1792797831938|CPTextFieldMultiLineTest| +1792797831956|CPTextFieldTest| +1792797831975|CPTextViewCibTest| +1792797831994|CPTextViewDelegateAndNotificationsTest| +1792797832139|CPTimeZoneTest| +1792797832335|CPTokenFieldTest| +1792797832529|CPToolTipTest| +1792797832723|CPToolbarTest| +1792797832926|CPTreeControllerTest| +1792797832112|CPURLConnectionAsyncTest| +1792797832131|CPURLConnectionSynchronousTest| +1792797832150|CPUserDefaultsControllerTest| +1792797832168|CPUserDefaultsTest| +1792797832187|CPUserNotificationTest| +1792797832206|CPViewControllerTest| +1792797832224|CPVisualEffectViewTest| +1792797832242|CPWebViewTest| +1792797832261|CPWebViewTest2| +1792797832280|CPWindowLiveResizeTest| +1792797832299|CPWindowMovableTest| +1792797832317|CPWindowResizeStyleTest| +1792797832336|ChildWindowsTest| +1792797832355|CompilationTests| +1792797832374|ContinuouslyUpdatesValueBinding| +1792797832393|CopyAndPasteTest| +1792797832411|CrossOriginTest| +1792797832430|FF4096Test| +1792797832449|FontEnhancementTest| +1792797832468|FontMetricsExplorerTest| +1792797832486|KeyEquivalentsTest| +1792797832505|KeyViewLoopTest| +1792797832525|KeyWindowInTheBackgroundActivation| +1792797832544|LayoutTest| +1792797832562|LoadDynamicFrameworksTest| +1792797832581|LoadTimeTest| +1792797832600|LongBindingsTest| +1792797832619|MobileTest| +1792797832638|MultipleValueBindingsTest| +1792797832656|NSBoxTest| +1792797832675|NSBrowserTest| +1792797832694|NewTextFieldBezelTest| +1792797832713|Nib2CibAlignmentTest| +1792797832731|Nib2CibBaselineAlignementTest| +1792797832750|Nib2CibSubviewsOrderTest| +1792797832769|NibAppRemixedTest| +1792797832787|PatternFillTest| +1792797832806|PlatformWindowsTest| +1792797832824|PopUpButtonEscTest| +1792797832843|PredicateWithFormatTest| +1792797832862|ResignFirstResponderWithCPControlTextDidEndEditingTest| +1792797832881|Scaling2Test| +1792797832899|ScalingTest| +1792797832918|ScrollviewThemingTest| +1792797832936|SimpleBindings2Test| +1792797832956|SizeToFitTest| +1792797832975|SmartFoldersDemo| +1792797832994|SmartFoldersTest| +1792797833133|TableTest| +1792797833319|TextEditor| +1792797833506|ThemeBrowserTest| +1792797833694|ThemeKitchenSinkTest| +1792797833879|TrackingAreaTest| +1792797833106|UndoRedoWithMenuUpdateTest| +1792797833126|UserlandNSTest| +1792797833145|WindowSheetOrderTest| +1792797833164|layoutEphemeralSubviewTest| +1792797833183|performKeyEquivalentTest|