Вверх ↑
Этот топик читают: Гость
Ответов: 1950
Рейтинг: 126
#61: 2022-01-17 15:06:55 ЛС | профиль | цитата
Я вот тоже думаю, а не потянет это за собой много переделок?
Я не в плане других компонентов.
карма: 5

0
Разработчик
Ответов: 25999
Рейтинг: 2104
#62: 2022-01-17 15:43:10 ЛС | профиль | цитата
flint2 писал(а):
Я вот тоже думаю, а не потянет это за собой много переделок?

Так вот я и жду ответа от пользователей. Я даже и не пытался рисовать на контексте контролов, тк меня сильно раздражала лысый контекст. А отрисовывать весь контрол по-новой самому компонентами, нет уж, извините.

Редактировалось 1 раз(а), последний 2022-01-17 15:47:44
карма: 22
Если что-то хочешь сделать хорошо -- сделай сам!
0
Ответов: 1950
Рейтинг: 126
#63: 2022-01-17 16:11:20 ЛС | профиль | цитата
Мне идея нравится, может я чего то недопонимаю.
Пусть ещё кто чего скажет.

Редактировалось 1 раз(а), последний 2022-01-17 16:14:19
карма: 5

0
Разработчик
Ответов: 25999
Рейтинг: 2104
#64: 2022-01-20 03:57:24 ЛС | профиль | цитата
Делая тестовые схемы по управлению контролами, столкнулся с темой, которая меня забодала уже давно. Итак на схеме места между элементами немного, но вот такая каскадная конструкция вымораживает:
Add(IndexToChanel,8310914,294,350)
{
Point(Index)
link(Index,2603975:State,[])
}
Add(Switch,2603975,294,301)
{
DataOn=Integer(1)
DataOff=Integer(0)
Point(doOn)
Point(State)
}

или для MT-потока
Add(Switch,15189058,392,301)
{
DataOn=Integer(1)
DataOff=Integer(0)
Point(doOn)
Point(State)
}
Add(MT_IndexToChanel,11598861,392,350)
{
Point(Index)
link(Index,15189058:State,[])
}
Да, это обычный 2-х канальный коммутатор. Может когда-то, на небольших схемах это и прокатывало, но на современных схемах это уже не совсем катит, особенно, если это двухэтажная конструкция. Было решено сделать компонент, который совмещает в себе три компонента Switch, IndexToChanel и MT_IndexToChanel, но только на два канала, и этот компонент я назвал -- ChanelSwitch. Компонент получился до нельзя простым, там кода кот наплакал, но свою функцию он выполняет исправно. Ловите на SVN, я его туда добавил.

--- Добавлено в 2022-01-20 04:42:53

На данный момент управление контролами позволяют делать неплохие пользовательские отрисовки, оставляя не тронутой ни одной точки событий самого контрола, те без обвязки и засорения схемы связями и лишними элементами. Вот хотя бы кастомная отрисовка элемента Label, можно без проблем взять и переподключить модуль управления на другой Label, он автоматически подстроится под текущие параметры:



Артефакты на видео -- это приколы программы ScreenToGif, в оригинале таких артефактов нет.

Думаю, что вскоре можно будет попробовать интересующимися данного функционала, включая все, что тут уже описывали. Все это выйдет отдельным тестовым патчем, с экспериментальными схемами. Вот только схемной кастомизацией отрисовки, будете заниматься уже сами. Возможно, если будет желание, стартовые схемки для основных контролов нарисую, а там из полезного, КМК, только панель и осталась, из которой спокойно можно сварганить групповой бокс, к примеру. Жаль только, что мне пока не удалось полностью победить обычный Button, он ни за какие коврижки не хочет отдавать свой контекст в обычном режиме, только при наличии XP-стиля. Короче, эксперименты продолжаются.

Редактировалось 11 раз(а), последний 2022-01-20 13:19:16
карма: 22
Если что-то хочешь сделать хорошо -- сделай сам!
1
Голосовали:fox-video
Ответов: 215
Рейтинг: 14
#65: 2022-01-20 06:03:04 ЛС | профиль | цитата
ChanelSwitch реально полезный компонент.

RemoteAccessManager, я так понял, что-то вроде AdjustControls?
карма: 3

0
Разработчик
Ответов: 25999
Рейтинг: 2104
#66: 2022-01-20 13:15:22 ЛС | профиль | цитата
fox-video писал(а):
я так понял, что-то вроде AdjustControls

Неее, это совершенно разные концепции. AdjustControls пытались сделать для считывания параметров контролов с последующем сохранением и восстановлением этих свойств, а RemoteAccessManager предназначен для RealTime удаленного управлением конкретным контролом без прямых связей с ним.
карма: 22
Если что-то хочешь сделать хорошо -- сделай сам!
0
Ответов: 134
Рейтинг: 2
#67: 2022-01-20 16:33:35 ЛС | профиль | цитата
nesco писал(а):
RemoteAccessManager предназначен для RealTime удаленного управлением конкретным контролом без прямых связей с ним

