Difference between revisions of "BlackBox Component Builder 1.7"
Dgdanforth (talk | contribs) |
Ivan denisov (talk | contribs) |
||
Line 6: | Line 6: | ||
==Migration from 1.6== | ==Migration from 1.6== | ||
The several typical changes you should do for adopting your subsystems for 1.7 are listed bellow: | The several typical changes you should do for adopting your subsystems for 1.7 are listed bellow: | ||
=== IN to VAR === | ==== IN to VAR ==== | ||
Now it is forbidden to use a variable declared as IN parameter as the receiver of a method call that expects a VAR parameter. You should change the IN parameter to VAR or the VAR receiver to IN in such a case. | Now it is forbidden to use a variable declared as IN parameter as the receiver of a method call that expects a VAR parameter. You should change the IN parameter to VAR or the VAR receiver to IN in such a case. | ||
=== Read-only variables === | ==== Read-only variables ==== | ||
With 1.7 you can not call the methods of a read-only variable object if there is VAR option in argument of method. So you should export such a variable by *. | With 1.7 you can not call the methods of a read-only variable object if there is VAR option in argument of method. So you should export such a variable by *. | ||
=== WinNet === | ==== WinNet ==== | ||
WinNet.hostnet definition [http://redmine.blackboxframework.org/projects/blackbox/repository/diff?utf8=%E2%9C%93&rev=b3f0ad9f9012f89fb110909485ef22d35a49a46e&rev_to=bc96c56d1c94894f8e2afaf4a919ad8e79cdae64 was changed], so you need to replace: | WinNet.hostnet definition [http://redmine.blackboxframework.org/projects/blackbox/repository/diff?utf8=%E2%9C%93&rev=b3f0ad9f9012f89fb110909485ef22d35a49a46e&rev_to=bc96c56d1c94894f8e2afaf4a919ad8e79cdae64 was changed], so you need to replace: | ||
Line 29: | Line 27: | ||
<code>inaddr := SYSTEM.VAL(WinNet.in_addr, hostentry.h_addr_list^[0]^)</code> | <code>inaddr := SYSTEM.VAL(WinNet.in_addr, hostentry.h_addr_list^[0]^)</code> | ||
=== Underlined white space === | ==== Underlined white space ==== | ||
Underlined spaces and tabs are now shown according to the defined format, i.e. they are underlined. So we recommend you to check your documentation files and/or program generated text files to prevent unexpected underlines. | Underlined spaces and tabs are now shown according to the defined format, i.e. they are underlined. So we recommend you to check your documentation files and/or program generated text files to prevent unexpected underlines. | ||
=== UTF8 === | ==== UTF8 ==== | ||
UTF-8 conversion supported "out of the box" from module <code>Strings</code>. So if you are using UTF-8 conversions embedded in your own code or from some third-party modules, you can switch to the new Strings procedures. | UTF-8 conversion supported "out of the box" from module <code>Strings</code>. So if you are using UTF-8 conversions embedded in your own code or from some third-party modules, you can switch to the new Strings procedures. | ||
=== External calls === | ==== External calls ==== | ||
1.7 supports calling URLs (e.g. web pages, E-mails), so now you can be sure that the user can call your link from documentation even if external CPC subsystems such as Info or i21Sys are not installed. | 1.7 supports calling URLs (e.g. web pages, E-mails), so now you can be sure that the user can call your link from documentation even if external CPC subsystems such as Info or i21Sys are not installed. | ||
Line 43: | Line 41: | ||
Use the <code>Dialog.OpenExternal</code> procedure to call a URL. | Use the <code>Dialog.OpenExternal</code> procedure to call a URL. | ||
=== Config & Converters === | ==== Config & Converters ==== | ||
The new Converter.next* export allows uninstalling and ordering converters "on the fly" from any module | The new Converter.next* export allows uninstalling and ordering converters "on the fly" from any module | ||
not just from the Config module used at BlackBox startup. | not just from the Config module used at BlackBox startup. | ||
==Useful tools for migration== | |||
There is the tool for batch compilation of subsystems: [http://forum.blackboxframework.org/download/file.php?id=124 ypkDevTool]. |
Revision as of 09:39, 5 September 2016
Download beta version
Migration from 1.6
The several typical changes you should do for adopting your subsystems for 1.7 are listed bellow:
IN to VAR
Now it is forbidden to use a variable declared as IN parameter as the receiver of a method call that expects a VAR parameter. You should change the IN parameter to VAR or the VAR receiver to IN in such a case.
Read-only variables
With 1.7 you can not call the methods of a read-only variable object if there is VAR option in argument of method. So you should export such a variable by *.
WinNet
WinNet.hostnet definition was changed, so you need to replace:
inaddr := hostentry.h_addr_list^[0]^[0]
to
inaddr := SYSTEM.VAL(WinNet.in_addr, hostentry.h_addr_list^[0]^)
Underlined white space
Underlined spaces and tabs are now shown according to the defined format, i.e. they are underlined. So we recommend you to check your documentation files and/or program generated text files to prevent unexpected underlines.
UTF8
UTF-8 conversion supported "out of the box" from module Strings
. So if you are using UTF-8 conversions embedded in your own code or from some third-party modules, you can switch to the new Strings procedures.
External calls
1.7 supports calling URLs (e.g. web pages, E-mails), so now you can be sure that the user can call your link from documentation even if external CPC subsystems such as Info or i21Sys are not installed.
Use the Dialog.OpenExternal
procedure to call a URL.
Config & Converters
The new Converter.next* export allows uninstalling and ordering converters "on the fly" from any module not just from the Config module used at BlackBox startup.
Useful tools for migration
There is the tool for batch compilation of subsystems: ypkDevTool.