| Плагин TreeList |
| Sower | Дата: Суббота, 17 Январь 2009, 09:55 | Сообщение # 1 |
Ветеран форума
Группа: Проверенные
Сообщений: 808
Репутация: 9
Награды: 2
Статус: Offline
| Создал плагин для просмотра дерева каталогов. Написан на delphi. В архиве имеется справка. Что скажете господа?

|
| |
| |
|
| DEMBEL | Дата: Суббота, 17 Январь 2009, 15:26 | Сообщение # 2 |
Наш дизайнер
Группа: Модераторы
Сообщений: 2601
Репутация: 29
Награды: 16
Статус: Online
| Ну что же сказать, молодец! Прадалжай в том же духе, как говорится...
|
| |
| |
|
| Peter | Дата: Суббота, 17 Январь 2009, 15:57 | Сообщение # 3 |
Админ NeoBook
Группа: Админ NeoBook
Сообщений: 2582
Репутация: 37
Награды: 14
Статус: Offline
| Quote (DEMBEL) Что скажете господа? Тестирование это, в первую очередь, поиск ошибок. Что сказать? После первого наскока... Работать ещё! Работать и работать! Не знаю у кого как, но на моем компе (XP_Pro_SP3 + ММВ498) плагин нормально работать отказывается! Вот если сейчас (поле ввода пустое или указана несуществующая папка), нажать кнопку "ОК", то ММВ "вылетает" с закрытием и 4-кратным предложением отправить отчет об шибках. Почему, выбранный пункт дерева каталогов не подставляется автоматически в поле ввода текста (EditBox)?. И ещё, ММВ-шный диалог выбора цвета устроен криво, поэтому лучше в плагин впихнуть свой собственный. И, перво-наперво, думать об обработке возможных ошибок ввода данных в плагин, а не об авторских правах! Чтой-то картинка хреново прикрепляется и не желает отображаться....
Чем дорожу... Чем рискую на свете я.... Мигом одним! Только мигом одним!... WHITESNAKE St.Petersburg - 11.12.2008
Сообщение отредактировал Peter - Суббота, 17 Январь 2009, 16:23 |
| |
| |
|
| DEMBEL | Дата: Суббота, 17 Январь 2009, 18:25 | Сообщение # 4 |
Наш дизайнер
Группа: Модераторы
Сообщений: 2601
Репутация: 29
Награды: 16
Статус: Online
| Quote (Peter) то ММВ "вылетает" с закрытием мда, есть такое... Quote (Peter) Почему, выбранный пункт дерева каталогов не подставляется автоматически в поле ввода текста (EditBox)?. видимо оно предназначено для произвольного ввода пути к папке. (в демо нужно изменить кодировку шрифта в этом поле на "Кириллица", а то рус. символы неверно отображаются)Добавлено (17 Январь 2009, 18:25) --------------------------------------------- + ошибка: не удается найти файл "Корзина" и "Сетевое окружение" при их "запуске" А что, так и должно быть, когда после открытия папки она через мгновение закрывается?
|
| |
| |
|
| YURIY | Дата: Суббота, 17 Январь 2009, 18:44 | Сообщение # 5 |
Злостный админ
Группа: Администраторы
Сообщений: 2537
Репутация: 55
Награды: 20
Статус: Offline
| Grand, снести тему в мусорку? В каком разделе тема создана? "Общие вопросы по MMB"???
Вечная память Андрею Сергееву!
|
| |
| |
|
| Sower | Дата: Вторник, 20 Январь 2009, 08:17 | Сообщение # 6 |
Ветеран форума
Группа: Проверенные
Сообщений: 808
Репутация: 9
Награды: 2
Статус: Offline
| Извините! А куда?

