1 /*
2   fxasq.h - Header file for fxasq.cpp
3   Copyright (c) 2007-2010 Jeffrey Pohlmeyer <yetanothergeek@gmail.com>
4 
5   This program is free software; you can redistribute it and/or modify
6   it under the terms of the GNU General Public License as published by
7   the Free Software Foundation; either version 2 of the License, or
8   (at your option) any later version.
9 
10   This program is distributed in the hope that it will be useful,
11   but WITHOUT ANY WARRANTY; without even the implied warranty of
12   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13   GNU General Public License for more details.
14 
15   You should have received a copy of the GNU General Public License along
16   with this program; if not, write to the Free Software Foundation, Inc.,
17   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
18 */
19 
20 #ifndef FXASQ_H
21 #define FXASQ_H
22 
23 #include "fxasq_c.h"
24 #include "compat.h"
25 
26 
27 class FxAsqWin: public FXObject {
28   private:
29     friend class ActionBox;
30 
31     FXint focused_btn;
32     FxAsqItem*Results;
33     FXDialogBox*dlg;
34     FXHorizontalFrame *btnbox;
35     void TextBox(const char*key, const char*value, const char*label, bool secret);
36     void AppendResult(const char*key, const char*value);
37     void PutResults();
38   protected:
39     Dictionary keylist;
40     FXVerticalFrame *userbox;
41   public:
42 
43     FxAsqWin(const char*title, const char **buttons, FXint focus_btn=0);
44     ~FxAsqWin();
45     int Run(FxAsqItem**results=NULL);
46 
47     void HR();
48     void Label(    const char*text, int justify=JUSTIFY_LEFT);
49     void CheckBox( const char*key, const bool value, const char*label);
50     void Text(     const char*key, const char*value, const char*label);
51     void Password( const char*key, const char*value, const char*label);
52     void Select(   const char*key, const char*value, const char*label);
53     void Option(   const char*key, const char*value, const char*label);
54     void Group(    const char*key, const char*value, const char*label);
55     void Radio(    const char*key, const char*value, const char*label);
56     void TextArea( const char*key, const char*value, const char*label);
57     void File(     const char*key, const char*value, const char*label);
58     void Color(    const char*key, const char*value, const char*label);
59     void Font(     const char*key, const char*value, const char*label);
60 };
61 #endif
62 
63