/**1* @file lv_templ.h2*3*/456/* TODO Remove these instructions7* Search an replace: template -> object normal name with lower case (e.g. button, label etc.)8* templ -> object short name with lower case(e.g. btn, label etc)9* TEMPL -> object short name with upper case (e.g. BTN, LABEL etc.)10*11*/1213#ifndef LV_TEMPL_H14#define LV_TEMPL_H1516#ifdef __cplusplus17extern "C" {18#endif1920/*********************21* INCLUDES22*********************/23#ifdef LV_CONF_INCLUDE_SIMPLE24#include "lv_conf.h"25#else26#include "../../lv_conf.h"27#endif2829#if USE_LV_TEMPL != 03031#include "../lv_core/lv_obj.h"3233/*********************34* DEFINES35*********************/3637/**********************38* TYPEDEFS39**********************/40/*Data of template*/41typedef struct {42lv_ANCESTOR_ext_t ANCESTOR; /*Ext. of ancestor*/43/*New data for this type */44} lv_templ_ext_t;454647/*Styles*/48enum {49LV_TEMPL_STYLE_X,50LV_TEMPL_STYLE_Y,51};52typedef uint8_t lv_templ_style_t;535455/**********************56* GLOBAL PROTOTYPES57**********************/5859/**60* Create a template objects61* @param par pointer to an object, it will be the parent of the new template62* @param copy pointer to a template object, if not NULL then the new object will be copied from it63* @return pointer to the created template64*/65lv_obj_t * lv_templ_create(lv_obj_t * par, const lv_obj_t * copy);6667/*======================68* Add/remove functions69*=====================*/707172/*=====================73* Setter functions74*====================*/7576/**77* Set a style of a template.78* @param templ pointer to template object79* @param type which style should be set80* @param style pointer to a style81*/82void lv_templ_set_style(lv_obj_t * templ, lv_templ_style_t type, lv_style_t *style);8384/*=====================85* Getter functions86*====================*/8788/**89* Get style of a template.90* @param templ pointer to template object91* @param type which style should be get92* @return style pointer to the style93*/94lv_style_t * lv_templ_get_style(const lv_obj_t * templ, lv_templ_style_t type);9596/*=====================97* Other functions98*====================*/99100/**********************101* MACROS102**********************/103104#endif /*USE_LV_TEMPL*/105106#ifdef __cplusplus107} /* extern "C" */108#endif109110#endif /*LV_TEMPL_H*/111112113