Difference between revisions of "Snippets"

From GNUstepWiki
Jump to navigation Jump to search
(Redirect to category)
 
(9 intermediate revisions by 3 users not shown)
Line 1: Line 1:
−
== Testing ''chars'' entered by users in ''NSTextField'' ==
+
{{category redirect|Snippets}}
−
(just for the case if someone else has the same problem)
 
−
 
 
−
1. Subclass NSTextField
 
−
 
 
−
2. In your subclass adopt the
 
−
        - (BOOL) textView: (NSTextView*) textView
 
−
        shouldChangeTextInRange: (NSRange) range
 
−
        replacementString: (NSString*) replacementString
 
−
method.
 
−
 
 
−
3. In this method you can access to the ''replacementString'' as ''char'' with the following line:
 
−
        char c = *([replacementString cString) + 0]; 
 
−
 
 
−
4. Then you are free to examinate the conditions...
 
−
 
 
−
== Limiting text input length in ''NSTextField'' ==
 
−
(based on Alexander Malmberg's snippet)
 
−
 
 
−
1. Subclass NSTextField
 
−
 
 
−
2. In your subclass adopt the
 
−
        - (BOOL) textView: (NSTextView*) textView
 
−
        shouldChangeTextInRange: (NSRange) range
 
−
        replacementString: (NSString*) replacementString
 
−
method.
 
−
 
 
−
3. Create an instance variable setting method:
 
−
          - (void) setMaxLength: (int) ml
 
−
          {
 
−
            maxLength = ml;
 
−
          }  
 
−
 
 
−
4. Then fill your method 2. with this:
 
−
          int newLength;
 
−
          /* The exact change isn't known. Disallow the change to be safe. */
 
−
          if (range.location == NSNotFound)
 
−
                return NO;
 
−
          newLength=[[textView textStorage] length]+[replacementString length]-range.length;
 
−
          if (newLength>maxLength)
 
−
                return YES; //allowing
 
−
          else
 
−
                return NO; // not allowing
 

Latest revision as of 09:54, 4 January 2007

This page is being or has been relocated.

The contents are now (or should soon be) located at Category:Snippets.