NSMatrix keyboard stuff

2007-01-10 Thread Matt Rice

noticed in a matrix of switch buttons in NSTrackModeMatrix mode
selectedRow isn't updated when doing keyboard arrow key stuff
the state changes when deselecting/selecting rows

there still seems to be some drawing artifacts with this patch,
dotted frame rects being left dotted...

this doesn't fix the selectedRow thing for NSHighlightModeMatrix
and i'm not sure the correct thing to do with those on the rest...

if someone knows of any other code using NSTrackModeMatrix,
not sure if this is something which should wait until after the 
upcoming release



Index: NSMatrix.m
===
--- NSMatrix.m  (revision 24288)
+++ NSMatrix.m  (working copy)
@@ -1098,7 +1098,8 @@
 
  if ([aCell state] || isHighlighted)
{
- [aCell setState: NSOffState];
+ if (_mode != NSTrackModeMatrix) 
+   [aCell setState: NSOffState];
 
  if (isHighlighted)
{
@@ -1135,7 +1136,9 @@
{
  if (_selectedCells[i][j])
{
- [_cells[i][j] setState: NSOffState];
+ if (_mode != NSTrackModeMatrix) 
+   [_cells[i][j] setState: NSOffState];
+
  _selectedCells[i][j] = NO;
}
}
@@ -1172,7 +1175,10 @@
&& [_cells[i][j] isEditable] == NO)
{
  _selectedCell = _cells[i][j];
- [_selectedCell setState: NSOnState];
+
+ if (_mode != NSTrackModeMatrix) 
+   [_selectedCell setState: NSOnState];
+
  _selectedCells[i][j] = YES;
 
  _selectedRow = i;
@@ -1211,7 +1217,8 @@
   _selectedColumn = column;
   _selectedCells[row][column] = YES;
 
-  [_selectedCell setState: NSOnState];
+  if (_mode != NSTrackModeMatrix) 
+[_selectedCell setState: NSOnState];
 
   if (_mode == NSListModeMatrix)
[aCell setHighlighted: YES];
@@ -3356,7 +3363,8 @@
   BOOL selectCell = NO;
   int h, i, lastDottedRow, lastDottedColumn;
 
-  if (_mode == NSRadioModeMatrix || _mode == NSListModeMatrix)
+  if (_mode == NSRadioModeMatrix || _mode == NSListModeMatrix
+  || _mode == NSTrackModeMatrix)
 selectCell = YES;
 
   if (_dottedRow == -1 || _dottedColumn == -1)
___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
http://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: NSMatrix keyboard stuff

2007-01-10 Thread Fred Kiefer
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? In the documentation I only find that this
matrix mode wont do any highlighting. The documentation for NSControl
states clearly that cells get selected by setting their states. Is this
no longer true for NSMatrix? And why is this specific for the track mode?

Cheers,
Fred


Matt Rice schrieb:
> noticed in a matrix of switch buttons in NSTrackModeMatrix mode
> selectedRow isn't updated when doing keyboard arrow key stuff
> the state changes when deselecting/selecting rows
> 
> there still seems to be some drawing artifacts with this patch,
> dotted frame rects being left dotted...
> 
> this doesn't fix the selectedRow thing for NSHighlightModeMatrix
> and i'm not sure the correct thing to do with those on the rest...
> 
> if someone knows of any other code using NSTrackModeMatrix,
> not sure if this is something which should wait until after the upcoming
> release
> 
> 
> 
> 
> 
> Index: NSMatrix.m
> ===
> --- NSMatrix.m(revision 24288)
> +++ NSMatrix.m(working copy)
> @@ -1098,7 +1098,8 @@
>  
> if ([aCell state] || isHighlighted)
>   {
> -   [aCell setState: NSOffState];
> +   if (_mode != NSTrackModeMatrix) 
> + [aCell setState: NSOffState];
>  
> if (isHighlighted)
>   {
> @@ -1135,7 +1136,9 @@
>   {
> if (_selectedCells[i][j])
>   {
> -   [_cells[i][j] setState: NSOffState];
> +   if (_mode != NSTrackModeMatrix) 
> + [_cells[i][j] setState: NSOffState];
> +
> _selectedCells[i][j] = NO;
>   }
>   }
> @@ -1172,7 +1175,10 @@
>   && [_cells[i][j] isEditable] == NO)
>   {
> _selectedCell = _cells[i][j];
> -   [_selectedCell setState: NSOnState];
> +
> +   if (_mode != NSTrackModeMatrix) 
> + [_selectedCell setState: NSOnState];
> +
> _selectedCells[i][j] = YES;
>  
> _selectedRow = i;
> @@ -1211,7 +1217,8 @@
>_selectedColumn = column;
>_selectedCells[row][column] = YES;
>  
> -  [_selectedCell setState: NSOnState];
> +  if (_mode != NSTrackModeMatrix) 
> +[_selectedCell setState: NSOnState];
>  
>if (_mode == NSListModeMatrix)
>   [aCell setHighlighted: YES];
> @@ -3356,7 +3363,8 @@
>BOOL selectCell = NO;
>int h, i, lastDottedRow, lastDottedColumn;
>  
> -  if (_mode == NSRadioModeMatrix || _mode == NSListModeMatrix)
> +  if (_mode == NSRadioModeMatrix || _mode == NSListModeMatrix
> +  || _mode == NSTrackModeMatrix)
>  selectCell = YES;
>  
>if (_dottedRow == -1 || _dottedColumn == -1)
> 
> 
> 
> 
> ___
> Gnustep-dev mailing list
> Gnustep-dev@gnu.org
> http://lists.gnu.org/mailman/listinfo/gnustep-dev



___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
http://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: NSMatrix keyboard stuff

2007-01-10 Thread Matt Rice

On 2007-01-10 07:59:16 -0800 Fred Kiefer <[EMAIL PROTECTED]> 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




Index: NSMatrix.m
===
--- NSMatrix.m  (revision 24334)
+++ NSMatrix.m  (working copy)
@@ -3703,6 +3703,7 @@
case NSHighlightModeMatrix:
  cell = _cells[_dottedRow][_dottedColumn];
 
+ [self selectCellAtRow:_dottedRow column: _dottedColumn];
  [cell setNextState];
  [self setNeedsDisplayInRect: [self cellFrameAtRow: _dottedRow
 column: _dottedColumn]];
___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
http://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: NSMatrix keyboard stuff

2007-01-10 Thread Matt Rice

On 2007-01-10 09:04:57 -0800 Matt Rice <[EMAIL PROTECTED]> wrote:


On 2007-01-10 07:59:16 -0800 Fred Kiefer <[EMAIL PROTECTED]> 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..




___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
http://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: NSMatrix keyboard stuff

2007-01-10 Thread Matt Rice

On 2007-01-10 09:17:49 -0800 Matt Rice <[EMAIL PROTECTED]> wrote:


On 2007-01-10 09:04:57 -0800 Matt Rice <[EMAIL PROTECTED]> wrote:


On 2007-01-10 07:59:16 -0800 Fred Kiefer <[EMAIL PROTECTED]> 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


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;
}
 
___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
http://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: NSMatrix keyboard stuff

2007-01-13 Thread Fred Kiefer
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 <[EMAIL PROTECTED]> wrote:
> 
>> On 2007-01-10 09:04:57 -0800 Matt Rice <[EMAIL PROTECTED]> wrote:
>>
>>> On 2007-01-10 07:59:16 -0800 Fred Kiefer <[EMAIL PROTECTED]> 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
> 
> 
> 
> 
> 
> 
> 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;
>   }
>  



___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
http://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: NSMatrix keyboard stuff

2007-01-13 Thread Gregory John Casamento
Large commits will be open again after this weekend's release.  I was planning 
to cut the release of both gui and gorm tomorrow.

Richard, when were you planning on releasing base?
 
Later, GJC

--
Gregory Casamento

- Original Message 
From: Fred Kiefer <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
Cc: gnustep-dev@gnu.org
Sent: Saturday, January 13, 2007 1:47:53 PM
Subject: Re: NSMatrix keyboard stuff

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 <[EMAIL PROTECTED]> wrote:
> 
>> On 2007-01-10 09:04:57 -0800 Matt Rice <[EMAIL PROTECTED]> wrote:
>>
>>> On 2007-01-10 07:59:16 -0800 Fred Kiefer <[EMAIL PROTECTED]> 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
> 
> 
> 
> 
> 
> 
> 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;
>  }
>  



___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
http://lists.gnu.org/mailman/listinfo/gnustep-dev





___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
http://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: NSMatrix keyboard stuff

2007-01-13 Thread Nicola Pero
I also suggest that we make a new release of gnustep-make.

Thanks



-Original Message-
From: Gregory John Casamento <[EMAIL PROTECTED]>
Sent: Sat, January 13, 2007 9:38 pm
To: Fred Kiefer <[EMAIL PROTECTED]>, [EMAIL PROTECTED], Richard Frith-Macdonald 
<[EMAIL PROTECTED]>
Cc: gnustep-dev@gnu.org
Subject: Re: NSMatrix keyboard stuff

Large commits will be open again after this weekend's release.  I was planning 
to cut the release of both gui and gorm tomorrow.

Richard, when were you planning on releasing base?
 
Later, GJC

--
Gregory Casamento

- Original Message 
From: Fred Kiefer <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
Cc: gnustep-dev@gnu.org
Sent: Saturday, January 13, 2007 1:47:53 PM
Subject: Re: NSMatrix keyboard stuff

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 <[EMAIL PROTECTED]> wrote:
> 
>> On 2007-01-10 09:04:57 -0800 Matt Rice <[EMAIL PROTECTED]> wrote:
>>
>>> On 2007-01-10 07:59:16 -0800 Fred Kiefer <[EMAIL PROTECTED]> 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
> 
> 
> 
> 
> 
> 
> 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;
>  }
>  



