topic "Progress"; [i448;a25;kKO9;2 $$1,0#37138531426314131252341829483380:class] [l288;2 $$2,0#27521748481378242620020725143825:desc] [0 $$3,0#96390100711032703541132217272105:end] [H6;0 $$4,0#05600065144404261032431302351956:begin] [i448;a25;kKO9;2 $$5,0#37138531426314131252341829483370:item] [l288;a4;*@5;1 $$6,6#70004532496200323422659154056402:requirement] [l288;i1121;b17;O9;~~~.1408;2 $$7,0#10431211400427159095818037425705:param] [i448;b42;O9;2 $$8,8#61672508125594000341940100500538:tparam] [b42;2 $$9,9#13035079074754324216151401829390:normal] [2 $$0,0#00000000000000000000000000000000:Default] [{_}%EN-US [ {{10000@3 [s0; [*@(229)4 Progress]]}}&] [s3; &] [s1;:Progress`:`:class:%- [@(0.0.255)3 class][3 _][*3 Progress][3 _:_][@(0.0.255)3 public][3 _][*@3;3 W ithProgressLayout][@(0.0.255)3 <][_^TopWindow^3 TopWindow][@(0.0.255)3 >][3 _]&] [s9; Progress is simple helper dialog that can be used to show a progress of long operation and to cancel it.&] [s2; &] [s2; @@image:1644&520 (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) &] [s3; &] [s0;%- &] [ {{10000F(128)G(128)@1 [s0; [* Constructor Detail]]}}&] [s3; &] [s5;:Progress`:`:Progress`(`):%- [* Progress]()&] [s2; Default constructor.&] [s3; &] [s4;%- &] [s5;:Progress`:`:Progress`(Ctrl`*`):%- [* Progress]([_^Ctrl^ Ctrl]_`*[*@3 `_owner])&] [s5;:Progress`:`:Progress`(const char`*`,int`):%- [* Progress]([@(0.0.255) const]_[@(0.0.255) c har]_`*[*@3 txt], [@(0.0.255) int]_[*@3 total]_`=_[@3 0])&] [s5;:Progress`:`:Progress`(Ctrl`*`,const char`*`,int`):%- [* Progress]([_^Ctrl^ Ctrl]_`*[*@3 `_ owner], [@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 txt], [@(0.0.255) int]_[*@3 total]_`=_[@3 0 ])&] [s2; Convenience constructor variants can set owner, text and total number of steps.&] [s3; &] [s0;%- &] [ {{10000F(128)G(128)@1 [s0; [* Public Member List]]}}&] [s3;%- &] [s5;:Progress`:`:SetOwner`(Ctrl`*`):%- [@(0.0.255) void]_[* SetOwner]([_^Ctrl^ Ctrl]_`*[*@3 `_ owner])&] [s2; Sets the owner window of progress. [%-*@3 `_owner] can be child of owner window too. Note that if owner is not specified, current active window is used as owner.&] [s3; &] [s4;%- &] [s5;:Progress`:`:Create`(`):%- [@(0.0.255) void]_[* Create]()&] [s2; Forces dialog to appear on the screen.&] [s3; &] [s4;%- &] [s5;:Progress`:`:Cancel`(`):%- [@(0.0.255) void]_[* Cancel]()&] [s2; Closes the dialog and sets it to canceled mode.&] [s3; &] [s4;%- &] [s5;:Progress`:`:Set`(int`,int`):%- [@(0.0.255) void]_[* Set]([@(0.0.255) int]_[*@3 pos], [@(0.0.255) int]_[*@3 total])&] [s2; Sets the current progress position and total. This method can be called from non`-main thread without restriction.&] [s3; &] [s4;%- &] [s5;:Progress`:`:SetPos`(int`):%- [@(0.0.255) void]_[* SetPos]([@(0.0.255) int]_[*@3 pos])&] [s2; Sets the current progress position. This method can be called from non`-main thread without restriction.&] [s3; &] [s4;%- &] [s5;:Progress`:`:SetText`(const char`*`):%- [@(0.0.255) void]_[* SetText]([@(0.0.255) const ]_[@(0.0.255) char]_`*[*@3 s])&] [s5;:Progress`:`:SetText`(const String`&`):%- [@(0.0.255) void]_[* SetText]([@(0.0.255) con st]_[_^String^ String][@(0.0.255) `&]_[*@3 s])&] [s2; Sets the text to be displayed in dialog. This method can be called from non`-main thread without restriction.&] [s3; &] [s4;%- &] [s5;:Progress`:`:SetTotal`(int`):%- [@(0.0.255) void]_[* SetTotal]([@(0.0.255) int]_[*@3 tota l])&] [s2; Sets the [%-*@3 total] number of progress steps.&] [s3; &] [s4;%- &] [s5;:Progress`:`:Step`(int`):%- [@(0.0.255) void]_[* Step]([@(0.0.255) int]_[*@3 steps]_`=_[@3 1 ])&] [s2; Advances progress by [%-*@3 steps]. If total number of steps is zero, `"running bar`" is displayed. This method can be called from non`-main thread without restriction.&] [s3; &] [s4;%- &] [s5;:Progress`:`:GetPos`(`)const:%- [@(0.0.255) int]_[* GetPos]()_[@(0.0.255) const]&] [s2; Returns the current number of progress steps.&] [s3; &] [s4;%- &] [s5;:Progress`:`:GetTotal`(`)const:%- [@(0.0.255) int]_[* GetTotal]()_[@(0.0.255) const]&] [s2; Returns the total number of steps (as set by [* Set ]or [* SetTotal]).&] [s3; &] [s4;%- &] [s5;:Progress`:`:GetText`(`)const:%- [_^String^ String]_[* GetText]()_[@(0.0.255) const]&] [s2; Returns the text of Progress.&] [s3; &] [s4;%- &] [s5;:Progress`:`:Canceled`(`):%- [@(0.0.255) bool]_[* Canceled]()&] [s2; Shows a Cancel button if not shown yet. If this button is pressed, sets dialog to canceled mode. Returns true if dialog was canceled. This method can be called from non`-main thread without restriction. Calling this method from the main thread also invokes processing GUI events, including paint event, so calling this as often as once per 1ms is desirable.&] [s3; &] [s4;%- &] [s5;:Progress`:`:SetCanceled`(int`,int`):%- [@(0.0.255) bool]_[* SetCanceled]([@(0.0.255) i nt]_[*@3 pos], [@(0.0.255) int]_[*@3 total])&] [s2; Same as Set([%-*@3 pos], [%-*@3 total]), Canceled().&] [s3; &] [s4;%- &] [s5;:Progress`:`:SetPosCanceled`(int`):%- [@(0.0.255) bool]_[* SetPosCanceled]([@(0.0.255) i nt]_[*@3 pos])&] [s2; Same as SetPos([%-*@3 pos]), Canceled().&] [s3; &] [s4;%- &] [s5;:Progress`:`:StepCanceled`(int`):%- [@(0.0.255) bool]_[* StepCanceled]([@(0.0.255) int]_ [*@3 steps]_`=_[@3 1])&] [s2; Same as Set([%-*@3 steps]), Canceled().&] [s3; &] [s4;%- &] [s5;:Progress`:`:Reset`(`):%- [@(0.0.255) void]_[* Reset]()&] [s2; Resets dialog to default settings.&] [s3; &] [s4;%- &] [s5;:Progress`:`:Granularity`(int`):%- [@(0.0.255) void]_[* Granularity]([@(0.0.255) int]_[*@3 m s])&] [s2; Sets how much often should dialog refresh. Default is 50ms.&] [s3; &] [s4;%- &] [s5;:Progress`:`:AlignText`(int`):%- [@(0.0.255) void]_[* AlignText]([@(0.0.255) int]_[*@3 al ign])&] [s2; Sets text alignment. Allowed values are ALIGN`_LEFT, ALIGN`_CENTER and ALIGN`_RIGHT.&] [s3; &] [s4;%- &] [s5;:Progress`:`:operator Gate2``(`):%- [* operator_Gate2]()&] [s2; Returns a callback to dialog`'s SetCanceled method.&] [s3; &] [s4;%- &] [s5;:Upp`:`:Progress`:`:Delay`(int`):%- [@(0.0.255) void]_[* Delay]([@(0.0.255) int]_[*@3 ms]) &] [s2; Sets the delay before the dialog is shown for the first time (in order not to show it when operation proceeds fast). Default is 250ms.&] [s3; &] [s0; ]]