Changeset [918f6fbb8f6de92550e9940f21df377fadc0aa02] by Aparajita Fishman

July 9th, 2011 @ 02:05 PM

CPFormatter support, bug fixes...

  • Test application.

CPControl

  • Moved _formatter declaration up next to value, it was in the Target-Action Support section before.

  • sendAction:to: should return a BOOL.

  • Support for CPFormatter -editingStringForObjectValue.

  • If a nil string is passed to -setStringValue in Cocoa, it raises an invalid parameter assertion and does nothing.

  • Per Cocoa, if setting a string value fails, it tries again with an empty string.

  • Removed a few extra blank lines.

  • Changed NULL to nil.

CPTextField

  • The string value is now cached in _stringValue to avoid constant calls to the formatter.

  • There were several places where references to _inputElement were not wrapped with #if PLATFORM(DOM).

  • When resigning first responder, if there is a formatter and formatting fails, reject the resignation and keep focus. Also, if the delegate responds to control:didFailToFormatString:errorDescription:, invoke it.

  • _willBecomeFirstResponderByClick was not being set to NO when resigning. As a result, if you clicked in a field, tabbed to another field, and tabbed back to the original field, it would not select the text because it thought there was a mouse click.

  • Don't send _sendStringValue: in keyUp: if the value has not changed. Previously it would do that for non-printing keys like navigation keys.

  • insertNewLine: validates the string the same way resigning does.

  • insertNewLine: would not send textDidEndEditing: if the field had no action, but it should.

  • insertNewLine: should select all text (per Cocoa).

  • insertNewLineIgnoringFieldEditor: and insertTabIgnoringFieldEditor: were not replacing the selection, Cocoa docs say they should.

  • Per Cocoa, when setting an object value and there is a formatter, the value is first formatted as a string. If that fails, an object value for an empty string is attempted.

CPFormatter

  • Fixed up the docs to match the method signatures.

  • Indicated with "Ref" in argument types if the argument is pass by reference.

  • isPartialStringValid:newEditingString:errorDescription: has a default implementation in Cocoa that nils the return values and returns YES.

  • Fixed the name of isPartialStringValid:proposedSelectedRange:originalString:originalSelectedRange:errorDescription:

  • isPartialStringValid:proposedSelectedRange:originalString:originalSelectedRange:errorDescription: has a default implementation in Cocoa that invokes isPartialStringValid:newEditingString:errorDescription: https://github.com/280north/cappuccino/commit/918f6fbb8f6de92550e99...

Committed by Aparajita Fishman

  • A Tests/Manual/CPFormatterTest/AppController.j
  • A Tests/Manual/CPFormatterTest/DateFormatter.j
  • A Tests/Manual/CPFormatterTest/Info.plist
  • A Tests/Manual/CPFormatterTest/Jakefile
  • A Tests/Manual/CPFormatterTest/Resources/MainMenu.cib
  • A Tests/Manual/CPFormatterTest/Resources/MainMenu.xib
  • A Tests/Manual/CPFormatterTest/Resources/date-functions.js
  • A Tests/Manual/CPFormatterTest/Resources/spinner.gif
  • A Tests/Manual/CPFormatterTest/index-debug.html
  • A Tests/Manual/CPFormatterTest/index.html
  • A Tests/Manual/CPFormatterTest/main.j
  • M AppKit/CPControl.j
  • M AppKit/CPTextField.j
  • M Foundation/CPFormatter.j
New-ticket Create new ticket

Create your profile

Help contribute to this project by taking a few moments to create your personal profile. Create your profile ยป

The Cappuccino Web Framework, including AppKit, Foundation, and Objective-J.

Shared Ticket Bins