___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
http://lists.gnu.org/mailman/listinfo/gnustep-dev





___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
http://lists.gnu.org/mailman/listinfo/gnustep-dev



___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
http://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: NSMatrix keyboard stuff

2007-01-13 Thread Matt Rice

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


On 2007-01-13 10:47:53 -0800 Fred Kiefer <[EMAIL PROTECTED]> 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 <[EMAIL PROTECTED]> wrote:


On 2007-01-10 09:04:57 -0800 Matt Rice <[EMAIL PROTECTED]> wrote:


On 2007-01-10 07:59:16 -0800 Fred Kiefer <[EMAIL PROTECTED]> 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






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;
}









___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
http://lists.gnu.org/mailman/listinfo/gnustep-dev


Re: NSMatrix keyboard stuff

2007-01-13 Thread Richard Frith-Macdonald


On 13 Jan 2007, at 20:38, Gregory John Casamento wrote:

Large commits will be open again after this weekend's release.  I  
was planning to cut the release of both gui and gorm tomorrow.


Richard, when were you planning on releasing base?


I was planning on doing that today.

I'm a bit confused about Fred's email in this thread yesterday  
though ... sounds like he's been holding off commits to gui trunk for  
some reason that I perhaps missed.   Just to be clear, I've been  
planning on a bugfix release of base 1.13.1 ... which would be usable  
with all existing released code, but would not be usable with gui trunk.
Are you making a new gui release from trunk incompatible with the  
current release rather than a stable/bugfix release?  If so, you will  
need an unstable release of base to go with it. 
 



___
Gnustep-dev mailing list
Gnustep-dev@gnu.org
http://lists.gnu.org/mailman/listinfo/gnustep-dev