41 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
#pragma once
 | 
						|
#include "generic_view_module.h"
 | 
						|
#include <gui/modules/text_input.h>
 | 
						|
 | 
						|
class TextInputVM : public GenericViewModule {
 | 
						|
public:
 | 
						|
    TextInputVM();
 | 
						|
    ~TextInputVM() final;
 | 
						|
    View* get_view() final;
 | 
						|
    void clean() final;
 | 
						|
 | 
						|
    /**
 | 
						|
     * @brief Set text input result callback
 | 
						|
     * 
 | 
						|
     * @param callback - callback fn
 | 
						|
     * @param callback_context - callback context
 | 
						|
     * @param text - text buffer to use
 | 
						|
     * @param max_text_length - text buffer length
 | 
						|
     * @param clear_default_text - clears given buffer on OK event
 | 
						|
     */
 | 
						|
    void set_result_callback(
 | 
						|
        TextInputCallback callback,
 | 
						|
        void* callback_context,
 | 
						|
        char* text,
 | 
						|
        uint8_t max_text_length,
 | 
						|
        bool clear_default_text);
 | 
						|
 | 
						|
    /** 
 | 
						|
     * @brief Set text input header text
 | 
						|
     * 
 | 
						|
     * @param text - text to be shown
 | 
						|
     */
 | 
						|
    void set_header_text(const char* text);
 | 
						|
 | 
						|
    void set_validator(TextInputValidatorCallback callback, void* callback_context);
 | 
						|
 | 
						|
    void* get_validator_callback_context();
 | 
						|
 | 
						|
private:
 | 
						|
    TextInput* text_input;
 | 
						|
}; |