|
| |
| |
|
| YURIY | Дата: Вторник, 20 Январь 2009, 21:18 | Сообщение # 7 |
Злостный админ
Группа: Администраторы
Сообщений: 2537
Репутация: 55
Награды: 20
Статус: Offline
| Я думаю, что просить оценить плагин не нужно в разделе, где задают вопросы по MMB. Или я не прав? O_o
Вечная память Андрею Сергееву!
|
| |
| |
|
| toizy | Дата: Четверг, 22 Январь 2009, 17:46 | Сообщение # 8 |
Студийная субстанция
Группа: Администраторы
Сообщений: 2270
Репутация: 27
Награды: 8
Статус: Offline
| Grand, кидай исходники, может чего подскажем
|
| |
| |
|
| Sower | Дата: Пятница, 23 Январь 2009, 09:08 | Сообщение # 9 |
Ветеран форума
Группа: Проверенные
Сообщений: 808
Репутация: 9
Награды: 2
Статус: Offline
| d$=EditBox$ ***проверяем пуст ли едитбокс If (d$<>'') Then ***нет, тогда проверяем, есть ли такая папка ***делаем это с помощью ниже прописанной функции FileExist("d$","yes") If (yes=1) Then *** функция возвращает 1, значит существует, значит запускаем ***в противном случае нет! PluginSet("PlugIn","d$") PluginRun("PlugIn","dir") Else ***однако проверяем, есть ли такой диск disc$=d$+'Program Files' FileExist("disc$","yes") If (yes=1) Then ***если эта папка существует, тогда и диск тоже!:) PluginSet("PlugIn","d$") PluginRun("PlugIn","dir") ***однако возможно папки Program Files не будет, тогда проверим еще несколько возможных Else disc$=d$+'Windows' FileExist("disc$","yes") If (yes=1) Then PluginSet("PlugIn","d$") PluginRun("PlugIn","dir") Else disc$=d$+'Games' FileExist("disc$","yes") If (yes=1) Then PluginSet("PlugIn","d$") PluginRun("PlugIn","dir") End End End End End Код конечно большой, но стоит того, чтобы обеспечить стабильность! Сначало, зачем ***однако проверяем, есть ли такой диск, объясняю: Просто функция FileExist не воспринимает имя диска и выдает 0! А нам нужно иногда и сам диск открыть (эта проблема - побочный эффект стабилизации от вылета и коррекции адреса из него и вытекает большая часть кода!) потому прибегнем к проверке, есть ли тут папка (на диске), если нет, тогда этого диска не существует, если есть, тогда ОК, запускаем! Можно сделать коррекцию внутри плагина, но это потом, да и вообще, зачем тогда ммв, просто чтоли как тело, куда вставляем продукты, совсем отдаленного от ммв производства, попросту говоря, нужно и ммв использовать! Плагин чисто для визуализации каталогов, а не для коррекционных рамок под нужный проект! Но всё же, конечно, плагин и был для того создан, чтобы дать ммв-эшнику новые возможности, потому просто вставьте этот скрипт, возможно он не так надежен (могут не оказаться эти папки там), но что есть пока что ----------------------------------------------------------------------- как запустить рабочий стол? пишем просто rfDesktop, Мой компьютер rfMyComputer но и скрипт тогда измениться: ............................. If (yes=1) Then *** функция возвращает 1, значит существует, значит запускаем ***в противном случае нет! PluginSet("PlugIn","d$") PluginRun("PlugIn","dir") Else If (d$='rfDesktop') Then PluginSet("PlugIn","d$") PluginRun("PlugIn","dir") Else If (d$='rfMyComputer') Then PluginSet("PlugIn","d$") PluginRun("PlugIn","dir") Else ***однако проверяем, есть ли такой диск disc$=d$+'Program Files' FileExist("disc$","yes") If (yes=1) Then ***если эта папка существует, тогда и диск тоже!:) ............................. Delphi в этом компоненте принимает именно такие ссылки на рабочий стол, мой компьютер... вот еще некоторые, думаю сами догадаетесь, что они открывают: ..... rfInternet rfPersonal rfPrinters rfPrintHood rfPrograms rfRecent rfSendTo rfStartMenu rfTemplates rfNetwork rfC ommonDesktopDirectory ..... те, у кого есть делфи смогут найти все ссылки! ------------------------------ Но для удобства можно сделать "ассациацию": Например, вводим "Рабочий стол", ОК, скрипт находит это условие, т.е. если Рабочий стол, тогда шлем плагину rfDesktop и запускаем! ------------------------------ думаю не все проблемы решил, а только одну с уважением, Grand