Не понял, можно подробней и схему. Я так думаю что бы связи не тянуть к контроля или как?
карма: 0
HiAsm Studio
0
Разработчик
Ответов: 25999
Рейтинг: 2104
#68: 2022-01-20 17:35:24 ЛС | профиль | цитата
envoy_sky писал(а):
Я так думаю что бы связи не тянуть к контроля или как?

Все правильно понял, именно так. К примеру, засунул управление в мультик, и из него имеешь доступ к основным методам, событиям, переменным любого привязанного контрола, который является наследником WinControls (все свойства WinControls обрабатываются в модуле Win). Можно не в мультик, можно и на том же уровне, но в стороне от самого контрола. Единственное что, так это нельзя снизу вверх управлять, те нельзя будет с основного поля управлять, например, дочерней формой. Я же привел примерное видео управления контролом Label, так вот в мультике как раз и стоит Менеджер удаленного доступа. Все будет, и патч, и схемы, но немного позднее, после окончания альфа-тестирования.
Вот, кстати, скриншот того мультика:



и точки компонента RemoteAccessManager

PointsRemoteAccessManager_011.png

Редактировалось 10 раз(а), последний 2022-01-20 17:54:42
карма: 22
Если что-то хочешь сделать хорошо -- сделай сам!
0
Ответов: 134
Рейтинг: 2
#69: 2022-01-20 18:45:37 ЛС | профиль | цитата
Да ёшкин кот, сколько не спрашивал как цвет поменять на поле где компоненты размещаем, тишина, смотрю у вас цвет то не белый. Глаза болят от яркого, как серый поставить или немного темней?
Ну ждём новшество, я только за.

Редактировалось 2 раз(а), последний 2022-01-20 18:49:08
карма: 0
HiAsm Studio
0
Разработчик
Ответов: 25999
Рейтинг: 2104
#70: 2022-01-20 18:53:36 ЛС | профиль | цитата
envoy_sky писал(а):
Глаза болят от яркого, как серый поставить или немного темней?

Это у меня цвет всех дефолтных окон в Винде. Устанавливается через реестр. Вот мои установки (содержимое файла *.reg):
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Control Panel\Colors]
"Window"="248 231 193"

После установки необходимо перезагрузиться.

Редактировалось 2 раз(а), последний 2022-01-20 18:54:50
карма: 22
Если что-то хочешь сделать хорошо -- сделай сам!
0
Ответов: 5036
Рейтинг: 562
#71: 2022-01-23 10:33:55 ЛС | профиль | цитата
nesco писал(а):
Вот хотя бы кастомная отрисовка элемента Label, можно без проблем взять и переподключить модуль управления на другой Label, он автоматически подстроится под текущие параметры:

nesco, опять зубастая графика, зачем Мониторы с ЭЛТ давно в прошлом.
карма: 5
0
Разработчик
Ответов: 25999
Рейтинг: 2104
#72: 2022-01-23 13:49:49 ЛС | профиль | цитата
andrestudio писал(а):
опять зубастая графика, зачем

А причем тут зубастая графика? Это просто пример внешнего использования контекста. Ну тут такое дело, что поддерживает контекст, то на нем и можно будет отрисовать.

Редактировалось 3 раз(а), последний 2022-01-23 13:52:23
карма: 22
Если что-то хочешь сделать хорошо -- сделай сам!
0
Ответов: 5036
Рейтинг: 562
#73: 2022-01-23 14:00:11 ЛС | профиль | цитата
nesco, RoundEdge это что
карма: 5
0
Разработчик
Ответов: 25999
Рейтинг: 2104
#74: 2022-01-23 15:14:59 ЛС | профиль | цитата
andrestudio писал(а):
RoundEdge это что

nesco писал(а):
Это просто пример

Я не хочу сейчас тратить уйму времени на попытку отрисовки в примере альфа-канала средствами HiAsm. И это свойство просто включает режим внутри мультика -- это внешняя точка мультика. Все показанные свойства -- внешние свойства мультика, только и всего. Я же привел скриншот этого мультика. DocumentTemplate, кстати, очень хорошо поддерживает альфа-канал, но это если позволяет контекст. Я уже приводил кучу примеров работы с ним на мультислойных формах. Была моя такая схемка -- SenseWidget, так она был построена полностью на альфа-канале.
Вот, кстати, ее отрисовка на экране (жаль, парсирование сайтов погоды слетело, одни часы остались):


Редактировалось 4 раз(а), последний 2022-01-23 15:24:46
карма: 22
Если что-то хочешь сделать хорошо -- сделай сам!
0
Ответов: 5036
Рейтинг: 562
#75: 2022-01-23 15:29:03 ЛС | профиль | цитата
nesco, альфа-канал тут не причём. antialiasing средствами GDI это 3,4 кратное увеличение картинки. GDI+ с этим не парится. Все железки (современные уже есть) Ну что опять на те же грабли Или что нужно спросить начальника транспортного цеха

--- Добавлено в 2022-01-23 16:22:20

nesco писал(а):
(жаль, парсирование сайтов погоды слетело, одни часы остались):

оно и будет слетать, для лент нужен XML парсер

Редактировалось 1 раз(а), последний 2022-01-23 16:22:20
карма: 5
0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)