>Лучше создать еще один столбец "Вкл. в мультиселект" для того, чтобы один и тот же
>прокси мог быть включен и в
>SingleSelect и в MultiSelect, только в режиме SingleSelect маска
>будет игнорироваться.
>Это необходимо для того, чтобы, если я не хочу использовать какой-нибудь
>мультиселектовый прокси в данный момент, я смог
>его отключить, а не удалять его из списка.
согласен, возможность временно отключать условный прокси нужна - см. далее новую редакцию правил
>И добавить во вкладку "Родительский прокси" опцию "Разрешить прокси по условию" или что- то подобное.
согласен.
дополню - установка этого флага снимает установку с безусловного прокси в таблице (исключающий выбор) - см. далее новую редакцию правил
>Необходимо сделать так, чтобы можно было ставить галочки одновременно на простом прокси и на "Прокси по условию"
согласен, но с иной трактовкой - см. далее
>для того, чтобы, если ни одно из условий не совпало, то
>использовать простой прокси.
не согласен
вернее тогда не получится однокликовость выбора в меню (однокликовость достигается только исключающим выбором, SingleSelect)
>Т.е. например у меня основной прокси Proxomitron и, если включено "Прокси по условию",
>чтобы при несовпадении ни одного из условий, использовался именно Proxomitron.
это решаемо с новой версие правил - см. пример далее
---
Улучшенный вариант правил:
1.Во вкладке "Родительский прокси" (лучше просто "Прокси") в таблице прокси вводим колонку "Условие".
2.Поле в этой колонке может быть маской (условный прокси, УП) или пустым (безусловный прокси, БП). Соотвественно пустое условия поле и маска '.*' в этом поле - не(!) тождественны по смыслу.
3.БП во вкладке "Прокси" могут быть выбраны флажком в колонке "Разрешить" - выбор "исключающий" между всеми безусловными - SingleSelect (как это работает и сейчас).
4.БП могут быть выбраны в меню при правом клике над иконкой в трее - выбор "исключающий" между всеми безусловными - SingleSelect (как это работает и сейчас).
5.УП во вкладке "Прокси" могут быть выбраны флажком в колонке "Разрешить" - выбор "неисключающий" между всеми условными - MultiSelect.
6.УП не показываются по отдельности в меню при правом клике над иконкой в трее. Все условные прокси в этом меню представлены единственной строкой "Прокси по условию".
7.В меню при правом клике над иконкой в трее появляется SingleSelected(!)-меню со списком, количество строк в котором равно количеству БП + 1: все безусловные прокси плюс дополнительный пункт "Прокси по условию" (если есть хоть один УП). Этот доп. пункт представляет одной строкой все(!) разрешённые УП из таблицы.
8.При выборе в меню над треем любого БП - этот прокси становится текущим (как это работает и сейчас).
9.При выборе в меню над треем пункта "Прокси по условию" - перебираются все разрешённые УП (с галкой), начиная с первого в списке до выполнения маски. Строки таблицы с БП в этом переборе не участвуют.
10.Другими словами, поскольку меню SingleSelect, то выбор пункта меню "Прокси по условию" одним кликом сбрасывает текущий БП. И наоборт - выбор БП сбрасывает пункт "Прокси по условию".
11.Окно хинта над треем показывает текущий прокси - либо безусловный, либо текущий выбранный по списку условный, с совпавшей маской.
12.Безусловные и условные прокси в списке "Прокси" могут чередоваться между собой как угодно - для УП важен лишь их порядок относительно условных же прокси
13.Во вкладке "Прокси" вне(!) таблицы вводим флаг "Разрешить прокси по условию". Его выбор приводит к сбросу флага "Разрешить" в строке БП. Выбор флага "Разрешить" в строке БП приводит к сбросу флага "Разрешить прокси по условию" вне таблицы. Т.е. полная аналогия SingleSelect-функциональности в меню над треем.
14.Другими словами - все УП в таблице на вкладке "Прокси" - мультиселективные, а все БП - с исключающим селектом (SingleSelect).
15.При просмотре условных прокси хотя бы одна маска должна выполниться. Резонно последний из УП сделать с маской .*
16.Если ни одна из условных масок не совпала - прокси обходится совсем.
Соблюдается преемственность и добавляется новая функциональность.
Никаких мультиселектов меню(!). Все мультиселекты в меню - лишние удвоенные клики (на каждый из мультиселектов - клик на трее плюс клик селект-деселект).
---
Пример заполнения таблицы на вкладке "Прокси":
| Наименование | Условие |
---------------------------------------
+| provider по условию | <маска для варезника> |
+| proxomitron по условию | .* |
| proxomitron | <пусто> |
+| provider | <пусто> |
В этом примере <provider по условию> и <provider> - имеют однаковые хоcт и порт
и <proxomitron по условию> и <proxomitron> имеют однаковые хоcт и порт.
Т.е. физически ДВА прокси, а логически Четыре (если точнее - два безусловных плюс сгруппированные в один - условные прокси)
--
замечание: чем плодить лишние клики мультиселекта в меню, лучше сделать один раз бОльшее количество логических прокси, основанных на меньшем количестве физических
--
Тогда в меню над треем появятся три строки:
Прокси по условию
proxomitron
+ provider
Такой расклад меню направит к провайдеру безусловно.
А вот такой - направит безусловно к проксомитрону.
Прокси по условию
+ proxomitron
provider
А так будет выбран один из <provider по условию> или <proxomitron по условию>.
+ Прокси по условию
proxomitron
provider
Добавлено: mai62 >А может, чтобы не валить все в кучу, сделать отдельные списки для этих прокси?
моё последнее предложение - по СУТИ и есть отдельные списки, но
1.в р амках одной таблицы
2.совместимости с существующим
3.с сохранением скорости выбора - однокликовость
Добавлено: >Можно и отдельный список для "Прокси по условию". Т
я тоже могу с этим согласиться
но два списка (по сути) в одной таблице - будут более наглядны, чем два списка на разных страницах
>Только приоритет у него сделать выше, чем у обычным прокси.
>Т.е. сначала проверяется прокси из списка по условию, а потом уже
>проверяется прокси из обычного списка.
а вот с наличием приоритета и выбором БП после непопадания в УП - не согласен.
в таком случае не получится одним кликом выбрать в меню ЛЮБОЙ из нескольких БП , при активном групповом УП (пункт "Прокси по условию") .
др. сл. - только искючающий селект между БП и групповым УП