|
| |
| |
|
| toizy | Дата: Пятница, 23 Январь 2009, 09:16 | Сообщение # 10 |
Студийная субстанция
Группа: Администраторы
Сообщений: 2270
Репутация: 27
Награды: 8
Статус: Offline
| Quote (Grand) Можно сделать коррекцию внутри плагина Вот и сделай. На юзера нужно вешать как можно меньше, а то он обидится И защита от дурака никогда не мешает, таких её немало осталось
|
| |
| |
|
| Sower | Дата: Пятница, 23 Январь 2009, 09:30 | Сообщение # 11 |
Ветеран форума
Группа: Проверенные
Сообщений: 808
Репутация: 9
Награды: 2
Статус: Offline
| как её внутри та сделать?

|
| |
| |
|
| toizy | Дата: Пятница, 23 Январь 2009, 10:37 | Сообщение # 12 |
Студийная субстанция
Группа: Администраторы
Сообщений: 2270
Репутация: 27
Награды: 8
Статус: Offline
| если не знаешь, клади исходники - покажем что да как. чувствую, там есть ещё простор для оптимизации Как сделать? да очень просто. написать одну функцию для обработки всех вход параметров. если что-то не так, она возвратит ошибку и плагин промолчит в тряпочку. А если не контролировать ввод, то ведь юзер может такого состряпать... ой
|
| |
| |
|
| Peter | Дата: Пятница, 23 Январь 2009, 11:30 | Сообщение # 13 |
Админ NeoBook
Группа: Админ NeoBook
Сообщений: 2582
Репутация: 37
Награды: 14
Статус: Offline
| Сорри за то, что снова встреваю, но... Quote (Grand) Можно сделать коррекцию внутри плагина, но это потом, Очень интересная логика.... Подобная "коррекция", вообще-то, должна идти под номером один в любой программе! Quote (Grand) плагин и был для того создан, чтобы дать ммв-эшнику новые возможности, потому просто вставьте этот скрипт, возможно он не так надежен (могут не оказаться эти папки там), но что есть пока что Цирк!... Quote (toizy) Вот и сделай. На юзера нужно вешать как можно меньше, а то он обидится ИМЕННО!!! Quote (toizy) клади исходники Дима! А как же тогда "авторские права"?....
Чем дорожу... Чем рискую на свете я.... Мигом одним! Только мигом одним!... WHITESNAKE St.Petersburg - 11.12.2008
|
| |
| |
|
| toizy | Дата: Пятница, 23 Январь 2009, 12:08 | Сообщение # 14 |
Студийная субстанция
Группа: Администраторы
Сообщений: 2270
Репутация: 27
Награды: 8
Статус: Offline
| Пётр, ну зачем так - щас чувак обидится Гранд! Клади, клади исходники, не стесняйся. мне всё равно делать на работе не фиг, посмотрю. правда, делфи тут нет, но кой-чего посоветую всё же.
|
| |
| |
|
| Peter | Дата: Суббота, 24 Январь 2009, 01:36 | Сообщение # 15 |
Админ NeoBook
Группа: Админ NeoBook
Сообщений: 2582
Репутация: 37
Награды: 14
Статус: Offline
| Quote (toizy) Пётр, ну зачем так - щас чувак обидится Ок! Пожалуй, больше не буду сильно придираться! Надеюсь, что Гранд не смертельно расстроился...
Чем дорожу... Чем рискую на свете я.... Мигом одним! Только мигом одним!... WHITESNAKE St.Petersburg - 11.12.2008
|
| |
| |
|
| Sower | Дата: Четверг, 29 Январь 2009, 09:49 | Сообщение # 16 |
Ветеран форума
Группа: Проверенные
Сообщений: 808
Репутация: 9
Награды: 2
Статус: Offline
| Quote (Peter) А как же тогда "авторские права"?.... Какие авторские права? Я что там целую лецнзию прописал? Просто прописал строчку, а что?Peter, ты чтоли его сделал? Хоть он прост, но мой! Peter! Хватит меня критиковать!

