#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include "GUIAutoSize.au3"

Opt('MustDeclareVars', 1)
Dim $Button_1, $Group_1, $Radio_1, $Radio_2, $Radio_3
Dim $Radio_4, $Radio_5, $Radio_6, $Input_1, $Input_2
Dim $hGUI, $ButttonText

Opt("GUIOnEventMode", 1)
Opt("GUICoordMode", 1)
Opt("GUIResizeMode", $GUI_DOCKALL)

$hGUI = GUICreate("_GUIAutoSize Demo")
GUISetBkColor(0x80A0FF)
GUISetOnEvent($GUI_EVENT_CLOSE, "ExitApp")
$Button_1 = GUICtrlCreateButton("Inputs einblenden", 20, 20, 120, 40)
GUICtrlSetOnEvent(-1, "Button_1_Clicked")
$Group_1 = GUICtrlCreateGroup("Group 1", 20, 90, 165, 160)
GUIStartGroup()
$Radio_1 = GUICtrlCreateRadio("Radio &0", 40, 120, 70, 20)
$Radio_2 = GUICtrlCreateRadio("Radio &1", 40, 150, 60, 20)
$Radio_3 = GUICtrlCreateRadio("Radio &2", 40, 180, 60, 20)
GUIStartGroup()
$Radio_4 = GUICtrlCreateRadio("Radio &A", 110, 120, 70, 20)
$Radio_5 = GUICtrlCreateRadio("Radio &B", 110, 150, 60, 20)
$Radio_6 = GUICtrlCreateRadio("Radio &C", 110, 180, 60, 20)
GUIStartGroup()
$Input_1 = GUICtrlCreateInput("Input 1", 200, 20, 160)
$Input_2 = GUICtrlCreateInput("Input 2", 200, 50)
GUICtrlSetState($Radio_1, $GUI_CHECKED)
GUICtrlSetState($Radio_6, $GUI_CHECKED)
GUICtrlSetState($Button_1, $GUI_FOCUS + $GUI_DEFBUTTON)
GUICtrlSetState($Input_1, $GUI_HIDE)
GUICtrlSetState($Input_2, $GUI_HIDE)

_GUIAutoSize($hGUI, "C", "C")

GUISetState(@SW_SHOW)

While True
	Sleep(1000)
WEnd

Func Button_1_Clicked()
	$ButttonText = GUICtrlRead($Button_1)
	If $ButttonText = "Inputs einblenden" Then
		GUICtrlSetState($Input_1, $GUI_SHOW)
		GUICtrlSetState($Input_2, $GUI_SHOW)
		GUICtrlSetData($Button_1, "Inputs ausblenden")
	Else
		GUICtrlSetState($Input_1, $GUI_HIDE)
		GUICtrlSetState($Input_2, $GUI_HIDE)
		GUICtrlSetData($Button_1, "Inputs einblenden")
	EndIf
	_GuiAutoSize($hGUI)
EndFunc   ;==>Button_1_Clicked

Func ExitApp()
	GUIDelete()
	Exit
EndFunc   ;==>ExitApp