Mercurial > ~dholland > hg > ag > index.cgi
diff anagram/vaclgui/statwin.hpp @ 0:13d2b8934445
Import AnaGram (near-)release tree into Mercurial.
author | David A. Holland |
---|---|
date | Sat, 22 Dec 2007 17:52:45 -0500 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/anagram/vaclgui/statwin.hpp Sat Dec 22 17:52:45 2007 -0500 @@ -0,0 +1,59 @@ +/* + * AnaGram, A System for Syntax Directed Programming + * Copyright 1997-2002 Parsifal Software. All Rights Reserved. + * See the file COPYING for license and usage terms. + * + * statwin.hpp + */ + +#ifndef STATWIN_HPP +#define STATWIN_HPP + +#include <imcelcv.hpp> +//#include <ipainevt.hpp> +#include <ipainhdr.hpp> +//#include <isetcv.hpp> +class IStaticText; //#include <istattxt.hpp> + +#include "action.h" +#include "agnotify.h" +#include "frame.hpp" + + +class StatisticsWindow + : public AgFrame + , public IPaintHandler +{ +protected: + enum { nLines = 8 }; + IMultiCellCanvas clientArea; + struct Parameter { + char *name; + int *value; + }; + struct Line { + IStaticText *name; + IStaticText *value; + }; + static Parameter parameter[nLines]; + Line line[nLines]; + IStaticText *statisticsField(IWindow *owner); + void resize(); + AgNotificationAction<StatisticsWindow> dataColorChange; + AgNotificationAction<StatisticsWindow> fontChange; + void onColorChange(); + void onFontChange(); + + HelpDemon helpDemon; + HelpDemon *nameDemon[nLines]; + HelpDemon *valueDemon[nLines]; + +public: + StatisticsWindow::StatisticsWindow(); + ~StatisticsWindow(); + Boolean paintWindow(IPaintEvent &event); + + int updateDisplay(); +}; + +#endif /* STATWIN_HPP */