|
| |
| |
|
| toizy | Дата: Четверг, 29 Январь 2009, 10:23 | Сообщение # 17 |
Студийная субстанция
Группа: Администраторы
Сообщений: 2270
Репутация: 27
Награды: 8
Статус: Offline
| Ты бы уже доделывал его... Пока всё-таки
|
| |
| |
|
| Peter | Дата: Четверг, 29 Январь 2009, 10:24 | Сообщение # 18 |
Админ NeoBook
Группа: Админ NeoBook
Сообщений: 2582
Репутация: 37
Награды: 14
Статус: Offline
| Quote (Grand) Хватит меня критиковать! А это уже МНЕ решать! Quote (Grand) Можно сделать коррекцию внутри плагина, но это потом, Любую работу нужно делать нормально, или ВООБЩЕ не делать!
Чем дорожу... Чем рискую на свете я.... Мигом одним! Только мигом одним!... WHITESNAKE St.Petersburg - 11.12.2008
|
| |
| |
|
| DEMBEL | Дата: Четверг, 29 Январь 2009, 15:39 | Сообщение # 19 |
Наш дизайнер
Группа: Модераторы
Сообщений: 2601
Репутация: 29
Награды: 16
Статус: Online
| да ладно,что вы напали - чувак сделал первый свой плагин, нужно относиться терпимее... но тем не менее, Grand, раз уж ты что-то создаешь подобное, заранее будь готов правильно воспринимать критику - она зачастую имеет причину и твоя задача - понять что пытаются тебе посоветовать и принять к сведению, не отвлекаясь на эмоциональный компонент высказываний, и уж тем более не вступать в спор и не отвечать на них
|
| |
| |
|
| toizy | Дата: Четверг, 29 Январь 2009, 16:20 | Сообщение # 20 |
Студийная субстанция
Группа: Администраторы
Сообщений: 2270
Репутация: 27
Награды: 8
Статус: Offline
| Гранд! Советую тебе забить на своё оскорблённое достоинство )) Если отделить эмоциональнуй составляющую то останется то, что тебе нужно. Если сделать, что тебе посоветовали, то получится на самом деле полезный плагин. В противном случае, его не будут использовать, если он в любой момент может выбить программу. Пусть критикуют, ты извлечёшь много полезного. Вот, например, о копирайтах. У as-master'a вроде было даже несколько моих плагинов, которые я никак не подписывал. В других я прикалывался в духе "Для дорогого кореша" и т.д. Поставил ты копирайт, и нормально. А вот что действительно стоило бы убрать - это ужасный машинный перевод на английский. Добавлено (29 Январь 2009, 16:20) --------------------------------------------- Вот! Сказали почти одно и то же
|
| |
| |
|
| Sower | Дата: Воскресенье, 01 Февраль 2009, 08:17 | Сообщение # 21 |
Ветеран форума
Группа: Проверенные
Сообщений: 808
Репутация: 9
Награды: 2
Статус: Offline
| Готово! Исправил, да в придачу парочку новых функций!

