![]() System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /usr/include/GNUstep/AppKit/ |
Upload File : |
/* -*-objc-*- NSText.h The text object Copyright (C) 1996 Free Software Foundation, Inc. Author: Scott Christley <scottc@net-community.com> Date: 1996 Author: Felipe A. Rodriguez <far@ix.netcom.com> Date: July 1998 Author: Daniel Böhringer <boehring@biomed.ruhr-uni-bochum.de> Date: August 1998 Author: Nicola Pero <n.pero@mi.flashnet.it> Date: December 2000 This file is part of the GNUstep GUI Library. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; see the file COPYING.LIB. If not, see <http://www.gnu.org/licenses/> or write to the Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef _GNUstep_H_NSText #define _GNUstep_H_NSText /* * The NSText class is now an abstract class. When you allocate an * instance of NSText, an instance of NSTextView is always allocated * instead. * * But you can still subclass NSText to implement your own text * editing class not derived from NSTextView. NSText declares general * methods that a text editing object should have; it has some helper * methods which are simple wrappers around the real basic editing * methods. The real editing methods are not implemented in NSText, * which is why it is abstract. To make a working subclass, you need to * implement these methods, marked as "PRIMITIVE" below. * * The working subclass could potentially be implemented in absolutely * *any* way you want. I have been told that some versions of Emacs can * be embedded as an X subwindow inside alien widgets and windows - so * yes, potentially if you are able to figure out how to embed Emacs * inside the GNUstep NSView tree, you can write a subclass of NSText * which just uses Emacs. */ #import <Foundation/NSObject.h> #import <Foundation/NSRange.h> #import <AppKit/NSView.h> #import <AppKit/NSSpellProtocol.h> //#import <AppKit/NSStringDrawing.h> @class NSAttributedString; @class NSData; @class NSNotification; @class NSString; @class NSColor; @class NSFont; typedef NSInteger NSTextAlignment; enum { NSLeftTextAlignment = 0, NSRightTextAlignment, NSCenterTextAlignment, NSJustifiedTextAlignment, NSNaturalTextAlignment }; #if OS_API_VERSION(MAC_OS_X_VERSION_10_11, GS_API_LATEST) enum { NSTextAlignmentLeft = NSLeftTextAlignment, NSTextAlignmentRight = NSRightTextAlignment, NSTextAlignmentCenter = NSCenterTextAlignment, NSTextAlignmentJustified = NSJustifiedTextAlignment, NSTextAlignmentNatural = NSNaturalTextAlignment }; #endif enum { NSTextWritingDirectionEmbedding = (0 << 1), NSTextWritingDirectionOverride = (1 << 1) }; enum { NSIllegalTextMovement = 0, NSReturnTextMovement = 0x10, NSTabTextMovement = 0x11, NSBacktabTextMovement = 0x12, NSLeftTextMovement = 0x13, NSRightTextMovement = 0x14, NSUpTextMovement = 0x15, NSDownTextMovement = 0x16, NSCancelTextMovement = 0x17, NSOtherTextMovement = 0 }; enum { NSParagraphSeparatorCharacter = 0x2029, NSLineSeparatorCharacter = 0x2028, NSTabCharacter = 0x0009, NSFormFeedCharacter = 0x000c, NSNewlineCharacter = 0x000a, NSCarriageReturnCharacter = 0x000d, NSEnterCharacter = 0x0003, NSBackspaceCharacter = 0x0008, NSBackTabCharacter = 0x0019, NSDeleteCharacter = 0x007f, }; /* The following are required by the original openstep doc. */ enum { NSBackspaceKey = 8, NSCarriageReturnKey = 13, NSDeleteKey = 0x7f, NSBacktabKey = 25 }; @interface NSText : NSView <NSChangeSpelling, NSIgnoreMisspelledWords> { } /* * Getting and Setting Contents */ /* these aren't in OPENSTEP */ - (void) replaceCharactersInRange: (NSRange)aRange withRTF: (NSData*)rtfData; - (void) replaceCharactersInRange: (NSRange)aRange withRTFD: (NSData*)rtfdData; /* PRIMITIVE */ - (void) replaceCharactersInRange: (NSRange)aRange withString: (NSString*)aString; /* PRIMITIVE */ -(void) replaceCharactersInRange: (NSRange)aRange /* GNUstep extension */ withAttributedString: (NSAttributedString *)attrString; /* PRIMITIVE */ - (void) setString: (NSString*)aString; /* PRIMITIVE */ - (NSString*) string; /* * Old fashioned OpenStep methods (wrappers for the previous ones) */ - (void) replaceRange: (NSRange)aRange withString: (NSString*)aString; /* not OPENSTEP */ - (void) replaceRange: (NSRange)aRange withRTF: (NSData*)rtfData; - (void) replaceRange: (NSRange)aRange withRTFD: (NSData*)rtfdData; - (void) setText: (NSString*)aString; - (void) setText: (NSString*)aString range: (NSRange)aRange; /* not OPENSTEP */ - (NSString*) text; /* * Graphic attributes */ /* PRIMITIVE */ - (NSColor*) backgroundColor; /* PRIMITIVE */ - (BOOL) drawsBackground; /* PRIMITIVE */ - (void) setBackgroundColor: (NSColor*)color; /* PRIMITIVE */ - (void) setDrawsBackground: (BOOL)flag; /* * Managing Global Characteristics */ - (BOOL) importsGraphics; /* PRIMITIVE */ - (BOOL) isEditable; /* PRIMITIVE */ - (BOOL) isFieldEditor; /* PRIMITIVE */ - (BOOL) isRichText; /* PRIMITIVE */ - (BOOL) isSelectable; /* PRIMITIVE */ - (void) setEditable: (BOOL)flag; /* PRIMITIVE */ - (void) setFieldEditor: (BOOL)flag; /* PRIMITIVE */ - (void) setImportsGraphics: (BOOL)flag; /* PRIMITIVE */ - (void) setRichText: (BOOL)flag; /* PRIMITIVE */ - (void) setSelectable: (BOOL)flag; /* PRIMITIVE */ /* * Using the font panel */ - (void) setUsesFontPanel: (BOOL)flag; /* PRIMITIVE */ - (BOOL) usesFontPanel; /* PRIMITIVE */ /* * Managing the Ruler */ - (BOOL) isRulerVisible; /* PRIMITIVE */ - (void) toggleRuler: (id)sender; /* PRIMITIVE */ /* * Managing the Selection */ - (NSRange) selectedRange; - (void) setSelectedRange: (NSRange)range; /* * Responding to Editing Commands */ - (void) copy: (id)sender; /* PRIMITIVE */ - (void) copyFont: (id)sender; /* PRIMITIVE */ - (void) copyRuler: (id)sender; /* PRIMITIVE */ - (void) cut: (id)sender; - (void) delete: (id)sender; /* PRIMITIVE */ - (void) paste: (id)sender; /* PRIMITIVE */ - (void) pasteFont: (id)sender; /* PRIMITIVE */ - (void) pasteRuler: (id)sender; /* PRIMITIVE */ - (void) selectAll: (id)sender; /* * Managing Font */ - (void) changeFont: (id)sender; /* PRIMITIVE */ - (NSFont*) font; /* PRIMITIVE */ - (void) setFont: (NSFont*)font; /* PRIMITIVE */ - (void) setFont: (NSFont*)font range: (NSRange)aRange; /* PRIMITIVE */ /* Old OpenStep name for the same method. */ - (void) setFont: (NSFont*)font ofRange: (NSRange)aRange; /* * Managing Alignment */ - (NSTextAlignment) alignment; /* PRIMITIVE */ - (void) setAlignment: (NSTextAlignment)mode; /* PRIMITIVE */ - (void) alignCenter: (id)sender; /* PRIMITIVE */ - (void) alignLeft: (id)sender; /* PRIMITIVE */ - (void) alignRight: (id)sender; /* PRIMITIVE */ /* * Text colour */ - (void) setTextColor: (NSColor*)color range: (NSRange)aRange; /* PRIMITIVE */ /* not OPENSTEP */ - (void) setColor: (NSColor*)color ofRange: (NSRange)aRange; /* PRIMITIVE */ - (void) setTextColor: (NSColor*)color; /* PRIMITIVE */ - (NSColor*) textColor; /* PRIMITIVE */ /* * Text attributes */ - (void) subscript: (id)sender; /* PRIMITIVE */ - (void) superscript: (id)sender; /* PRIMITIVE */ - (void) underline: (id)sender; /* PRIMITIVE */ - (void) unscript: (id)sender; /* PRIMITIVE */ /* * Reading and Writing RTFD Files */ -(BOOL) readRTFDFromFile: (NSString*)path; /* PRIMITIVE */ -(BOOL) writeRTFDToFile: (NSString*)path atomically: (BOOL)flag; /* PRIMITIVE */ -(NSData*) RTFDFromRange: (NSRange)aRange; /* PRIMITIVE */ -(NSData*) RTFFromRange: (NSRange)aRange; /* PRIMITIVE */ /* * Sizing the Frame Rectangle */ - (BOOL) isHorizontallyResizable; /* PRIMITIVE */ - (BOOL) isVerticallyResizable; /* PRIMITIVE */ - (NSSize) maxSize; /* PRIMITIVE */ - (NSSize) minSize; /* PRIMITIVE */ - (void) setHorizontallyResizable: (BOOL)flag; /* PRIMITIVE */ - (void) setMaxSize: (NSSize)newMaxSize; /* PRIMITIVE */ - (void) setMinSize: (NSSize)newMinSize; /* PRIMITIVE */ - (void) setVerticallyResizable: (BOOL)flag; /* PRIMITIVE */ - (void) sizeToFit; /* PRIMITIVE */ /* * Spelling */ - (void) checkSpelling: (id)sender; /* PRIMITIVE */ - (void) showGuessPanel: (id)sender; /* * Scrolling */ - (void) scrollRangeToVisible: (NSRange)aRange; /* PRIMITIVE */ /* * Managing the Delegate */ - (id) delegate; /* PRIMITIVE */ - (void) setDelegate: (id)anObject; /* PRIMITIVE */ /* * NSChangeSpelling protocol */ - (void) changeSpelling: (id)sender; /* PRIMITIVE */ /* * NSIgnoreMisspelledWords protocol */ - (void) ignoreSpelling: (id)sender; /* PRIMITIVE */ /* not OPENSTEP */ @end @interface NSText (GNUstepExtensions) - (NSUInteger) textLength; /* PRIMITIVE */ @end /* Notifications */ APPKIT_EXPORT NSString *NSTextDidBeginEditingNotification; APPKIT_EXPORT NSString *NSTextDidEndEditingNotification; APPKIT_EXPORT NSString *NSTextDidChangeNotification; @interface NSObject (NSTextDelegate) - (BOOL) textShouldBeginEditing: (NSText*)textObject; /* YES means do it */ - (BOOL) textShouldEndEditing: (NSText*)textObject; /* YES means do it */ - (void) textDidBeginEditing: (NSNotification*)notification; - (void) textDidEndEditing: (NSNotification*)notification; - (void) textDidChange: (NSNotification*)notification; /* Any keyDown or paste which changes the contents causes this */ @end #endif // _GNUstep_H_NSText