View previous topic :: View next topic |
Author |
Message |
sanytta
Joined: 18 Oct 2008 Posts: 2
|
(Separately) Posted: Sat Oct 18, 2008 04:04 Post subject: Узнать выделен ли файл под курсором |
|
|
Здравствуйте!
Пишу скрипт на PowerPro. Собственно проблема: как узнать выделен ли файл под курсором. |
|
Back to top |
|
|
Вахмурка
Joined: 27 Dec 2004 Posts: 2586 Location: Большая деревня Москва
|
(Separately) Posted: Wed Oct 22, 2008 00:03 Post subject: |
|
|
Да, но ответ будет верен только при одном условии: если известна сортировка.
Поясню. Требуется узнать две вещи: список выделенных файлов и индекс текущего файла. Первое легко получить, обеспечив скрипт параметром %L. Второе тоже можно сделать (например, так). Далее, располагая полным списком файлов в директории, получаем имя текущего файла, а получить список можно через file.listfiles, хотя бы.
Наконец, если найденное имя входит в найденный спиок, ответ на твой вопрос положительный, иначе отрицательный.
А вот дальше начинаются заморочки. Мы знаем индекс файла при текущей сортировке, а при ее смене индекс, естественно, меняется. Если бы ТС мог вернуть текущий способ сортировки (посылкой сообщений классу THeaderClick), задача бы решалась однозначно. _________________ Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон) |
|
Back to top |
|
|
Вахмурка
Joined: 27 Dec 2004 Posts: 2586 Location: Большая деревня Москва
|
(Separately) Posted: Wed Oct 22, 2008 20:55 Post subject: |
|
|
Извини, братан - запутал я тебя. Все проще можно сделать. Передаем параметры %L и %P%N и определяем, входит ли файл %P%N в список %L. Проверено - работает!
P.S. Впервые в жизни вошел на форум с мобильного телефона. Вот техника дошла! _________________ Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон) |
|
Back to top |
|
|
sanytta
Joined: 18 Oct 2008 Posts: 2
|
(Separately) Posted: Sun Oct 26, 2008 22:09 Post subject: |
|
|
Спасибо!! Действительно работает! Только одна проблема: если не выделенно ни одного файла, то список %L будет содержать текущий файл(хоть он и не выделен!!), поэтому программа посчитает что он выделен.
И еще где можно почитать про параметры такие как %L, %N и %P? Какие еще есть? Что-то в стандартной справке по totalcommader не нашел. |
|
Back to top |
|
|
Tol!k
Joined: 01 Apr 2008 Posts: 1727 Location: Арзамас
|
(Separately) Posted: Sun Oct 26, 2008 22:29 Post subject: |
|
|
sanytta wrote: | И еще где можно почитать про параметры такие как %L, %N и %P? Какие еще есть? Что-то в стандартной справке по totalcommader не нашел. |
Вызови настройку панели инструментов, и в ней -- справку |
|
Back to top |
|
|
Вахмурка
Joined: 27 Dec 2004 Posts: 2586 Location: Большая деревня Москва
|
(Separately) Posted: Tue Oct 28, 2008 21:00 Post subject: |
|
|
Quote: | Только одна проблема: если не выделенно ни одного файла, то список %L будет содержать текущий файл(хоть он и не выделен!!), поэтому программа посчитает что он выделен | Ну, это не проблема: Code: | if(NumOfElems == 1)
IsIn = true; | Для специалистов по Бейсику и Паскалю: если длина списка равна 1, то ответ на вопрос "Выделен ли файл под курсором" положительный. Правда, надо знать специфику задачи: есть ли разница между отсутствием группы и группой из одного ТЕКУЩЕГО файла?
Добавлено
Почему-то на вопрос о PowerPro я привел код на C++. Просто в последние дни приходится много писать именно на С++. Исправляюсь: Code: | if(NumOfElems == 1)
flag set 1 |
_________________ Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон) |
|
Back to top |
|
|
|