Bug #106

View restored twice on Open

Added by I. Denisov almost 3 years ago. Updated about 1 year ago.

Status:ClosedStart date:02/23/2016
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:-
Target version:1.7.1
Forum topic:https://forum.blackboxframework.org/viewtopic.php?f=40&t=237

Description

The Restore procedure of a view is called twice when a view is first opened. Experiments showed that for simple views (no scrollbars) this is not required. Until a final solution is available it is proposed that a flag (HostWindows.creatingDoc) is introduced that allows a simple view to skip the first Restore.

Associated revisions

Revision e7739931
Added by J. Templ over 1 year ago

experimental work-around added for calling Restore twice when opening a document. Refs: #106.
Based on an idea of Robert but TRAP safe by setting flag 'creatingDoc' outside of Kernel.Try.

Signed-off-by: Josef Templ <>

History

#1 Updated by I. Denisov over 2 years ago

  • Target version changed from 1.7 to 1.7.1

#2 Updated by I. Denisov almost 2 years ago

  • Status changed from New to Dormant
  • Target version deleted (1.7.1)

#3 Updated by R. Campbell about 1 year ago

  • Status changed from Dormant to In Progress
  • Target version set to 1.7.1
  • Forum topic set to https://forum.blackboxframework.org/viewtopic.php?f=40&t=237

#4 Updated by R. Campbell about 1 year ago

  • Status changed from In Progress to Closed

#5 Updated by J. Templ about 1 year ago

  • Description updated (diff)

Testprogram

MODULE ToolsTestView;

IMPORT Views, Log;

TYPE
    View = POINTER TO RECORD (Views.View) END;

    PROCEDURE (v: View) Restore (f: Views.Frame; l, t, r, b: INTEGER);
    BEGIN
        Log.Int(l); Log.Int(r); Log.Int(t); Log.Int(b); Log.Ln;
    END Restore;

    PROCEDURE Start*;
    VAR v: View;
    BEGIN
        NEW(v);
        Views.OpenView(v);
    END Start;

END ToolsTestView.

^Q ToolsTestView.Start

Log window:

 0 5912792 0 5880100
 0 5912792 0 5880100

Also available in: Atom PDF