

GTKMM Notes:

To transfer an ownership from your local code to a container, use
Gtk::Button* pButton = Gtk::manage(new Gtk::Button("Test"));
container->add(*pButton);
(add() takes an object by reference).
otherwise, you will need to delete() it.

local scope destruction also works if using stack variables.
{
	Gtk::Button aButton;
	// destroyed here
}



--------------------------------------------------------

TODO:

Move README.txt contents to the site, make Help menu open it.


Don't rely on smartctl return code (2), parse the output instead.
	This will allow us to show the Info page.
	Need usage cases.


Testing:
	If ETA time has elapsed, but it's still only at 10% completion,
		ETA 0 is displayed. Fix.
	Detect running tests on launch (maybe ask the user too? some tests
		may be stuck due to bad firmware, e.g. 3ware/windows).
	If smartctl outputs gibberish while testing, the GUI hangs.


Support RAID for these controllers:
	https://www.smartmontools.org/wiki/Supported_RAID-Controllers

	Adaptec (Windows, Linux using "-d aacraid")
	HighPoint RocketRAID (Linux, FreeBSD (analyze sent info))
	LSI MegaRAID (Linux, FreeBSD)
	3ware (FreeBSD)
	Areca (FreeBSD)
	HP CCISS (FreeBSD)






