Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Сб июн 24, 2017 6:38 am

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 354 сообщения ]  На страницу Пред. 120 21 22 23 24
Автор Сообщение
СообщениеДобавлено: Пт ноя 11, 2016 12:26 pm 
Не в сети
Mentor/Kernel Developer
Аватара пользователя

Зарегистрирован: Чт мар 26, 2015 5:16 pm
Сообщения: 1157
0CodErr
Что исправлять? Поломались RunOD, GenFiles, fNav... странно, все от одного автора, наверно совпадение...
Из-за сжатия, пустые байты на размер не влияют. Если уж на то пошло, в RunOD я сэкономил байт 160. А потом ты внезапно предлагаешь просто взять и вкомпилировать код EitBox-а в само приложение - это уже взаимоисключающие параграфы.
Я думаю, администрация с удовольствием облила бы говном архитектуру boxlib, а в остальном, администрация молчит - администрация не против.


Вернуться к началу
СообщениеДобавлено: Пт ноя 11, 2016 12:37 pm 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 915
Pathoswithin, ты дурачка решил включить что ли?
Поломались все использующие editbox. Просто те, что находятся в сборке, обновляются со следующей ревизией вместе с BoxLib.

За последнее время уже не первый раз ломается обратная совместимость странно, все от одного автора, наверно совпадение

Цитата:
Из-за сжатия, пустые байты на размер не влияют.
А чего же ты тогда переживаешь из-за этого?
Цитата:
Экономия 12 байт в структуре стоит дополнительных 32 байта в коде


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


Вернуться к началу
СообщениеДобавлено: Пт ноя 11, 2016 1:00 pm 
Не в сети
Mentor/Kernel Developer
Аватара пользователя

Зарегистрирован: Чт мар 26, 2015 5:16 pm
Сообщения: 1157
0CodErr, ты дурачка решил включить что ли?
Назови не свою программу, которая поломалась.
Назови конкретно, где поломалась обратная совместимость.
Действительно, почему я должен переживать из-за того, что школота не умеет использовать макросы... и вообще include. Я твою программу молча починил и оптимизировал, вот и ты делай что хочешь: чини что хочешь, жалуйся администрации - твоё дело.


Вернуться к началу
СообщениеДобавлено: Пт ноя 11, 2016 1:11 pm 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 915
Pathoswithin писал(а):
Назови не свою программу
Решил на личности перейти?
А я тебе ещё раз скажу
Цитата:
Поломались все использующие editbox. Просто те, что находятся в сборке, обновляются со следующей ревизией вместе с BoxLib.

Цитата:
Я твою программу молча починил
Чинить надо было BoxLib. Ты только время потратил.


Вернуться к началу
СообщениеДобавлено: Пт ноя 11, 2016 2:05 pm 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4088
Ребят. Не разводите холивар и не нужно дрочить на байты, рабочие программы важнее.

Pathoswithin
Старайся не ломать обратную совместимость всегда тогда, когда это возможно.
Реально не все юзают макрос, есть программы и на других языках программирования.

0CodErr
Программирование штука такая, что иногда обновление может что-то и заломать. Пожалуйста, просто обнови свои программы.

_________________
Через тернии к звездам


Вернуться к началу
СообщениеДобавлено: Пт ноя 11, 2016 2:29 pm 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 915
Leency, я всего лишь предлагаю изменить в структуре editbox приватные поля, используемые только самим editbox-ом, а не приложением
Цитата:
struc edit_box width,left,top,color,shift_color,focus_border_color,\
blur_border_color,text_color,max,text,mouse_variable,flags,size,pos
{
.width dd width
.left dd left
.top dd top
.color dd color
.shift_color dd shift_color
.focus_border_color dd focus_border_color
.blur_border_color dd blur_border_color
.text_color dd text_color
.max dd max
.text dd text
.mouse_variable dd mouse_variable
.flags dd flags+0
.size dd size+0
.pos dd pos+0
.offset dd 0
.cl_curs_x dd 0
.cl_curs_y dd 0
.shift dd 0
.shift_old dd 0

.height dd 0
.char_width dd 0
}

на
Код:
.cl_curs_x  dw  0
.cl_curs_y  dw  0
.shift      dw  0
.shift_old  dw  0

чтобы размер структуры оставался как и прежде
Код:
ed_struc_size=76
а не 84. Потому что сейчас код пишет в новые поля
Код:
.height dd 0
.char_width dd 0
и затирает данные. Другой вариант решения, это не использовать эти поля, если не установлен флаг. Но, как я думаю, первый вариант всё же лучше.


Вернуться к началу
СообщениеДобавлено: Пт ноя 11, 2016 3:52 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Чт сен 03, 2009 1:52 pm
Сообщения: 1593
Pathoswithin писал(а):
0CodErr
Что исправлять? Поломались RunOD, GenFiles, fNav... странно, все от одного автора, наверно совпадение...
Из-за сжатия, пустые байты на размер не влияют. Если уж на то пошло, в RunOD я сэкономил байт 160. А потом ты внезапно предлагаешь просто взять и вкомпилировать код EitBox-а в само приложение - это уже взаимоисключающие параграфы.
Я думаю, администрация с удовольствием облила бы говном архитектуру boxlib, а в остальном, администрация молчит - администрация не против.

Администрация, во-первых, культурная, а во-вторых, считает, что разглагольствования на форуме ничему не помогут. По существу - API у box_lib сделано неправильно, "структура" с данными компонента должна иметь размер 4 байта и содержать один указатель. В крайнем случае можно ещё включить поля, смысл которых железобетонно меняться не будет и которые полезны использующему коду, вроде координат в окне. Указатель на данные должна выделять сама box_lib, которая знает, что ей нужно. А так, как сделано, - совместимость обречена периодически ломаться.

_________________
Сделаем мир лучше!


Вернуться к началу
СообщениеДобавлено: Пт ноя 11, 2016 10:52 pm 
Не в сети
Mentor/Kernel Developer
Аватара пользователя

Зарегистрирован: Чт мар 26, 2015 5:16 pm
Сообщения: 1157
В принципе, и сейчас можно добавить функцию CreateEditbox, которая будет делать инициализацию и возвращать указатель на структуру, только существующим программам это не поможет. Меня больше всего удивляет экспортируемый параметр "версия" - какой от него толк? Вместо него можно было экспортировать размер структуры, это обеспечило бы совместимость для неассемблерных программ.


Вернуться к началу
СообщениеДобавлено: Пт ноя 11, 2016 11:52 pm 
Не в сети

Зарегистрирован: Вт мар 08, 2016 11:00 pm
Сообщения: 246
/me предлагает жить дружно, но по законам программирования для каждого языка

Идеальных решений пока не изобрели, языков тоже


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 354 сообщения ]  На страницу Пред. 120 21 22 23 24

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB