Функция panel.SetSortOrder не включает прямую сортировку Topic is solved

Столкнулись с проблемой в использовании макросов? Здесь можно получить помощь.
Post Reply
User avatar
buniak_a_h
Posts: 4236
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 643 times
Contact:

Функция panel.SetSortOrder не включает прямую сортировку

Post by buniak_a_h »

Здравствуйте.
Помогите, пожалуйста! То ли я напал на ошибку, то ли непонятно описана функция panel.SetSortOrder:
FCTL_SETSORTORDER - Param1 целое число, содержащее порядок сортировки: 0 или 1 (обратная сортировка).
Я так понял, что 0 устанавливает прямую сортировку, а 1 - обратную. Однако, следующий пример доказывает, что обратная сортировка включается, а прямая - ни в каком случае.
Вот код макроса, демонстрирующего непонятку.
  1. local ii=0
  2.  
  3. Macro{
  4.  
  5.   id="3CCF335C-C2EF-4D4C-980E-4A71C853A177";
  6.  
  7.   area="Shell";
  8.  
  9.   key="CtrlShiftW";
  10.  
  11.   description="Тест реверсивой сортировки";
  12.  
  13.   flags="";
  14.  
  15.   action=function(data)
  16.  
  17.    ii = (ii+1) % 2
  18.  
  19.    --[[*D*]]far.Show('10: перед переключением; ii='..ii)
  20.  
  21.    panel.SetSortOrder(nil, 1, ii)
  22.  
  23.   end;
  24.  
  25. }
Макрос поочерёдно вызывает panel.SetSortOrder для активной панели то с 0, то с 1. Результат от настройки Panel.ReverseSort независит.
При этом сортировка с клавиатуры - наоборот, всегда включает только прямую сортировку.
Я на ошибку наткнулся? Или неправильно понял описание?
Shmuel
Posts: 6819
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 528 times

Функция panel.SetSortOrder не включает прямую сортировку

Post by Shmuel »

buniak_a_h wrote: Thu 06 May, 2021 21:37 то ли непонятно описана функция panel.SetSortOrder
Функция описана правильно, читайте luafar_manual.
Post Reply

Return to “Нужна помощь”