Subject | Screen Cursor bug fixed |
---|---|
Author | IBO Support List |
Post date | 2012-04-25T15:31:48Z |
I was able to figure out a fix for the Screen Cursor getting stuck to the
SQL hourglass that IBO uses.
I should have build 47 out today but if anyone wants the patch for this here
it is:
IB_Components.pas line (approx) 12730
In this procedure:
procedure TIB_Session.CheckScreenCursor( ForceOff: boolean );
{$IFNDEF NOSESSIONTIMER}
procedure GetScreenCursorTimer( TurnOn: boolean = true );
begin
if not Assigned( FScreenCursorTimer ) then
begin
FScreenCursorTimer := TTimer.Create( Self );
FScreenCursorTimer.OnTimer := DoScreenCursorTimer;
end;
FScreenCursorTimer.Interval := FRestoreCursorTicks;
if TurnOn then
FScreenCursorTimer.Enabled := true;
// If I don't just leave this enabled there are cases where the screen
cursor
// become stuck. This has to do with other routines that save and restore
the
// cursor after the timeout has already expired. Thus, when the cursor is
set
// back there won't be anything done to put it back to the default cursor.
// else
// if FScreenCursorTimer.Enabled then
// FScreenCursorTimer.Enabled := false;
end;
var
YieldOff: boolean;
.
Jason
[Non-text portions of this message have been removed]
SQL hourglass that IBO uses.
I should have build 47 out today but if anyone wants the patch for this here
it is:
IB_Components.pas line (approx) 12730
In this procedure:
procedure TIB_Session.CheckScreenCursor( ForceOff: boolean );
{$IFNDEF NOSESSIONTIMER}
procedure GetScreenCursorTimer( TurnOn: boolean = true );
begin
if not Assigned( FScreenCursorTimer ) then
begin
FScreenCursorTimer := TTimer.Create( Self );
FScreenCursorTimer.OnTimer := DoScreenCursorTimer;
end;
FScreenCursorTimer.Interval := FRestoreCursorTicks;
if TurnOn then
FScreenCursorTimer.Enabled := true;
// If I don't just leave this enabled there are cases where the screen
cursor
// become stuck. This has to do with other routines that save and restore
the
// cursor after the timeout has already expired. Thus, when the cursor is
set
// back there won't be anything done to put it back to the default cursor.
// else
// if FScreenCursorTimer.Enabled then
// FScreenCursorTimer.Enabled := false;
end;
var
YieldOff: boolean;
.
Jason
[Non-text portions of this message have been removed]