39 lines
		
	
	
		
			865 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			865 B
		
	
	
	
		
			C++
		
	
	
	
	
	
#ifndef DISPLAYPROXY_H
 | 
						|
#define DISPLAYPROXY_H
 | 
						|
 | 
						|
/**
 | 
						|
 * Generic interface for a graphical display allowing for placement of text.
 | 
						|
 * Focused on TUI. 
 | 
						|
 */
 | 
						|
class DisplayProxy
 | 
						|
{
 | 
						|
public:
 | 
						|
    /**
 | 
						|
     * Turn on the display.
 | 
						|
     * @return True if successful.
 | 
						|
     */
 | 
						|
    virtual bool on() = 0;
 | 
						|
 | 
						|
    /**
 | 
						|
     * Turn off the display.
 | 
						|
     * @return True if successful.
 | 
						|
     */
 | 
						|
    virtual bool off() = 0;
 | 
						|
 | 
						|
    /**
 | 
						|
     * Write a string to the display.
 | 
						|
     *
 | 
						|
     * @param x Horizontal starting position. From left to right. (0 indexed)
 | 
						|
     * @param y Vertical starting position. From top to bottom. (0 indexed)
 | 
						|
     * @param text String to write
 | 
						|
     * @return True if successful.
 | 
						|
     */
 | 
						|
    virtual bool write(int x, int y, const char *text) = 0;
 | 
						|
 | 
						|
    /**
 | 
						|
     * Clear the entire screen.
 | 
						|
     * @return True if successful.
 | 
						|
     */
 | 
						|
    virtual bool clear() = 0;
 | 
						|
};
 | 
						|
#endif |