gnustep-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: NSMatrix keyboard stuff


From: Matt Rice
Subject: Re: NSMatrix keyboard stuff
Date: Sat, 13 Jan 2007 16:51:29 -0800
User-agent: GNUMail (Version 1.2.0)

I just commited it,  and yeah it replaced all the previous patches.


On 2007-01-13 10:47:53 -0800 Fred Kiefer <address@hidden> wrote:

Now this looks like a nice and simple patch. If this replaces all your
previous patches then just go ahead and apply it. Or should I or Greg do it for you? I think it is fine to have this one in, even if Greg will be
doing his stable release any time now.

Greg, are you actually? I just cannot remember what the result of that
discussion was. Currently I am keeping back my bigger changes and
waiting for you to give a sign when commits are welcome again.

Cheers.
Fred

Matt Rice schrieb:
On 2007-01-10 09:17:49 -0800 Matt Rice <address@hidden> wrote:

On 2007-01-10 09:04:57 -0800 Matt Rice <address@hidden> wrote:

On 2007-01-10 07:59:16 -0800 Fred Kiefer <address@hidden> wrote:

HI Matt,

could you please explain this patch a bit? Only the last bit is about selecting the right cell in NSTrackModeMatrix. Are the other change a
result of this?
It looks like you intent to prevent the setting of the cell state for
this mode. Is this correct?

Yes, you understand the patch correctly,

I've just noticed the difference between -keyCell and -selected*,
    which seems to be what i need/the reason for my confusion.
this one is much cleaner :D


ok... so this one isn't going to be correct either.. because
_selectCellAtRow:column: sets the state..


alright sorry for the barrage of emails.
I hadn't noticed the above because _selectCell:atRow:column: sets it to
NSOnState.
and the button i tested it with was on, so it was set to On then to Off
by the setNextState.

_selectCell:atRow:column: isn't right because the selected cell can have
an NSOffState.
for track/highlight mode and NSOnState for list/radio...

hopefully this patch takes care of it :D

<matrix-kbd3.diff>


------------------------------------------------------------------------

Index: NSMatrix.m
===================================================================
--- NSMatrix.m  (revision 24334)
+++ NSMatrix.m  (working copy)
@@ -1211,7 +1211,14 @@
        _selectedColumn = column;
        _selectedCells[row][column] = YES;
  -      [_selectedCell setState: NSOnState];
+      if (_mode == NSListModeMatrix || _mode == NSRadioModeMatrix)
+        {
+         [_selectedCell setState: NSOnState];
+       }
+      else
+        {
+         [_selectedCell setNextState];
+       }
         if (_mode == NSListModeMatrix)
        [aCell setHighlighted: YES];
@@ -3695,25 +3702,17 @@
            [self _altModifier: character];
          else
            {
-             NSCell *cell;
-
              switch (_mode)
                {
                case NSTrackModeMatrix:
                case NSHighlightModeMatrix:
-                 cell = _cells[_dottedRow][_dottedColumn];
-
-                 [cell setNextState];
-                 [self setNeedsDisplayInRect: [self cellFrameAtRow: _dottedRow
-                                                    column: _dottedColumn]];
+               case NSRadioModeMatrix:
+                 [self selectCellAtRow:_dottedRow column: _dottedColumn];
                  break;
                case NSListModeMatrix:
                  if (!(modifiers & NSShiftKeyMask))
                    [self deselectAllCells];
-
-               case NSRadioModeMatrix:
-                 [self selectCellAtRow: _dottedRow column: _dottedColumn];
                  break;
                }









reply via email to

[Prev in Thread] Current Thread [Next in Thread]