Simplifying Development with FormBuilder and AppBuilder RAD Tools
250 likes | 361 Vues
Learn how FormBuilder and AppBuilder revolutionize software development, creating efficient workflows, enhancing user interfaces, and streamlining code customization and validation processes.
Simplifying Development with FormBuilder and AppBuilder RAD Tools
E N D
Presentation Transcript
FormBuilder and AppBuilderBASIS RAD Tools Nico Spence, Chief Marketing OfficerJon Bradley, Software EngineerBASIS International Ltd.
Overview • Introducing FormBuilder and AppBuilder • Using the RAD tools • Building a font chooser • Creating code blocks • Customizing code profiles • Creating a file management utility • Binding record sets to controls • Incorporating validation • Enabling the pre-processor • Summary
Introduction • FormBuilder creates/edits .arc files • Functional super-set of ResBuilder • Resource file presents a GUI interface to the user with graphical controls • AppBuilder creates/edits .gbf files • Functional super-set of GUIBuilder • .gbf files specify code blocks linked to event handlers • Generates BBj program source and tokens • Integrated with each other
Advantages • Integrated • Simultaneous edit of GUI screen controls and code fired by their events • Cross Platform • Edit .arc and .gbf files anywhere BBj runs • WYSIWYG Interface • What You See Is What You Get • Child Windows rendered in TopLevelWindows • Look and feel of IDE or Visual PRO/5 legacy L&F
Using the Tool • Building a Font Chooser • Build the form with child windows and tabs • Add code blocks • Create a menu • Add Events and associate code with Code Editor • Save file • Build source and tokens • Run program
Code Profiles • Code pre-pended to code block for event handler • Specified in the Default Code Profile • Profile can automatically add an event handler for specific events on a given control type
Record Sets • BBjRecordSet • Set of records • From a data file via a string template • SQL select query • Maintains a pointer to the current record • Provides method to insert, update, delete, and move between records • Often bound to one or more data-aware GUI controls
File Maintenance Utility • Use new RAD tools to create a simple file maintenance utility • Uses record sets • Navigator control • Apply validation rules – special circumstance • Fields • Forms • Enabling the mouse scroll event • Adding Images – the image bucket
Extending the RAD FMUMouse Scroll Code gb__event! = bbjapi().getSysGui().getLastEvent() gb__control! = gb__event!.getControl() direction = gb__event!.getScrollDirection() if(direction) navigator!.getTargetRecordSet().next(err=*next) else navigator!.getTargetRecordSet().previous(err=*next) endif
Image Bucket • Resolves the Development vs. Deployment directory structure problem • Develop with your images in one place • Deploy with the images in your prefix • Image Bucket has no effect on .arc or .gbf file; exists to display images at development time
Pre-Processor • AppBuilder provides a pre-processor • User programmable in BBj • Example of easy string-literal substitutions by adding a pre-processed MessageBox • Add KEY_PRESS event to Form 101 • Add code to switch • Edit pre-processor source file <install>/appbuilder/app_gb_pre_processor.src
Review • Introduced FormBuilder and AppBuilder • Used the RAD tools • Built a font chooser • Created code blocks • Customized code profiles • Created a file management utility • Bound record sets to controls • Incorporated validation • Enabled the pre-processor
Summary • Added function and integrated tools • Benefits • Tenfold reduction in development time • Investment in old code preserved • Backward compatible • Intuitive interface • Facilitates rapid application prototyping • Employee satisfaction enhanced