BLIde stable release 0.9.58-A available

BlitzMax Forums/BlitzMax Programming/BLIde stable release 0.9.58-A available

The forum is locked. These are the original blitzbasic.com forums, kept so they can still be read. No new topics, replies or edits can be made here. To join in, head over to the Blitz3D+ forums.

Another bug (P.S. I'm still on 9.52A).

1. Incorrect function/method/variable information shown when using open periods in a type instance:
SuperStrict


Framework brl.glmax2d
Import brl.linkedlist

SetGraphicsDriver GLMax2DDriver()
Graphics 800, 600, 0, 60, 0
SetBlend ALPHABLEND

Type TObject
  Global _list:TList = New(TList)
  
	Field X:Float, Y:Float
	Field Alpha:Float
		
		Method New()
			_list.AddLast(Self)
			
		End Method
		
		Method SetAlpha(Value:Float)
		 
		 DebugLog "TObject.SetAlpha() called"
			
			Alpha = Value
			
		End Method
		
		Method Draw()
			
			'The BlitzMax language uses the open ended period to get out of situations like this, BLIde needs to 
			'show the correct information for that call (instead of information for TObject.SetAlpha() ).
			.SetAlpha(Alpha)
			
			DrawRect X, Y, 50, 50
			
		End Method
		
		Method ChangeValues(cX:Float, cY:Float, a:Float = 1.0)
			
			X = cX
			Y = cY
			
			'This actually calls TObject.SetAlpha(), instead of the global function (max2d).
			SetAlpha(a)
			
		End Method
		
		
		Function Create:TObject(X:Float, Y:Float, Alpha:Float = 1.0)
		  Local obj:TObject = New(TObject)
			
			obj.X = X
			obj.Y = Y
			
			obj.Alpha = Alpha
			
		   Return obj
		   
		End Function
		
End Type

Local obj:TObject = TObject.Create(40, 40, 1.0)
	obj.ChangeValues(20, 35, 0.4)

While Not KeyDown(KEY_ESCAPE)
 Cls()
	
	obj.Draw()
	
 Flip()
Wend

End


2. BLIde's parser doesn't like open ended periods:
'No matter how you try to modify this line it will always revert to 'If.CallFun...'
If.CallFunction() = True Then Print "!!!"