Alexyz21
Silver Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Насколька быстра внутренняя сортировка списка бранч панели? Выполняю в скрипте: Код: local pc=ffi.cast("struct PluginStartupInfo*",far.CPluginStartupInfo()).PanelControl local pin=panel.GetPanelInfo(nil,1) pc(PANEL_ACTIVE,"FCTL_SETNUMERICSORT",0,nil) pc(PANEL_ACTIVE,"FCTL_SETCASESENSITIVESORT",ts[4] and 0 or 1,nil) pc(PANEL_ACTIVE,"FCTL_SETSORTORDER",0,nil) pc(PANEL_ACTIVE,"FCTL_BEGINSELECTION",0,nil) for i=1,pin.ItemsNumber do ... pc(PANEL_ACTIVE,"FCTL_SETSELECTION",i-1,pBL1) ... end pc(PANEL_ACTIVE,"FCTL_ENDSELECTION",0,nil) pc(PANEL_ACTIVE,"FCTL_REDRAWPANEL",0,nil) | Гарантировано ли полное завершение сортировки внутреннего списка ДО возврата из инициировавшего pc(PANEL_ACTIVE,"FCTL_SET...)? Такое впечатление, что скрипт иногда обгоняет внутреннюю сортировку - смотришь на выделенные им файлы в панели - всё правильно, и порядок сортировки и выделение. А в рапорте для одной попытки видим такое: Код: Items: 1408 Execution time: 1288186 mcs Number of symbols: 9999 Ignore case: true Ignore full duplicates: false 647 back.jpg:8 572 front.jpg:9 561 cd.jpg:6 271 CDImage.cue:11 217 Folder.jpg:10 216 Cover.jpg:9 178 CDImage.ape:11 .... | а для другой попытки такое: Код: Items: 1409 Execution time: 1204415 mcs Number of symbols: all Ignore case: true Ignore full duplicates: false 561 cd.jpg:6 413 front.jpg:9 366 back.jpg:8 282 Back.jpg:8 271 CDImage.cue:11 230 Cover.jpg:9 217 Folder.jpg:10 178 CDImage.ape:11 .... | Во втором случае последовательность из 647-и back.jpg "разорвана" на 2 последовательности из 366 и 282 файлов, разорвать единую последовательность могли 2 файла: back.JPEG и Back.jpeg. Т.е. внутренний список ещё не отсортировался полностью, а мы уже из скрипта по нему "бежим" наперегонки. Такое случается не только с этими файлами-последовательностями, но и с другими, например в 1-ой попытке "порван" Cover.jpg - их 216, а не 230, т.е. цепочка из 14-и файлов ниже в списке болтается (здесь показана шапка списка). | Всего записей: 3471 | Зарегистр. 16-06-2007 | Отправлено: 20:05 10-05-2016 | Исправлено: Alexyz21, 20:15 10-05-2016 |
|