~onli/simdock/master

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
/*  
 *   Copyright 2007 Simone Della Longa <simonedll@yahoo.it>
 *
 *  This program is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation; either version 2 of the License, or
 *  (at your option) any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program; if not, write to the Free Software
 *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 */


#ifndef SETTINGSDIALOG_H
#define SETTINGSDIALOG_H

#include "main.h"





enum {
    ID_Browse_Bg = 1,
    ID_Enable_Minimize = 2,
    ID_LEFT_BORDER = 3,
    ID_RIGHT_BORDER = 4,
    ID_BOTTOM_BORDER = 5,
    ID_ICONW = 6,
    ID_ICONH = 7,
    ID_PERCENT = 8,
    ID_RANGE = 9,
    ID_SPACER = 11,
    ID_BG_HEIGHT = 12,
    ID_bgPath = 13,
    ID_SHOW_REFLEXES = 14,
    ID_REFLEX_SCALING = 15,
    ID_REFLEX_ALPHA = 16,
    ID_AUTO_POSITION = 17,
    ID_ENABLE_TASKS = 18,
    ID_BLUR_TIMEOUT = 19
};

// Property sheet dialog
class SettingsDialog: public wxPropertySheetDialog
{
DECLARE_CLASS(SettingsDialog)
public:
    SettingsDialog(wxWindow* parent,  simSettings* settings);
    ~SettingsDialog();

    wxPanel* CreateGeneralSettingsPage(wxWindow* parent);
    wxPanel* CreateAestheticSettingsPage(wxWindow* parent);
    wxPanel* CreateBackgroundPage(wxWindow* parent);
    simSettings* GetSettings();
    void SaveSettings();
    
protected:
    void OnBrowseEvent(wxCommandEvent& event);
    void OnChange(wxCommandEvent& event);
    void OnSpinChange(wxSpinEvent& event);
    /* TODO: make sure the destroyer really gets all of this */
    wxBookCtrlBase* notebook;
    wxPanel* generalSettings;
    wxPanel* aestheticSettings;
    wxPanel* backgroundSettings;
    
    
    
    simSettings* settings;
    wxImageList*    m_imageList;
    /* Behaviour*/
    wxCheckBox* auto_position;
    wxCheckBox* enable_tasks;
    wxCheckBox* enable_minimize;
    wxSpinCtrl* blur_timeout_text;
    /* Zoom */
    wxSpinCtrl* zoom_text;
    wxSpinCtrl* range_text;
    /* Background */
    wxSpinCtrl* bg_height_text;
    wxTextCtrl* bg_path_text;
    /* Borders */
    wxSpinCtrl* left_border_text;
    wxSpinCtrl* right_border_text;
    wxSpinCtrl* bottom_border_text;
    wxSpinCtrl* spacer_border_text;
    wxSpinCtrl* width_text;
    wxSpinCtrl* height_text;
    /* Reflexes */
    wxCheckBox* reflex_enabled;
    wxSpinCtrl* reflex_scaling_text;
    wxSpinCtrl* reflex_alpha_text;
    
    wxButton* browse_button;

DECLARE_EVENT_TABLE()
};

#endif