Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

DasherWidgetInterface.h

Go to the documentation of this file.
00001 // DasherWidgetInterface.h
00002 //
00004 //
00005 // Copyright (c) 2002 Iain Murray
00006 //
00008 
00009 #ifndef __DasherWidgetInterface_h__
00010 #define __DasherWidgetInterface_h__
00011 
00012 
00013 #include "DasherTypes.h"
00014 #include <string>
00015 
00016 namespace Dasher {class CDasherWidgetInterface;}
00017 class Dasher::CDasherWidgetInterface
00018 {
00019 public:
00021         //
00024         virtual void Start()=0;
00025         
00026         // Times in milliseconds are required so Dasher runs at the correct speed.
00028         //
00035         virtual void TapOn(int MouseX, int MouseY, unsigned long Time)=0;
00036         
00038         virtual void PauseAt(int MouseX, int MouseY)=0;
00039         
00041         //
00044         virtual void Unpause(unsigned long Time)=0;
00045 
00047         virtual void Redraw()=0;
00048         
00049         // The widgets need to tell the engine when they have been affected
00050         // by external interaction
00051         
00053         virtual void ChangeScreen()=0;
00054 
00056         virtual void ChangeEdit()=0;
00057         
00058         // These are needed so widgets know how to render the alphabet.
00059         // All strings are encoded in UTF-8.
00060 
00062         virtual unsigned int GetNumberSymbols()=0;
00063         
00065         //
00068         virtual const std::string& GetDisplayText(Dasher::symbol Symbol)=0;
00069 
00071         //
00074         virtual const std::string& GetEditText(Dasher::symbol Symbol)=0;
00075 
00078         virtual int GetTextColour(Dasher::symbol Symbol)=0;
00079 
00081         //
00083         virtual Opts::ScreenOrientations GetAlphabetOrientation()=0;
00084 
00086         virtual Opts::AlphabetTypes GetAlphabetType()=0;
00087 
00089         virtual const std::string& GetTrainFile()=0; // Returns a fully-qualified path to file:
00090                                                      // UserLocation + TrainFile
00091 };
00092 
00093 #endif /* #ifndef __DasherWidgetInterface_h__ */

Generated on Sat Nov 5 16:16:00 2005 for OPIE by  doxygen 1.4.2