The full change.log.txt is here
*** News -- HeadsUp ! *** Major Changes !
gformfill => pickform
gselect => picklist
gnumpad => numpad
"gformfill" is now renamed to "pickform" !
"gselect" is now renamed to "picklist" !
"gnumpad" is now renamed to "numpad" !
picklist behaves the same except that commas will be used to seperate list items instead of '|'.
In addition, you will be able to place it at any x,y position for any transistion.
pickform 3rd gen
pickform replaces gformfill was re-written to cater only for short lists (2 screensful max) similar to picklist. It uses only 1 bitmap.
This means you will not be able to use it for very long lists (use formfill if you have long lists).
The upside is that it will be a lot smoother. And it will be able to call embedded forms and other widgets to do some of it's work.
e.g you will be able to create forms with subforms to simulate multi-level drop down lists.
The new version restarts as pickform v1.00.
init was simplified internally to calculate tx_height, row_height and srows, depending wether you use scaling (or not). srows and row_height are no longer rounded down. This means more consistent font sizes when switching between portrait / landscape.
*** Notice - - HEW requires Basic 1.87+ . *** this is now the minimum requirement.
Basic!1.87 has a host of new features and bug fixes.
*** Notice - - INIT.BAS - is now a function init_hew().
This means that init.bas can be included anywhere before the first piece of code in your main program,
It also means you need to bundle.get 'global' (1) hew values before you use them.
include themes.bas % widget colors
include event.bas % event loop
include init.bas % init screen and globals
bundle.get 1, "scr_w", scr_w
bundle.get 1, "scr_h", scr_h
bundle.get 1, "row_height", row_h
bundle.get 1, "tx_height", tx_height
bundle.get 1, "widgets", widgets
textin.bas was replaced with textbox.bas
It is essentially the same except it can also be used for general output.
v4.0 console.bas - the "console" commands have been shortened to "con"
call console_make ("", bsize, x,y,ww,wh) --> call con_make ("", bsize, x,y,ww,wh)
call console ("print", "hello",wg) --> call con ("print","hello",wg)
call console_bulk (a_list, wg) --> call con_bulk (a_list, wg)
*** Major change !
*** Notice - HeadsUp! - NAME$ has been phased out ! -- widgets no longer have names.
I have phased out name$ from all widgets. So use the bundle ID to identify widgets instead. (button.bas and other widgets that need it has name$ changed to 'aux$' instead to hold other data.
There is also an added "type" to the bundle of detectable widgets for easier identification.
All demos have been updated. Old programs are not likely to work, so you'll have to redownload the
Apologies for this big change, It WILL affect all programs that use name$, it will affect all demos. But
demos in their own zip packages will still work because zip packages carry all the old files needed.
terminal_demo.zip - Demo for keyinp and console.
keyinp.bas - Push-Out keyboard input widget - with input at top so as not to obstruct the view.
Upgrade - to BASIC 1.84+ and Themes
* Important ! HEW now requires BASIC 1.84 as minimum version.
It uses some new commands not found in earlier versions of BASIC, most notably gr.text.height for optimum accuracy.
* Important ! HEW now requires themes.bas
themes.bas carries the default colors for all widgets.
Color changing will be in one place and easier to modify.
All demos and widgets have been upgraded with themes.bas
Now supports multi-line text. (dependent widgets also updated).BackKey detection
Added multiple flash e.g call button ("flash", "3", wg)
Changed Style 4 to type "Rounded-2" (previously bracketed).
Changed Style type no-border to type '0' (previously type '5').
Centered muti-line text vertically. Blank lines at start can add vertical height.
Init, Event, ISR and all widgets detecting for backkey have been modfied for the new detection model.Launch
HEW is stable enough for launch. All widgets are now officially starting from v1.0.Msg_OK.bas and Ask_YN.bas
Two new dialog widgets.event.bas
These modal dialogs use button.bas for their buttons. (button.bas must be included with your project).
They manlpulate the global bundle variable 'widgets' and borrow event.bas's event loop.
(and they must be created last of all in order to appear on top). dialog_demo.
get_event (widgets) is now renamed and replaced with event_get().text.bas
event_get() uses the global bundle variable 'widgets'. This variable may be manipulated by other widgets that use event.bas. All demos re-packaged.
textdo has been renamed to text_do for consistency.
txtscroll.bas v1.0Aug 2014
Smoothly scrolls textlines vertically.init.bas
now scales to smallest act/dev ratio (w|h), whichever is smallest. (everything will now fit inside the screen).
gformfill v.2Jul 2014
joins HEW as a reusable widget. Code looks heavy and bloated but it works. It is still non-scrollable and for landscape, it is really only just usable for 10 rows otherwise the text is too small for most phones (should be ok for tablets though).
gformfill has a new type called 'counter' which is a number spinner.
was converted into a function. Any code can now call get_event ( event_get() - oct-2014), the widget list must be passed, (widget list is now global -oct 2014) any touched widget is returned or 0 if bakkey.
The rfo-basic forum is hosted on freeforums.org.
Paul Laughton - RFO Basic (named after "The Dr. Richard Feynman Observatory").
Nicolas Mougin - RFO-basic Launcher and App-Builder
stefano - XAB x-apk-builder
Nick Antonaccio - Learn RFO Basic tutorials