Le 27 oct. 2013 à 21:46, Thomas Tempelmann <notifications@github.com> a écrit :
> In Additional Modules/Class Extensions/SystemExtensions.rbbas:
> 
> > +		    Catch exc
> > +		      DReportError   "Exception", exc
> Once again, you've added your private stuff into the macoslib here, it seems
> 

Fixed


> what is the purpose of exception handling in lib functions, anyway? the CALLER is supposed to handle that
> 
As it is part of the convenience methods, it is expected to be easier to use by anyone. Moreover, it is a dirty workaround. Here, the method returns an empty array on error.


> In Additional Modules/DebugReport Cross-Platform/DebugLogWND.rbfrm:
> 
> >  #tag EndWindowCode
> >  
> >  #tag Events LogTA
> >  	#tag Event
> > -		Sub Open()
> > -		  #if TargetMacOS
> > -		    nsma = me.AttributedString
> > -		  #endif
> > +		Function KeyDown(Key As String) As Boolean
> > +		  
> > +		  //On pressing "End", go to the end and resume following the flow
> > +		  if key=Chr( 4 ) then
> > +		    me.SelStart = Len( me.Text )
> > +		    DebugReportModule.FollowAppend = true
> WTF?
> 

The LogTA TextArea usually scrolls down to display the new logs being appended (FollowAppend=true). It stops automatically scrolling down when the user inspects previous parts of the log. The automatic scrolling is re-enabled by pressing the “End” key. 


> In macoslib/Cocoa/NSObject.rbbas:
> 
> > @@ -45,6 +45,24 @@ Implements objHasVariantValue
> >  		End Function
> >  	#tag EndMethod
> >  
> > +	#tag Method, Flags = &h0
> > +		Function ClassRespondsToSelector(selectorName As String) As Boolean
> > +		  //# Determines if the object's class responds to a given selector
> That "explanation" doesn't say anything more than the function name already says, you realize that? If you add such text at all, I'd expect it would add some more information.
> 

This is not an explanation, it is a normal docgen tag.


> In macoslib/Cocoa/NSObject.rbbas:
> 
> > @@ -126,6 +146,19 @@ Implements objHasVariantValue
> >  	#tag EndMethod
> >  
> >  	#tag Method, Flags = &h0
> > +		Sub PerformSelectorAfterDelay(theSelector as string, withObject as Ptr, afterDelay as double)
> > +		  //# Sets up a NSTimer which will trigger the given selector after the given delay.
> So, what is the "withObject" parameter for?
> 

It is an object which is passed as a parameter to the triggered selector.



> In macoslib/Cocoa/NSThread.rbbas:
> 
> > @@ -0,0 +1,60 @@
> > +#tag Class
> > +Class NSThread
> > +Inherits NSObject
> > +	#tag Method, Flags = &h0
> > +		 Shared Function CallStackSymbols() As NSArray
> > +		  //# Get all the symbols on the call stack
> > +		  
> > +		  #if TargetMacOS
> > +		    declare function callStackSymbols lib CocoaLib selector "callStackSymbols" ( id as Ptr ) as Ptr
> > +		    
> > +		    return  new NSArray( callStackSymbols( Cocoa.NSClassFromString( "NSThread" )))
> shouldn't the class ref be stored in a static var so that it doesn't get looked up every time?
> 

Nice idea. I will implement it.