|
| |
| |
|
| toizy | Дата: Вторник, 03 Февраль 2009, 10:54 | Сообщение # 22 |
Студийная субстанция
Группа: Администраторы
Сообщений: 2270
Репутация: 27
Награды: 8
Статус: Offline
| Ага, попробовал я функцию, которая, как казалось, должна отключать-подключать меню по правой клавише. Не работает...
|
| |
| |
|
| Sower | Дата: Пятница, 06 Февраль 2009, 09:34 | Сообщение # 23 |
Ветеран форума
Группа: Проверенные
Сообщений: 808
Репутация: 9
Награды: 2
Статус: Offline
| Quote (toizy) Ага, попробовал я функцию, которая, как казалось, должна отключать-подключать меню по правой клавише. Не работает... Ну она не совсем не работает... Когда отключаем меню для правой кнопки, оно всё равно открывается, но только не для папки, которую вы выбрали, а для корневого каталога, т.е. где она находится(жесткий диск, CD\DVD и т.д.). Если честно, то не знаю почему эта функция так себя ведет

|
| |
| |
|
| toizy | Дата: Пятница, 06 Февраль 2009, 09:45 | Сообщение # 24 |
Студийная субстанция
Группа: Администраторы
Сообщений: 2270
Репутация: 27
Награды: 8
Статус: Offline
| Quote (Grand) Если честно, то не знаю почему эта функция так себя ведет ну ты даёшь... тогда удали её на фиг...
|
| |
| |
|
| Sower | Дата: Пятница, 06 Февраль 2009, 09:55 | Сообщение # 25 |
Ветеран форума
Группа: Проверенные
Сообщений: 808
Репутация: 9
Награды: 2
Статус: Offline
| Quote (toizy) ну ты даёшь... тогда удали её на фиг... Удалять в последнюю очередь, надо попробывать исправить. Вот тут вопросик у меня (желательно пример): как из плагина активировать какую-нибудь функцию mmb, например скрипт. Но и раз на такие вопросы дело пошло то: размер dll получается черезвучайно большой, не могу его уменьшить, вроде лишние библотеки из uses убираю, а толку!

Сообщение отредактировал Grand - Пятница, 06 Февраль 2009, 10:20 |
| |
| |
|
| toizy | Дата: Пятница, 06 Февраль 2009, 10:27 | Сообщение # 26 |
Студийная субстанция
Группа: Администраторы
Сообщений: 2270
Репутация: 27
Награды: 8
Статус: Offline
| Кидай ИСХОДНИК
|
| |
| |
|
| Sower | Дата: Пятница, 06 Февраль 2009, 10:29 | Сообщение # 27 |
Ветеран форума
Группа: Проверенные
Сообщений: 808
Репутация: 9
Награды: 2
Статус: Offline
| Кидаю! Исходники к последней 1.1 версии

|
| |
| |
|
| toizy | Дата: Пятница, 06 Февраль 2009, 10:30 | Сообщение # 28 |
Студийная субстанция
Группа: Администраторы
Сообщений: 2270
Репутация: 27
Награды: 8
Статус: Offline
| Уж мы-то с Алексом познали искусство уменьшения размеров до микроскопических Для вызова сценария в послед версии ММВ существует обратная связь. а ты, судя по всему, используешь старый SDK! Добавлено (06 Февраль 2009, 10:30) --------------------------------------------- Сек, ща посмотрю...
|
| |
| |
|
| Sower | Дата: Пятница, 06 Февраль 2009, 10:31 | Сообщение # 29 |
Ветеран форума
Группа: Проверенные
Сообщений: 808
Репутация: 9
Награды: 2
Статус: Offline
| В смысле старый, что новее есть или, что старый добрый?

|
| |
| |
|
| toizy | Дата: Пятница, 06 Февраль 2009, 10:35 | Сообщение # 30 |
Студийная субстанция
Группа: Администраторы
Сообщений: 2270
Репутация: 27
Награды: 8
Статус: Offline
| Блин тут короч без делфи не обойтись. придёца ноут запускать. Добавлено (06 Февраль 2009, 10:35) --------------------------------------------- старый, да. с тех пор сдк изменился. да и вообще, у каждого он свой, сделанный под себя. У меня свой, у Алекса свой... Добавлено (06 Февраль 2009, 10:35) --------------------------------------------- так, а демка где?
|
| |
| |