160 likes | 294 Views
Symbian Programming Basics. Application Framework. Abbreviations. UIKON UI and control framework are common to Symbian Platforms. Standard user interface components Application's starting services Event handling services CEik*. Abbreviations. CKON
E N D
Symbian Programming Basics Application Framework
Abbreviations • UIKON • UI and control framework are common to Symbian Platforms. • Standard user interface components • Application's starting services • Event handling services • CEik*
Abbreviations • CKON • The user interface library of the Series 80 • AVKON • The user interface library of the Series 60 family • CAkn* • CONE (Control Environment) • Provides a framework for • creating user interface controls • Applications to handle user interface events • CCoe*
User commands / interaction Symbian OS Application Framework
User commands / interaction Series 60 Application Structure
Application class • Inherited from CEikApplication • Starts the application • Defines the application's properties. • Creates the Document class
Document class • Creates the AppUi object in CreateAppUiL function • Store the applications persistent state. • Creates the Engine/ Model object (in basic architecture) • The base class for document class is CAknDocument
AppUI-class • Inherited from CEikAppUi • Handling application-wide events • Menu commands • Opening/closing files • etc. • Creates application's views
AppView (Container) • Displays data on the screen • Collect data from the user • There can be several different views • View is derived from CCoeControl (or CAknView, if the application using the View Architecture
Engine/Model • Contains applications functionality • Takes care of the data handling
Model-View-Controller • MVC is a common design pattern used in UI applications on the Series 60. • The application is split into three separate components • Each component in the application has a specific role.
Model-View-Controller • Model • Encapsulates the application state • Exposes the application functionality • Notifies the View of Changes • View • Renders the Model • Receives updates from the Model • Sends user input to the Controller • Controller • Defines application behavior • Maps user actions to Model updates • Selects Views for response
References • Series 60 2nd Edition SDK Help • Developer Platform 2.0 for Series 60: Designing C++ Applications • Developer Platform 2.0 for Series 60: Introduction to Designing C++ Applications
Exercise • Create a new Series 60 application with Application Wizard. Application wizard is a tool for generating skeleton applications for Symbian OS. • For more information read SDK Help >>Developer Guides >> Application Wizard Guide. • Familiarize yourself with Symbian Application Framework and answer the following questions. • What is the base class of the AppUi class? • Which function in Document class, creates the instance of the AppUi class? • Which function in AppUi class, handles menu commands? • Which class acts as the controller between the model and the view • What is the role of the Container class in MVC architecture?