#
# For a description of the syntax of this configuration file,
# see the file kconfig-language.txt in the NuttX tools repository.
#

menuconfig EXAMPLES_LVGLDEMO
	tristate "Littlev Graphics Library Demo"
	default n
	---help---
		Enable build the Littlev Graphics Library Demo programs

if EXAMPLES_LVGLDEMO

config EXAMPLES_LVGLDEMO_CALIBRATE
	bool "Calibrate touchscreen"
	default y
	---help---
		Calibrate touchscreen before demo start, but some touchscreen
		don't need it, like capacitive touchscreen.

choice
	prompt "Select a demo application"
	default EXAMPLES_LVGLDEMO_SIMPLE

config EXAMPLES_LVGLDEMO_SIMPLE
	bool "Simple"

config EXAMPLES_LVGLDEMO_THEME_1
	bool "Single Theme"
	---help---
		Create a test screen with a lot objects and apply
		the given theme on them

config EXAMPLES_LVGLDEMO_THEME_2
	bool "Multiple Themes"
	select LV_THEME_LIVE_UPDATE
	---help---
		Switch themes on the fly to demonstrate each different
		themes. Configure multiple themes in the littlevgl
		settings to use.

endchoice

config EXAMPLES_LVGLDEMO_WALLPAPER
	bool "Use wallpaper"
	depends on EXAMPLES_LVGLDEMO_SIMPLE
	default y

config EXAMPLES_LVGLDEMO_SLIDE_SHOW
	bool "Use slide"
	depends on EXAMPLES_LVGLDEMO_SIMPLE
	default n

choice
	prompt "Selected Theme"
	depends on EXAMPLES_LVGLDEMO_THEME_1
	default EXAMPLES_LVGLDEMO_THEME_1_DEFAULT

config EXAMPLES_LVGLDEMO_THEME_1_DEFAULT
	bool "Default Theme"
	select USE_LV_THEME_DEFAULT

config EXAMPLES_LVGLDEMO_THEME_1_ALIEN
	bool "Alien"
	select USE_LV_THEME_ALIEN

config EXAMPLES_LVGLDEMO_THEME_1_NIGHT
	bool "Night"
	select USE_LV_THEME_NIGHT

config EXAMPLES_LVGLDEMO_THEME_1_MONO
	bool "Mono"
	select USE_LV_THEME_MONO

config EXAMPLES_LVGLDEMO_THEME_1_MATERIAL
	bool "Material"
	select USE_LV_THEME_MATERIAL

config EXAMPLES_LVGLDEMO_THEME_1_ZEN
	bool "Zen"
	select USE_LV_THEME_ZEN

config EXAMPLES_LVGLDEMO_THEME_1_NEMO
	bool "Nemo"
	select USE_LV_THEME_NEMO

endchoice

config EXAMPLES_LVGLDEMO_THEME_1_HUE
	int "Theme hue"
	range 0 360
	depends on EXAMPLES_LVGLDEMO_THEME_1
	default 30
	---help---
		Choose a hue color from the HSV color space

config EXAMPLES_LVGLDEMO_PRIORITY
	int "lvgl task priority"
	default 100

config EXAMPLES_LVGLDEMO_STACKSIZE
	int "lvgldemo stack size"
	default 16384

config EXAMPLES_LGVLDEMO_MINOR
	int "Touchscreen minor device number"
	default 0
	---help---
		The minor device number.  Minor=N corresponds to touchscreen device
		/dev/inputN.  Note this value must with EXAMPLES_LGVLDEMO_DEVPATH.
		Default 0.

config EXAMPLES_LGVLDEMO_DEVPATH
	string "Touchscreen device path"
	default "/dev/input0"
	---help---
		The path to the touchscreen device.  This must be consistent with
		EXAMPLES_LGVLDEMO_MINOR. Default: "/dev/input0"

config EXAMPLES_LGVLDEMO_MOUSE
	bool "Mouse interface"
	default n
	---help---
		The LittleVGL demo can also be configured to work with a mouse
		driver by setting this option.

endif