## With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

No credit card required

## Book Description

REALbasic Cross-Platform Application Development treats REALbasic as a serious development environment and is targeted to developers with a minimum of programming experience, but who may or may not be new to the REALbasic platform. Written by a writer and developer with extensive REALbasic experience with input and guidance from REAL Software, this book will show you how to take advantage of the new cross-platform abilities of REALbasic and teach you how to create cross-platform applications. Don't waste any more time with the other novice-oriented REALbasic books out there. Get inside this development environment with REALbasic Cross-Platform Application Development.

3. Acknowledgments
4. We Want to Hear from You!
6. Introduction
7. 1. Introduction to REALbasic
8. 2. Programming with REALbasic
1. Defining a Computer Program
2. REALBasic Terminology
3. Quick Start: A Simple Web Browser
4. Procedural Programming in REALbasic
1. Statements and Declarations and Comments
2. Expressions: Operands and Operators
3. Variables and Literals
4. Intrinsic Data Types
5. Declaration
6. Variables and Constants
7. Arithmetic with Integers, Singles, and Doubles
1. Integer
2. Singles and Doubles
3. Number Literals
4. Coercion
5. Mod Operator
6. Boolean and Comparison Operators
8. Strings
9. Color
10. Literals
11. Visual Basic Data Types
12. Methods
13. Arrays
5. Flow Control—Conditionals
6. Flow Control—Loops
1. Do...Loop
2. Do...Loop Until
3. Do Until...Loop
4. For Each...Next
5. For...Next...Step
6. While...Wend
7. Using Loops
8. Nesting Loops
7. Variants
8. Modules
1. Built-in Modules
2. Built-in Math Functions
3. Built-in String Functions
9. Creating the StringParser Module
1. Create a New Project
2. Creating a Module
3. Access Scope
4. Constants
5. Properties
10. Summary
9. 3. Classes and Objects
1. The Class Hierarchy
2. Creating a New Class
3. Declaration and Instantiation
4. Constructors and Destructors
5. Garbage Collection
6. Inheritance
7. Object Operators
9. Calling the Overridden Method
11. Casting
12. Oddities
13. Encapsulation
14. Access Scope: Public, Private, Protected
15. Setting Properties with Methods
16. Default and Optional Parameters
17. Declaring Variables Static and Const
18. Revisiting the StringParser Module
1. The Dictionary Class
2. The Properties File Format
19. Example: Creating a Properties Class
20. Data-Oriented Classes and Visual Basic Data Types
1. Date Class
2. MemoryBlock Class
1. The NewMemoryBlock Function
2. MemoryBlock Properties
3. MemoryBlock Methods
3. Collection Class
1. Interfaces and Component-Oriented Programming
1. Special Operators
3. Boolean
3. Extends
4. Conclusion
10. 4. Cross-Platform Application Development
1. That Other Cross-Platform Language
2. Compiling REALbasic Applications
1. A Note About UNIXlike Systems
3. Compiling Applications
3. Configuring the Compiler
4. The App Class
1. App Properties Pane
1. The ID Section
2. The Appearance Section
3. The Version Info Section
4. The Windows Settings Section
5. Macintosh Settings
6. The Linux Settings Section
5. Files and Directory Organization
1. FolderItem Class
2. Referencing a FolderItem: Paths and URLs
3. How Folders and Files Are Organized
4. File Types
5. Volume and VolumeCount Functions
6. Navigating the Directory Tree
7. File Properties
8. Permissions and File Access
9. Moving, Copying, and Deleting Files
10. Opening, Creating, and Saving Files
6. Compiler Directives
7. User Interface Differences
1. Desktops
3. Macintosh: Dock
4. Linux: Pane (KDE and Gnome)
5. Keyboard
7. Screen
8. System Module
1. Environment Variables
2. Line Endings
1. EndOfLine Functions
9. Windows Registry
11. A Final Word About Macintosh
12. Summary
11. 5. Designing a Desktop Application
1. Integrated Development Environment
1. File, New Project
2. File, New Window
3. File, Import/Export
2. Preferences
3. Find and Replace
2. Desktop Applications: Programming Graphical User Interfaces
3. Model-View-Controller
3. Controller
2. iPreferences Interface
4. The Model
5. Views
4. Windows and Controls
1. Simple Windows
1. MsgBox
2. GetOpenFolderItem, GetSaveFolderItem...SelectFolder
3. MessageDialog
4. FolderItemDialog, SelectFolderDialog, OpenDialog, SaveAsDialog
2. Editing Windows
3. Global Window Functions
4. Windows ID Properties
5. Windows Position Properties
6. Windows Appearance Properties
1. Window.Frame as Integer
2. Window.Composite as Boolean
3. Window Colors and Backdrops
4. Window.Title as String
5. Visible as Boolean
6. FullScreen as Boolean
8. CloseButton as Boolean
9. Resizable as Boolean
10. LiveResize as Boolean
11. MaximizeButton as Boolean
12. MacProcID as Integer
5. Managing Windows
1. Window States
2. Mouse Position
6. Controls
1. The RectControl Class
2. Control Order and Control Arrays
3. Drawing Guides
4. Binding
5. Pushbutton Control
6. TabPanel
7. EditField Control
8. ListBox
9. HTMLViewer Control
10. HTTPSocket Control
11. ProgressBar
7. Exception Handling
1. Runtime Exceptions
2. Try...Catch...End/Finally
3. Logging
4. Debugger
8. User Interface Response
1. Timers
1. Periodic Events with the Timer Control
3. Class Window1 Inherits Window
10. CustomTray
11. Summary
12. 6. XML and Advanced Text Processing
1. Encoding
1. UCS—Universal Character Set (UCS-2, UCS-4)
2. UTF—Unicode Transformation Format (UTF-8, UTF-16, UTF-32)
3. Byte Order Mark
4. Converting Encodings
5. Base64 Encoding
6. XML and HTML Entity Encoding
7. Detecting Encoding in XML Documents
2. XML Processing
1. Document Node
2. XMLDocument
4. XML and Object Instantiation
3. Regular Expressions
1. RegEx Class
2. RegExMatch Class
3. RegExOptions Class
4. Text Validation and Variable Substitution
5. Variable Substitution in the Properties Class
4. StyledText
1. Apply Styles
5. Summary
13. 7. Console Programming and the Shell
1. Sample Applications
2. The Shell Class
1. Shell Properties
2. Shell Events
3. Shell Methods
4. Subclassing the Shell
5. Subversion
6. Ant Shell
3. Developing Console Applications
1. Transformer: Command-Line XML Transformation
2. CGI Application
4. Conclusion
14. 8. Databases
1. The No-Code Database
1. DataControl
2. DatabaseQuery Control
2. The Coded Database
1. The Database Classes
1. Database Class
2. REALSQLdatabase
3. RecordSet
4. DatabaseRecord
5. DatabaseField
6. The Coded Application
7. RowID
3. SQL Equivalents
1. Delete Statement
2. Insert Statement
3. Update Statement
4. Creating Indexes
5. Select and Joins
6. Trigger
4. Conclusion
15. 9. Networking and Internet Programming
1. A Simplified View of a Computer Network
2. The Protocol Stack
3. The Internet
4. REALbasic Networking Classes
5. Network Object
6. Network Interface Class
7. System Members
8. TCP and UDP Networks
1. SocketCore Class
2. Sending and Receiving Data
3. SocketCore Properties
4. TCPSocket
1. TCPSocket Events
2. HTTPSocket Inherits TCPSocket
5. From CGI to HTTPServer
6. The HTTPServer Application
7. Handling POST Requests: Posting Forms and Transferring Files
9. IPCSocket Class
10. UDPSocket
1. UDPSocket Class
1. Properties
2. Datagram
11. Conclusion
16. 10. Graphics
1. Raster and Vector Graphics
1. The Graphics Class
2. Picture Class
3. Canvas Control
4. The Canvas Control—Scrolling Text and Images
5. Object2D Class
1. PixmapShape
2. RectShape
3. RoundRectShape Inherits RectShape
4. OvalShape Inherits RectShape
5. ArcShape Inherits OvalShape
6. StringShape
7. CurveShape
8. FigureShape
9. Group2D
6. Printing with REALbasic
7. Summary
17. 11. Scripting and Extending REALbasic
1. Scripting
1. RBScript
2. Office Automation
1. OLEObject
2. OLEParameter
3. OLEParameter Class Type Constants
4. OLEContainer Control
5. ActiveX
6. Handling Events
7. OLEException
8. WordApplication Class
9. Documents Collection
2. Extending REALbasic
1. Declares
2. Plug-ins
1. Third-Party Plug-ins
3. Component X Graphics (http:/ / www.componentx.com/ CXGraphics/ )
3. Summary
18. A. Appendix
1. Sample Code and Application