Page MenuHomeFeedback Tracker

Investigate if tvAdd can be made quicker.
Assigned, NormalPublic

Description

As the title says

Details

Severity
Tweak
Resolution
Open
Reproducibility
Always
Operating System
Windows 10 x64
Category
Scripting
Steps To Reproduce

Some code requested by @dedmen

disableSerialization;

_display = findDisplay 313 createDisplay "RscDisplayEmpty";

_tv = _display ctrlCreate ["RscTreeSearch", -1];
_tv ctrlSetPosition [0,0.06,1,0.94];
_tv ctrlSetBackgroundColor [0,0,0,1];
_tv ctrlCommit 0;

_text = "Some Entry";
_data = "SomeData";
_value = 1337;

_fnc_fillTV = 
{
  for "_i" from 0 to 20000 do
  {
    _index = _tv tvAdd [[], _text];
    _tv tvSetData [[_index], _data];
    _tv tvSetValue [[_index], _value];
  };
  tvClear _tv;
};

_time = diag_tickTime;
for "_loopCount" from 0 to 50 do
{
  call _fnc_fillTV;
  systemChat str _loopCount;
};

systemChat format ["Time passed: %1", diag_tickTime - _time];

Event Timeline

R3vo created this task.Nov 24 2020, 1:51 PM
R3vo edited Steps To Reproduce. (Show Details)
R3vo renamed this task from Investigate if tvAdd can made quicker. to Investigate if tvAdd can be made quicker..
R3vo added a subscriber: dedmen.
dedmen claimed this task.Nov 24 2020, 1:54 PM
dedmen changed the task status from New to Assigned.
dedmen set Ref Ticket to AIII-53601.
R3vo added a comment.Nov 24 2020, 4:03 PM

For listbox as requested from @dedmen

disableSerialization;

_display = findDisplay 313 createDisplay "RscDisplayEmpty";

_lb = _display ctrlCreate ["RscListbox", -1];
_lb ctrlSetPosition [0,0.06,1,0.94];
_lb ctrlSetBackgroundColor [0,0,0,1];
_lb ctrlCommit 0;

_text = "Some Entry";
_data = "SomeData";
_value = 1337;

_fnc_fillLB =
{
  for "_i" from 0 to 20000 do
  {
    _index = _lb lbAdd _text;
    _lb lbSetData [_index, _data];
    _lb lbSetValue [_index, _value];
  };
  lbClear _lb;
};

_time = diag_tickTime;
for "_loopCount" from 0 to 1000 do
{
  call _fnc_fillLB;
};

systemChat format ["Time passed: %1", diag_tickTime - _time];