Handle buttons & encoders in View, not Model
This commit is contained in:
		@ -21,6 +21,19 @@ public:
 | 
			
		||||
    MissionSelectViewBase();
 | 
			
		||||
    virtual ~MissionSelectViewBase();
 | 
			
		||||
    virtual void setupScreen();
 | 
			
		||||
    virtual void handleKeyEvent(uint8_t key);
 | 
			
		||||
 | 
			
		||||
    /*
 | 
			
		||||
     * Virtual Action Handlers
 | 
			
		||||
     */
 | 
			
		||||
    virtual void incMission()
 | 
			
		||||
    {
 | 
			
		||||
        // Override and implement this function in MissionSelect
 | 
			
		||||
    }
 | 
			
		||||
    virtual void decMission()
 | 
			
		||||
    {
 | 
			
		||||
        // Override and implement this function in MissionSelect
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
protected:
 | 
			
		||||
    FrontendApplication& application() {
 | 
			
		||||
 | 
			
		||||
@ -69,3 +69,24 @@ void MissionSelectViewBase::setupScreen()
 | 
			
		||||
    inspection.initialize();
 | 
			
		||||
    manual.initialize();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void MissionSelectViewBase::handleKeyEvent(uint8_t key)
 | 
			
		||||
{
 | 
			
		||||
    if(23 == key)
 | 
			
		||||
    {
 | 
			
		||||
        //SelectNextMission
 | 
			
		||||
        //When hardware button 23 clicked call virtual function
 | 
			
		||||
        //Call incMission
 | 
			
		||||
        incMission();
 | 
			
		||||
    
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if(24 == key)
 | 
			
		||||
    {
 | 
			
		||||
        //SelectPrevMission
 | 
			
		||||
        //When hardware button 24 clicked call virtual function
 | 
			
		||||
        //Call decMission
 | 
			
		||||
        decMission();
 | 
			
		||||
    
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user