Цитата Billi_Jo (
)
Преобразования типа требует функция LoadFont(). Правда, в справке также идет пример с преобразованием:
Код
Var font=LoadFont("Courier New",30)
SetGadgetFont(1,CINT(font))
Так что, наверное, это не баг, а фича)
С типами LoadFont все правильно. Возвращаемый font должен быть с типом HFONT. Но есть одна каверза с функцией SetGadgetFont:
Если ей во втором параметре функции в библиотеке задать напрашивающийся тип HFONT, то при компиляции библиотеки будет куча предупреждений. Я и раньше ничего с этим сделать не мог и сейчас не вижу путей. Видно парсер FB не переваривает присваивание параметру с типом HFONT значения по умолчанию. Думаю пережить это можно
Цитата
Также преобразования требует load_Icon() в совместительстве с WinAPI'шным SendMessage:
Load_icon тоже сделана правильно, она должна возвращать тип HICON. Ну а то, что Sendmessage просит преобразование типов, так с этим нифига не сделать. SendMessage - универсальная функция, чего только в ее параметры не запихивают.
Цитата
Еще осталась проблема с 2D_Draw:
Это я вроде уже объяснил в том топике. Там проблема с винапишными функциями TransparentBlt, AlphaBlend (какой из них , сейчас точно не вспомню). Мелкософт уж такими их сделала. Исправить нифига не получится , только если полностью переписывать алгоритм рисования с прозрачностью. Сейчас даже боюсь об этом думать
В любом случае, спасибо за баг-репорты.
Кстати самому подвернулся еще один баг с функцией FontRequester . Когда я ее писал на старых версиях компилятора, все работало как часики, а сегодня случайно обнаружил, что функция не работает. Оказалось, что проблема в том, что в компилятор внесли константы TRUE и FALSE. Когда я писал либу у меня константа TRUE была равна 1 , а теперь в компиляторе она равна -1. Отсюда и баг.