#pragma once
#include <wx/wxprec.h>

#ifndef WX_PRECOMP
	#include <wx/wx.h>
#endif

/**
* The wxWidgets application entry point for the RumPi Linux client; creates and shows the main window on startup.
*
* @author Eddie O'Hagan
* @date 8/13/2026
*/
class RumPiLinuxClient : public wxApp
{
public:
	/**
	* Builds the application object.
	*
	* @author Eddie O'Hagan
	* @date 8/13/2026
	*
	* @code
	*	//Instantiated by wxWidgets via wxIMPLEMENT_APP.
	* @endcode
	*/
	RumPiLinuxClient();

	/**
	* Destroys the application object.
	*
	* @author Eddie O'Hagan
	* @date 8/13/2026
	*
	* @code
	*	//Destroyed by wxWidgets at exit.
	* @endcode
	*/
	virtual ~RumPiLinuxClient();

	/**
	* Initializes the application: enables PNG image support and creates and shows the main window.
	*
	* @author Eddie O'Hagan
	* @date 8/13/2026
	*
	* @code
	*	//Called by wxWidgets on startup.
	* @endcode
	*
	* @return True if the main window was shown successfully.
	*/
	virtual bool OnInit() override;
};
