Aparajita Fishman
2f1e9d76ec
Non-bordered buttons should retain their size, not shrink to fit.
2012-07-02 09:40:00 -04:00
Aparajita Fishman
6efa30c52a
autosave of position should not happen until divider tracking is completely done.
...
Also renamed a local variable that looked like an ivar.
2012-06-30 16:19:06 -04:00
Aparajita Fishman
345a865cc8
Post OS X 10.5, Cocoa adds a userInfo with the divider index when the user drags the divider
2012-06-29 13:09:47 -07:00
Aparajita Fishman
e9ceb1d0c6
Documentation tweak
2012-06-28 15:25:39 -07:00
Alexander Ljungberg
8d14bdd819
CPToolbar autovalidate.
2012-06-28 22:41:41 +01:00
Alexander Ljungberg
23f3a01e3c
Merge pull request #1579 from slevenbits/cptoolbar-delegate
...
CPToolbar delegate fix
2012-06-28 20:27:23 +01:00
Aparajita Fishman
cae5486ec6
Added missing class checks in +initialize, regularized checking code
2012-06-28 12:05:18 -07:00
Alexander Ljungberg
a769618e3e
Don't copy an array we'll copy again 2 lines later.
...
If the delegate returns nil we're just copying nil, and if it does return an array we only use it for a single read-only `arrayByAddingObjectsFromArray:`.
2012-06-28 19:15:20 +01:00
Alexander Ljungberg
80d537958e
Fixed: CPToolbar delegate toolbarDefaultItemIdentifiers: is optional.
...
This fix makes it possible for a toolbar defined in a cib to have a delegate set without defining `toolbarDefaultItemIdentifiers:` like in Cocoa. You might be implementing other delegate methods.
2012-06-28 19:12:05 +01:00
Aparajita Fishman
7747bbffcf
Fixed key loop calculation, might as well use _initialFirstResponder instance variable instead of accessor
2012-06-28 10:01:07 -07:00
Ilya Kulakov
913308d886
Refs #1572 . Fix highlighted status is not preserved.
...
When higlightsBy == CPNoCellMask and showsStateBy == CPChangeBackgroundCellMask
higlighted status must be preserved when a user switch state from Off to On.
2012-06-26 03:54:59 +07:00
Alexander Ljungberg
21bb383193
Refs #1527 . Fix button performClick: highlight.
...
Critically this is what enables button highlighting on key equivalents.
2012-06-25 18:13:16 +01:00
Alexander Ljungberg
bd83885eca
Refs #1527 . Backwards compatibility.
...
If no highlight or state masks were encoded (button was encoded prior to them being added), make sure to let the default settings stand.
2012-06-25 17:42:31 +01:00
Alexander Ljungberg
d34d139658
Refs #1572 . Default CPButton type.
...
If a button is created in code it should act like a regular momentary push in button by default.
2012-06-25 17:21:56 +01:00
Alexander Ljungberg
f5c201c0be
Refs #1572 . Fixed: CPPushInCellMask in showsStateBy.
...
Code didn't match comment.
2012-06-25 17:18:07 +01:00
Alexander Ljungberg
10fcc0c452
Refs #1572 . Minor fixes.
2012-06-25 16:26:44 +01:00
Alexander Ljungberg
378822b777
Merge pull request #1572 from slevenbits/cpbutton-masks
...
CPButton and subclasses respect highlightsBy and showsStateBy masks now.
Conflicts:
AppKit/CPButton.j
Tests/Manual/CPButtonTest/AppController.j
Tests/Manual/CPButtonTest/Info.plist
Tests/Manual/CPButtonTest/Resources/MainMenu.cib
Tests/Manual/CPButtonTest/Resources/MainMenu.xib
2012-06-25 16:05:03 +01:00
Ilya Kulakov
7cf3ac3b40
CPButton and subclasses respect highlightsBy and showsStateBy now.
2012-06-25 18:57:10 +07:00
Ilya Kulakov
66f5e1fb64
Take into account highlightsBy and showsStateBy when decoding cib.
...
nib2cib was modified to take into account these variables
during conversion nib->cib.
2012-06-25 18:57:01 +07:00
Ilya Kulakov
c80417c433
Add highlightsBy method that returns current higlightsBy mask.
2012-06-25 18:56:56 +07:00
Adam Radabaugh
5fbf0f83cb
Make the check for CPOnOffButton tracking correctly use the highlights mask.
2012-06-23 14:26:46 -06:00
Adam Radabaugh
84c8427bb4
Merge branch master
2012-06-23 14:21:45 -06:00
Alexander Ljungberg
d39849b297
Improve token field keyboard navigation when tokens are selected.
...
If one or more token is selected and the left arrow key is pressed, collapse the selection to the left of the first selected token.
Similarly, on right arrow key collapse to the right of the last token.
Note that shift-left and shift-right have no effect if the first or last token respectively in the field are already selected.
2012-06-21 19:24:22 +01:00
Alexander Ljungberg
7764921c21
Select all support for CPTokenField.
...
Cmd-A (Mac) or Ctrl-A (other) finishes any ongoing editing and selects all tokens in a token field.
This commit also adds support for the `selectText:` and `selectAll:` methods.
2012-06-21 19:17:34 +01:00
Alexander Ljungberg
26ceb25e7b
Merge pull request #1569 from slevenbits/rwelephant-token-field
...
Token field improved autocomplete, key bindings support, clean up
2012-06-21 10:32:33 -07:00
Aparajita Fishman
45da163230
text tweak
2012-06-18 09:31:34 -07:00
Aparajita Fishman
6f50900b1b
Added missing removeObjectAtArrangedObjectIndex, added missing return
2012-06-18 09:00:59 -07:00
Alexander Ljungberg
2200e40001
Fixed: browser shortcuts wouldn't work when a token field was active.
...
We now leave the default propagation policy of Cappuccino in place, which normally is NO for regular characters but YES for things which could be shortcuts.
2012-06-16 12:31:50 +01:00
Alexander Ljungberg
44b609f604
Don't make space for editing in token field if tokens are selected.
...
If the editor is placed while there is a token selection it can cause the token view to become scrollable to a white area at the bottom even that there is no editing cursor. And even if the editor is not at the bottom, the empty space made for the editor makes no sense when no editing cursor is visible.
2012-06-16 12:31:50 +01:00
Alexander Ljungberg
d5918157ff
Overwrite selected tokens by typing support.
...
If tokens are selected in `CPTokenField` and new text is entered, the selected tokens are overwritten by the newly entered text.
2012-06-16 12:31:50 +01:00
Alexander Ljungberg
19b53746cf
Fix nil representedObjectForEditingString: response handling.
...
If `tokenField: representedObjectForEditingString:` returns nil, act the same as if the delegate method didn't exist. This matches Cocoa.
2012-06-16 12:31:50 +01:00
Alexander Ljungberg
d0769ec360
Oops. Fix object value fix.
2012-06-16 12:31:49 +01:00
Alexander Ljungberg
3c20bf8ad6
Allow token field insertText: to be somewhat overridden.
...
If `insertText:` is overridden to do nothing, nothing in inserted.
2012-06-16 12:31:49 +01:00
Alexander Ljungberg
3eab2a528f
Make token field object value more like Cocoa.
...
If a half typed token is in the field, Cocoa tries to convert it to a representedObject before responding to objectValue. Now CPTokenField does the same.
2012-06-16 12:31:49 +01:00
Alexander Ljungberg
fb404a0671
Hide private token field API. Fix return type.
2012-06-16 12:31:49 +01:00
Alexander Ljungberg
6d6cf52180
Minor token field optimisation.
2012-06-16 12:31:49 +01:00
Alexander Ljungberg
55ca956f50
Remove nonstandard CPCopyRange.
2012-06-16 12:31:49 +01:00
Alexander Ljungberg
f43c643d5a
Allow token field subclasses to override defaultCompletionDelay.
...
Also fixed incorrect return type.
2012-06-16 12:31:49 +01:00
Alexander Ljungberg
69f5fc536c
Key bindings support for token field.
...
Also improve compatibility with `CPTextField` superclass and subclassing support by properly using `interpretKeyEvents:` like `CPTextField`.
2012-06-16 12:31:49 +01:00
Alexander Ljungberg
132ac7c03f
Token field 'keyUp:' support.
2012-06-16 12:31:49 +01:00
Alexander Ljungberg
5683af9bc8
Improve token field subclassing support.
...
Token field now triggers autocompletion from textDidChange: which better meets the expectations of Cappuccino programmers, and is closer to how Cocoa does it.
Eliminated custom non-Cappuccino key press handler.
2012-06-16 12:31:48 +01:00
Alexander Ljungberg
429933f601
Fix token field keyDown: handling.
...
`CPTokenField` had custom key down handling making it function poorly with Cappuccino's event handling and subclasses.
2012-06-16 12:31:48 +01:00
Alexander Ljungberg
317364681a
Fixed: make sure autocomplete menu fits within browser.
2012-06-16 12:31:48 +01:00
Alexander Ljungberg
9575fd7771
Autosize token field autocomplete menu.
...
The new menu is much more efficient for the user:
* Less tall items makes it much easier to select among many completions.
* Exactly wide enough for widest item.
* Tall enough to show all items (instead of just 3 as before).
* Uses a maximum width and height defined by the screen edges and some Cocoa-like constants.
2012-06-16 12:31:48 +01:00
Alexander Ljungberg
85cfb18906
Place token autocomplete underneath what's being completed.
...
This matches Cocoa.
2012-06-16 12:31:48 +01:00
Alexander Ljungberg
33fe1573ad
Ensure autocomplete menu is on top.
...
The menu should appear above other normal windows and controls like a regular CPMenu. To do this, put the pop up in its own window with the `CPPopUpMenuWindowLevel` window level.
2012-06-16 12:31:48 +01:00
Alexander Ljungberg
2574fac44a
Remove token field reference.
2012-06-16 12:31:48 +01:00
Alexander Ljungberg
b166995327
Move autocomplete into reusable class.
2012-06-16 12:31:48 +01:00
Alexander Ljungberg
feaf9c6f20
Improve CPTokenField autocomplete scrolling.
2012-06-16 12:31:48 +01:00
Alexander Ljungberg
0ef03d31b8
Refactor CPTokenField autocomplete.
...
The new code is simpler (single responsibility principle) and makes it easier to improve on autocomplete.
2012-06-16 12:31:48 +01:00