так раньше панели скрывались и скролилась сама консоль с инфой на ней, а сейчас всё забивается изображением панелей. Перезапустил фар - теперь такого нет
» Far Manager
shmuz
Alexyz21
По возможности, ответьте, пожалуйста, на следующие вопросы:
Как в меню "Критерий сортировки" включить и обычные макросы?
Дело в том, что у меня есть пара простых макросов, выполняющих некое подобие сортировки: один из них выделяет и перемещает наверх панели папки-симлинки, а другой тоже делает с файлами, помеченными атрибутом "только для чтения".
И я хотел бы присовокупить их в данное меню.
(Конечно было бы намного лучше иметь полноценные макросы для сортировки по атрибутам файлов, но я не знаю, можно ли это делать вообще.)
Что означает пункт "Пользовательские данные" в меню "Критерий сортировки"? Ответ искал, но ни где на нашёл. И в хэлпе Фара такой пункт совсем не обозначен.
Alexyz21
По возможности, ответьте, пожалуйста, на следующие вопросы:
Как в меню "Критерий сортировки" включить и обычные макросы?
Дело в том, что у меня есть пара простых макросов, выполняющих некое подобие сортировки: один из них выделяет и перемещает наверх панели папки-симлинки, а другой тоже делает с файлами, помеченными атрибутом "только для чтения".
И я хотел бы присовокупить их в данное меню.
(Конечно было бы намного лучше иметь полноценные макросы для сортировки по атрибутам файлов, но я не знаю, можно ли это делать вообще.)
Что означает пункт "Пользовательские данные" в меню "Критерий сортировки"? Ответ искал, но ни где на нашёл. И в хэлпе Фара такой пункт совсем не обозначен.
VictorVG2
Цитата:
Спасибо - помогло!
Цитата:
Слова "оптимизация" и "хорошо" - звучат заманчиво.
А можно ли узнать чем оно лучше старого режима? Отбой, уже сам нашел.
На всякий случай, привожу скриншоты глюков, которые у меня наблюдаются при System.WindowMode=true:
http://itmages.ru/image/view/3909966/ddb825d5 - это с ConEmu.
http://itmages.ru/image/view/3909968/88266665 - это без ConEmu.
Данные о системе:
Win 8.1 Pro x64, Win 10 Ent x64. Графический адаптер Intel(R) HD Graphics 4600 (Core i5-4570)
Цитата:
поставьте его в false - far:config System.WindowMode=false (нажмите на этой строке F4 или Enter, затем ShiftF9) и всё вернётся к старому поведению.
Спасибо - помогло!
Цитата:
1. Оптимизация 4525 для System.WindowMode = true
2. System.WindowMode теперь true по умолчанию, ибо:
- это хорошо;
- нужно тестирование.
Слова "оптимизация" и "хорошо" - звучат заманчиво.
А можно ли узнать чем оно лучше старого режима? Отбой, уже сам нашел.
На всякий случай, привожу скриншоты глюков, которые у меня наблюдаются при System.WindowMode=true:
http://itmages.ru/image/view/3909966/ddb825d5 - это с ConEmu.
http://itmages.ru/image/view/3909968/88266665 - это без ConEmu.
Данные о системе:
Win 8.1 Pro x64, Win 10 Ent x64. Графический адаптер Intel(R) HD Graphics 4600 (Core i5-4570)
Angel_Ka
Цитата:
Цитата:
Цитата:
Цитата:
Как в меню "Критерий сортировки" включить и обычные макросы?Никак. Разве что хакерскими методами, но это обсуждать не буду.
Цитата:
Конечно было бы намного лучше иметь полноценные макросы для сортировки по атрибутам файлов, но я не знаю, можно ли это делать вообще.Легко, с помощью кастомной сортировки.
Цитата:
Что означает пункт "Пользовательские данные" в меню "Критерий сортировки"?Если не ошибаюсь, то этот пункт предназначен для панелей плагинов, а не для обычных панелей.
shmuz
Благодарю Вас за оперативные ответы!
Цитата:
Тогда значимость следующего вопроса возрастает.
Цитата:
Легко для того, кто знает. Подскажите, плиз, как — а может быть и сдюжится. Если и не сразу, то со временем.
Благодарю Вас за оперативные ответы!
Цитата:
Как в меню "Критерий сортировки" включить и обычные макросы?
Никак.
Тогда значимость следующего вопроса возрастает.
Цитата:
было бы намного лучше иметь полноценные макросы для сортировки по атрибутам файлов, но я не знаю, можно ли это делать вообще.
Легко, с помощью кастомной сортировки.
Легко для того, кто знает. Подскажите, плиз, как — а может быть и сдюжится. Если и не сразу, то со временем.
Angel_Ka
Цитата:
В описании функции LoadCustomSortMode есть ссылка на описание структуры SortingPanelItem. В тех макросах, которыми вы недавно занимались, использовалось поле FileName этой структуры, но в ней есть и другие поля, в том числе FileAttributes.
Цитата:
Легко для того, кто знает. Подскажите, плиз, как — а может быть и сдюжится. Если и не сразу, то со временем.
В описании функции LoadCustomSortMode есть ссылка на описание структуры SortingPanelItem. В тех макросах, которыми вы недавно занимались, использовалось поле FileName этой структуры, но в ней есть и другие поля, в том числе FileAttributes.
shmuz
Благодарю за подсказку! Она существенно облегчила дело.
Долго подбирал функцию и на текущий момент в макросе-примере FileName поменял на FileAttributes, вместо C.wcslen подставил bit.band(tonumber, и макрос работает. Правда, с небольшими нюансами, но надеюсь и их преодолеть.
Во всяком случае, сортировку папок-симлинков и объектов с атрибутом "только для чтения", новым макросом уже делать удобнее, чем двумя старыми.
Благодарю за подсказку! Она существенно облегчила дело.
Долго подбирал функцию и на текущий момент в макросе-примере FileName поменял на FileAttributes, вместо C.wcslen подставил bit.band(tonumber, и макрос работает. Правда, с небольшими нюансами, но надеюсь и их преодолеть.
Во всяком случае, сортировку папок-симлинков и объектов с атрибутом "только для чтения", новым макросом уже делать удобнее, чем двумя старыми.
Уточнение к Поиск файла по его описанию
Цитата:
в масках файлов умеет, смотрите Help:
Цитата:
Цитата:
ccaid
"...штатный поиск, вроде бы, не умеет рекэкспы..."
в масках файлов умеет, смотрите Help:
Цитата:
В масках можно использовать регулярные выражения, при этом текст
регулярного выражения должен быть окружён символами "/".
VictorVG2
Насколько я понял, в маске надо указать просто descript.ion, а в строке поиска уже регулярное выражение, например, стол|стул|диван. Если точно известно, что искать, то можно и без регулярного выражения.
Насколько я понял, в маске надо указать просто descript.ion, а в строке поиска уже регулярное выражение, например, стол|стул|диван. Если точно известно, что искать, то можно и без регулярного выражения.
shmuz
Ну, коли ему просто конкретное имя искать, то вообще там просто. А в строке, да регулярку чтобы не набирать кучу вариантов. Ну, забыли про это ребята, с кем не бывает?
Ну, коли ему просто конкретное имя искать, то вообще там просто. А в строке, да регулярку чтобы не набирать кучу вариантов. Ну, забыли про это ребята, с кем не бывает?
shmuz
Макрос сортировки по атрибутам вообще, о котором шла речь раньше, очень полезен. Однако он имеет, как я уже отмечал, и некоторые нюансы. В частности, по атрибуту "только для чтения" он хорошо сортирует в банальной ситуации, когда в папке файлы помечены только данным атрибутом и атрибутом "архивный". Но когда там же находятся также файлы, помеченные вместе с тем атрибутами "временный" или "точка повторного анализа" и т.п., то итоговая сортировка получается не очень удобная.
Поэтому вот составил макрос специально для выборки файлов только с атрибутом ro.
Код: -- Загрузить сортировку
local ModeNumber = 109
local ffi = require "ffi"
local C = ffi.C
Panel.LoadCustomSortMode (ModeNumber,
{
Description="отсортировать файлы по атриб&уту 'только для чтения'";
Compare = function(p1, p2)
local l1, l2 = tonumber(p1.FileAttributes)/2, tonumber(p2.FileAttributes)/2
local l3, l4 = math.floor(l1), math.floor(l2)
local l5, l6 = l1 - l3, l2 - l4
return l5<l6 and -1 or l5>l6 and 1 or 0
end;
Indicator = "Qq";
})
-- Установить заданную пользовательскую сортировку в активной панели
Macro {
description="отсортировать файлы с атрибутом ro";
area="Shell"; key="CtrlShift7";
action=function()
Panel.SetCustomSortMode(ModeNumber,0)
end;
}
Макрос сортировки по атрибутам вообще, о котором шла речь раньше, очень полезен. Однако он имеет, как я уже отмечал, и некоторые нюансы. В частности, по атрибуту "только для чтения" он хорошо сортирует в банальной ситуации, когда в папке файлы помечены только данным атрибутом и атрибутом "архивный". Но когда там же находятся также файлы, помеченные вместе с тем атрибутами "временный" или "точка повторного анализа" и т.п., то итоговая сортировка получается не очень удобная.
Поэтому вот составил макрос специально для выборки файлов только с атрибутом ro.
Код: -- Загрузить сортировку
local ModeNumber = 109
local ffi = require "ffi"
local C = ffi.C
Panel.LoadCustomSortMode (ModeNumber,
{
Description="отсортировать файлы по атриб&уту 'только для чтения'";
Compare = function(p1, p2)
local l1, l2 = tonumber(p1.FileAttributes)/2, tonumber(p2.FileAttributes)/2
local l3, l4 = math.floor(l1), math.floor(l2)
local l5, l6 = l1 - l3, l2 - l4
return l5<l6 and -1 or l5>l6 and 1 or 0
end;
Indicator = "Qq";
})
-- Установить заданную пользовательскую сортировку в активной панели
Macro {
description="отсортировать файлы с атрибутом ro";
area="Shell"; key="CtrlShift7";
action=function()
Panel.SetCustomSortMode(ModeNumber,0)
end;
}
Цитата:
Работа данного макроса основана на том, что атрибут "только для чтения" (0x01) в отличие от других нечётный.
Ну... можно и так, но зачем? Почему не использовать битовую маску?
Alexyz21
Цитата:
А это как? В функции Compare из Panel.LoadCustomSortMode я не вижу такого способа. Но и не исключено, что это у меня зрение такое.
Цитата:
Почему не использовать битовую маску?
А это как? В функции Compare из Panel.LoadCustomSortMode я не вижу такого способа. Но и не исключено, что это у меня зрение такое.
Например так:
Код: -- Загрузить сортировку
local ModeNumber = 200
local ffi = require "ffi"
local C = ffi.C
Panel.LoadCustomSortMode (ModeNumber,
{
Description="отсортировать файлы по атриб&уту 'только для чтения'";
Compare = function(p1,p2,opt)
local l1,l2 = bit.band(p1.FileAttributes,C.FILE_ATTRIBUTE_READONLY),bit.band(p2.FileAttributes,C.FILE_ATTRIBUTE_READONLY)
return l1<l2 and -1 or l2>l1 and 1 or 0
end;
Indicator = "Qq";
})
-- Установить заданную пользовательскую сортировку в активной панели
Macro {
description="отсортировать файлы с атрибутом ro";
area="Shell"; key="CtrlShift7";
action=function()
Panel.SetCustomSortMode(ModeNumber,0)
end;
}
Код: -- Загрузить сортировку
local ModeNumber = 200
local ffi = require "ffi"
local C = ffi.C
Panel.LoadCustomSortMode (ModeNumber,
{
Description="отсортировать файлы по атриб&уту 'только для чтения'";
Compare = function(p1,p2,opt)
local l1,l2 = bit.band(p1.FileAttributes,C.FILE_ATTRIBUTE_READONLY),bit.band(p2.FileAttributes,C.FILE_ATTRIBUTE_READONLY)
return l1<l2 and -1 or l2>l1 and 1 or 0
end;
Indicator = "Qq";
})
-- Установить заданную пользовательскую сортировку в активной панели
Macro {
description="отсортировать файлы с атрибутом ro";
area="Shell"; key="CtrlShift7";
action=function()
Panel.SetCustomSortMode(ModeNumber,0)
end;
}
Angel_Ka
Вот простой вариант для вашего случая. Благодаря tonumber он должен работать и на x86, и на x64.
Если нужно сортировать по другому атрибуту, замените FILE_ATTRIBUTE_READONLY на имя другого атрибута.
Код: Compare = function(p1, p2)
local l1 = bit.band(tonumber(p1.FileAttributes), C.FILE_ATTRIBUTE_READONLY)
local l2 = bit.band(tonumber(p2.FileAttributes), C.FILE_ATTRIBUTE_READONLY)
return l1 - l2
end;
Вот простой вариант для вашего случая. Благодаря tonumber он должен работать и на x86, и на x64.
Если нужно сортировать по другому атрибуту, замените FILE_ATTRIBUTE_READONLY на имя другого атрибута.
Код: Compare = function(p1, p2)
local l1 = bit.band(tonumber(p1.FileAttributes), C.FILE_ATTRIBUTE_READONLY)
local l2 = bit.band(tonumber(p2.FileAttributes), C.FILE_ATTRIBUTE_READONLY)
return l1 - l2
end;
Alexyz21
shmuz
Благодарю Вас, уважаемые! И ведь предполагал это, и ведь пытался даже, но, почему-то без префикса "C.", и в инете ковырялся, но не нашёл, и вот сам себя убедил, что это не работает.
Извините меня за беспокойство. И ещё раз БОЛЬШОЕ СПАСИБО за отзывчивость!
shmuz
Благодарю Вас, уважаемые! И ведь предполагал это, и ведь пытался даже, но, почему-то без префикса "C.", и в инете ковырялся, но не нашёл, и вот сам себя убедил, что это не работает.
Извините меня за беспокойство. И ещё раз БОЛЬШОЕ СПАСИБО за отзывчивость!
Angel_Ka
C.FILE_ATTRIBUTE_READONLY это просто для читаемости и понимаемости кода. Если вы поставите вместо этого просто 1, будет работать ничуть не хуже.
C.FILE_ATTRIBUTE_READONLY это просто для читаемости и понимаемости кода. Если вы поставите вместо этого просто 1, будет работать ничуть не хуже.
Angel_Ka
Когда занимаешься написанием скриптов время от времени по необходимости, то очень помогает контекстный поиск в папке со скриптами и LuaMacro - подсмотреть, как кто-то уже делал. Я использую RESearch.Grep.lua - по AltG перескакиваю в место найденного.
Когда занимаешься написанием скриптов время от времени по необходимости, то очень помогает контекстный поиск в папке со скриптами и LuaMacro - подсмотреть, как кто-то уже делал. Я использую RESearch.Grep.lua - по AltG перескакиваю в место найденного.
shmuz
Цитата:
Огромное спасибо за подсказку! Это чрезвычайно удобно! Получается, что так можно указывать десятичные коды не только отдельных атрибутов, но и их сочетаний!
А где об этом почитать можно было бы? В энциклопедии же этого нету.
Добавлено:
Alexyz21
Своей подсказкой даже опередили мой вопрос! Большое спасибо!
Цитата:
Если вы поставите вместо этого просто 1, будет работать ничуть не хуже.
Огромное спасибо за подсказку! Это чрезвычайно удобно! Получается, что так можно указывать десятичные коды не только отдельных атрибутов, но и их сочетаний!
А где об этом почитать можно было бы? В энциклопедии же этого нету.
Добавлено:
Alexyz21
Своей подсказкой даже опередили мой вопрос! Большое спасибо!
Цитата:
Это чрезвычайно удобно!
Это плохая практика - если константы "переедут" на другие числовые значения, то такой код сломается и править его будет мутно.
Angel_Ka
Цитата:
Цитата:
Цитата:
Это чрезвычайно удобно! Получается, что так можно указывать десятичные коды не только отдельных атрибутов, но и их сочетаний!Это может быть удобно иногда, но код становится непонятным, появляются так называемые "магические числа". А сочетания обычно делаются функцией bit.bor.
Цитата:
А где об этом почитать можно было бы? В энциклопедии же этого нету.Энциклопедия предполагает, что читатель знает основы программирования на языке C. macroapi_manual предполагает, что читатель в достаточной мере знает язык Lua.
Alexyz21
shmuz
Цитата:
Цитата:
Спасибо за предупреждения! При этом, имхо, коды нескольких чаще всего применяемых атрибутов и запомнить не грех, и их таблицу под рукой держать тоже полезно. Ну а в макросах, разумеется, комментарии делать надо не лениться.
Цитата:
Цитата:
Цитата:
Очень благодарю вас за неоценимую помощь!
shmuz
Цитата:
Это плохая практика - если константы "переедут" на другие числовые значения, то такой код сломается и править его будет мутно.
Цитата:
Это может быть удобно иногда, но код становится непонятным.
Спасибо за предупреждения! При этом, имхо, коды нескольких чаще всего применяемых атрибутов и запомнить не грех, и их таблицу под рукой держать тоже полезно. Ну а в макросах, разумеется, комментарии делать надо не лениться.
Цитата:
появляются так называемые "магические числа" ...Поищу в инете что такое "магические числа", и про функцию bit.bor тоже.
Цитата:
Энциклопедия предполагает, что читатель знает основы программирования на языке C. macroapi_manual предполагает, что читатель в достаточной мере знает язык Lua.Полагаю, что не один я, а определённая часть пользователей Фара находится лишь в стадии освоения, да и приобщать молодёжь к Фару приходится весьма постепенно.
Цитата:
подсмотреть, как кто-то уже делалИ действительно! Докладываю: на основе ваших подсказок и ранее сделанного Вами, Alexyz21, макроса скомпилировал макрос сортировки файлов по атрибутам с интерактивным вводом кода атрибута или их сочетания. При его применении учту ваши замечания.
Очень благодарю вас за неоценимую помощь!
Angel_Ka
Цитата:
Это тот случай, когда удобнее сделать Custom Dialog с чекбоксами из диалога изменения атрибутов:
Код: -------- Custom sort by attributes ---------
Attributes: _________________________
[ ] Read only [ ] Sparse
[ ] Archive [ ] Temporary
[ ] Hidden [ ] Offline
[ ] System [ ] Reparse point
[ ] Compressed [ ] Virtual
[ ] Encrypted [ ] Integrity stream
[ ] Not indexed [ ] No scrub data
-------------------------------------------------
{ Ok } [ Cancel ]
Цитата:
с интерактивным вводом кода атрибута или их сочетания
Это тот случай, когда удобнее сделать Custom Dialog с чекбоксами из диалога изменения атрибутов:
Код: -------- Custom sort by attributes ---------
Attributes: _________________________
[ ] Read only [ ] Sparse
[ ] Archive [ ] Temporary
[ ] Hidden [ ] Offline
[ ] System [ ] Reparse point
[ ] Compressed [ ] Virtual
[ ] Encrypted [ ] Integrity stream
[ ] Not indexed [ ] No scrub data
-------------------------------------------------
{ Ok } [ Cancel ]
Alexyz21
Цитата:
Очень надеюсь на то, что Вы покажете мне пример того, как это делается. Потому, что, во-первых, мне кажется это из области плагинов и слишком трудно для макросов. А во-вторых, и главным образом, этот вариант прельщает тем, что представляется мне наиболее соответствующим той цели сортировки по атрибутам, которую я преследую.
Пояснить это можно на имеющихся уже примерах. Тот макрос, который удалось мне составить, вычленяет в одну группу все файлы, в которых присутствует атрибут ro, в т.ч. вкупе с другими атрибутами. А макрос другой формы (ещё раз большое спасибо Вам и shmuz`у, что вы её мне показали!) вычленяет только файлы, в которых присутствует только атрибут ro.
И судя по форме предлагаемого Вами Custom Dialog`а его посредством, если я правильно понимаю, можно задавать оба варианта сортировки. Что существенно предпочтительнее.
Цитата:
Это тот случай, когда удобнее сделать Custom Dialog с чекбоксами из диалога изменения атрибутов:
Очень надеюсь на то, что Вы покажете мне пример того, как это делается. Потому, что, во-первых, мне кажется это из области плагинов и слишком трудно для макросов. А во-вторых, и главным образом, этот вариант прельщает тем, что представляется мне наиболее соответствующим той цели сортировки по атрибутам, которую я преследую.
Пояснить это можно на имеющихся уже примерах. Тот макрос, который удалось мне составить, вычленяет в одну группу все файлы, в которых присутствует атрибут ro, в т.ч. вкупе с другими атрибутами. А макрос другой формы (ещё раз большое спасибо Вам и shmuz`у, что вы её мне показали!) вычленяет только файлы, в которых присутствует только атрибут ro.
И судя по форме предлагаемого Вами Custom Dialog`а его посредством, если я правильно понимаю, можно задавать оба варианта сортировки. Что существенно предпочтительнее.
Angel_Ka
Подсказка - стоит глянуть в сторону Editor_InsertMacro.lua из комплекта Набор макросов от SimSU v2014.10. Пример реализации меню в нём есть.
Подсказка - стоит глянуть в сторону Editor_InsertMacro.lua из комплекта Набор макросов от SimSU v2014.10. Пример реализации меню в нём есть.
VictorVG2
Благодарю Вас за подсказку! Действительно, в том наборе нашёл файл Editor_InsertMacro.lua, в котором есть диалог с чекбоксами. Буду осваивать.
Благодарю Вас за подсказку! Действительно, в том наборе нашёл файл Editor_InsertMacro.lua, в котором есть диалог с чекбоксами. Буду осваивать.
Angel_Ka
Например форма:
Код: local Items = {
--[[01]] {F.DI_DOUBLEBOX, 3,1, 65,12, 0, 0,0, 0, "Custom Sort"},
--[[02]] {F.DI_TEXT, 5,2, 19,2, 0, 0,0, 0, "By Attributes: "},
--[[03]] {F.DI_EDIT, 20,2, 34,2, 0, 0,0, 0, ""},
--[[04]] {F.DI_CHECKBOX, 5,3, 30,3, 0, 0,0, 0, "&Read only"},
--[[05]] {F.DI_CHECKBOX, 5,4, 30,4, 0, 0,0, 0, "&Archive"},
--[[06]] {F.DI_CHECKBOX, 5,5, 30,5, 0, 0,0, 0, "&Hidden"},
--[[07]] {F.DI_CHECKBOX, 5,6, 30,6, 0, 0,0, 0, "&System"},
--[[08]] {F.DI_CHECKBOX, 5,7, 30,7, 0, 0,0, 0, "&Compressed"},
--[[09]] {F.DI_CHECKBOX, 5,8, 30,8, 0, 0,0, 0, "&Encrypted"},
--[[10]] {F.DI_CHECKBOX, 5,9, 30,9, 0, 0,0, 0, "Not &indexed"},
--[[11]] {F.DI_CHECKBOX, 37,3, 62,3, 0, 0,0, 0, "Sparse"},
--[[12]] {F.DI_CHECKBOX, 37,4, 62,4, 0, 0,0, 0, "Temporary"},
--[[13]] {F.DI_CHECKBOX, 37,5, 62,5, 0, 0,0, 0, "Offline"},
--[[14]] {F.DI_CHECKBOX, 37,6, 62,6, 0, 0,0, 0, "Reparse point"},
--[[15]] {F.DI_CHECKBOX, 37,7, 62,7, 0, 0,0, 0, "Virtual"},
--[[16]] {F.DI_CHECKBOX, 37,8, 62,8, 0, 0,0, 0, "Integrity stream"},
--[[17]] {F.DI_CHECKBOX, 37,9, 62,9, 0, 0,0, 0, "No scrub data"},
--[[18]] {F.DI_TEXT, -1,10, 0,0, 0, 0,0, F.DIF_SEPARATOR,""},
--[[19]] {F.DI_BUTTON, 0,11, 0,0, 0, 0,0, F.DIF_DEFAULTBUTTON+F.DIF_CENTERGROUP,"Ok"},
--[[20]] {F.DI_BUTTON, 0,11, 0,0, 0, 0,0, F.DIF_CENTERGROUP,"Cancel"}
}
local function DlgProc(hDlg,Msg,Param1,Param2)
if Msg==F.DN_INITDIALOG then
hDlg:send(F.DM_SETTEXT,3,CurAttrib)
hDlg:send(F.DM_SETCHECK,4,BoxRO and F.BSTATE_CHECKED or F.BSTATE_UNCHECKED)
...
NewAttrib = nil
elseif Msg==F.DN_EDITCHANGE and Param1==3 then -- Attributes changed
NewAttrib = hDlg:send(F.DM_GETTEXT,3)
elseif Msg==F.DN_BTNCLICK and Param1==4 then -- [x] Read only
BoxRO = Param2~=0
...
else
return
end
return true
end
Например форма:
Код: local Items = {
--[[01]] {F.DI_DOUBLEBOX, 3,1, 65,12, 0, 0,0, 0, "Custom Sort"},
--[[02]] {F.DI_TEXT, 5,2, 19,2, 0, 0,0, 0, "By Attributes: "},
--[[03]] {F.DI_EDIT, 20,2, 34,2, 0, 0,0, 0, ""},
--[[04]] {F.DI_CHECKBOX, 5,3, 30,3, 0, 0,0, 0, "&Read only"},
--[[05]] {F.DI_CHECKBOX, 5,4, 30,4, 0, 0,0, 0, "&Archive"},
--[[06]] {F.DI_CHECKBOX, 5,5, 30,5, 0, 0,0, 0, "&Hidden"},
--[[07]] {F.DI_CHECKBOX, 5,6, 30,6, 0, 0,0, 0, "&System"},
--[[08]] {F.DI_CHECKBOX, 5,7, 30,7, 0, 0,0, 0, "&Compressed"},
--[[09]] {F.DI_CHECKBOX, 5,8, 30,8, 0, 0,0, 0, "&Encrypted"},
--[[10]] {F.DI_CHECKBOX, 5,9, 30,9, 0, 0,0, 0, "Not &indexed"},
--[[11]] {F.DI_CHECKBOX, 37,3, 62,3, 0, 0,0, 0, "Sparse"},
--[[12]] {F.DI_CHECKBOX, 37,4, 62,4, 0, 0,0, 0, "Temporary"},
--[[13]] {F.DI_CHECKBOX, 37,5, 62,5, 0, 0,0, 0, "Offline"},
--[[14]] {F.DI_CHECKBOX, 37,6, 62,6, 0, 0,0, 0, "Reparse point"},
--[[15]] {F.DI_CHECKBOX, 37,7, 62,7, 0, 0,0, 0, "Virtual"},
--[[16]] {F.DI_CHECKBOX, 37,8, 62,8, 0, 0,0, 0, "Integrity stream"},
--[[17]] {F.DI_CHECKBOX, 37,9, 62,9, 0, 0,0, 0, "No scrub data"},
--[[18]] {F.DI_TEXT, -1,10, 0,0, 0, 0,0, F.DIF_SEPARATOR,""},
--[[19]] {F.DI_BUTTON, 0,11, 0,0, 0, 0,0, F.DIF_DEFAULTBUTTON+F.DIF_CENTERGROUP,"Ok"},
--[[20]] {F.DI_BUTTON, 0,11, 0,0, 0, 0,0, F.DIF_CENTERGROUP,"Cancel"}
}
local function DlgProc(hDlg,Msg,Param1,Param2)
if Msg==F.DN_INITDIALOG then
hDlg:send(F.DM_SETTEXT,3,CurAttrib)
hDlg:send(F.DM_SETCHECK,4,BoxRO and F.BSTATE_CHECKED or F.BSTATE_UNCHECKED)
...
NewAttrib = nil
elseif Msg==F.DN_EDITCHANGE and Param1==3 then -- Attributes changed
NewAttrib = hDlg:send(F.DM_GETTEXT,3)
elseif Msg==F.DN_BTNCLICK and Param1==4 then -- [x] Read only
BoxRO = Param2~=0
...
else
return
end
return true
end
Alexyz21
Цитата:
Да, объём информации устрашающий. Но попробую разобраться — хочется довести дело до конца.
Большое спасибо за помощь!
Цитата:
простора для творчества хватает
Да, объём информации устрашающий. Но попробую разобраться — хочется довести дело до конца.
Большое спасибо за помощь!
4559, 4560 на ура валяться в крэш при топтании клавы, подозреваю, что дело в AltHistory - на её шоркатах такое заметил.
Alexyz21
Я им не пользуюсь и у меня этой проблемы нет. Так что похоже плагин легонько устарел.
Я им не пользуюсь и у меня этой проблемы нет. Так что похоже плагин легонько устарел.
Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
Предыдущая тема: оффтоп
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.