Bonsoir..

Je suis un débutant depuis quelques semaines en langage C++. Sur mon récepteur Linux j'ai voulu crée un petit plugin. J'ai commencé à programmer ce petit plugin sur mon système Stinky Linux, en suivant quelques Tuto sur internet j'au réussi à faire exécuter la première fenêtre de mon plugin sans erreur.
Bon maintenant j'ai voulu afficher la même fenêtre avec le même contenu en cliquant sur la bouton "Start" mais j'ai pas réussi. je reçois des erreurs. Voici le Code:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
// include files nedeed by our code.
#include <plugin.h>
#include <stdio.h>
#include <lib/gui/ewindow.h>
#include <lib/gui/elabel.h>
#include <lib/gui/ebutton.h>
 
 
// Window1.
// The Class declaration of our Main Window
class eBibleMainWindow: public eWindow
{
    // the label to show the text
    eLabel *label;
        // the button
    eButton *ok;
public:
        // the constructor.
    eBibleMainWindow();
        // the destructor.
    ~eBibleMainWindow();
};
 
 
// The plugin entry point, Here start the code execution
extern "C" int plugin_exec( PluginParam *par )
{
    // our demo dialog instance.
    eBibleMainWindow dlg;
        // show the dialog...
    dlg.show();
        // give control to dialog.. (the dialog is modal!)
    int result=dlg.exec();
        // and after it, hide it again.
    dlg.hide();
    return result;
}
 
 
eBibleMainWindow::eBibleMainWindow(): eWindow(1)
{
 
    // move our dialog to 100.100...
    cmove(ePoint(100, 100));
        // ...and give x and y dimensions.
    cresize(eSize(520, 320));
        // set a title.
    setText("My Plugin: Intro");
 
 
    // create a label to show a text.
    label=new eLabel(this);
    // give a position
    label->move(ePoint(95, 120));
    // set the label dimensions
    label->resize(eSize(350, 200));
    // set the label text
    label->setText("Bienvenue---Welcome---Willkommen");
 
 
// create the button
    ok = new eButton(this);
    // set the button text
    ok->setText("About");
    // set position
    ok->move(ePoint((clientrect.width() - 260)/7, clientrect.height() - 60));
    // set size
    ok->resize(eSize(90, 40));
    // set shortcut and pixmap
    ok->setShortcut("red");
    ok->setShortcutPixmap("red");
    // decore with a frame
    ok->loadDeco();
    // function to call when buton is pressed
    CONNECT(ok->selected, eWidget::accept);
    // set focus to the button
    setFocus(ok);
 
// create the button
    ok = new eButton(this);
    // set the button text
    ok->setText("Start");
    // set position
    ok->move(ePoint((clientrect.width() - 90)/2, clientrect.height() - 60));
    // set size
    ok->resize(eSize(90, 40));
    // set shortcut and pixmap
    ok->setShortcut("green");
    ok->setShortcutPixmap("green");
    // decore with a frame
    ok->loadDeco();
    // function to call when buton is pressed
    CONNECT(ok->selected, eBibleMainWindow(): eWindow(1));
    // set focus to the button
    setFocus(ok);
 
// create the button
    ok = new eButton(this);
    // set the button text
    ok->setText("Exit");
    // set position
    ok->move(ePoint((clientrect.width() - 120), clientrect.height() - 60));
    // set size
    ok->resize(eSize(90, 40));
    // set shortcut and pixmap
    ok->setShortcut("blue");
    ok->setShortcutPixmap("blue");
    // decore with a frame
    ok->loadDeco();
    // function to call when buton is pressed
    CONNECT(ok->selected, eWidget::accept);
    // set focus to the button
    setFocus(ok);
 
 
}
 
eBibleMainWindow::~eBibleMainWindow()
{
    // we have to do almost nothing here. all widgets are automatically removed
    // since they are child of us. the eWidget-destructor will to this for us.
}
 
 
// Window2.
// The Class declaration of our Main Window
class eBibleMainWindow: public eWindow
{
    // the label to show the text
    eLabel *label;
        // the button
    eButton *ok;
public:
        // the constructor.
    eBibleMainWindow();
        // the destructor.
    ~eBibleMainWindow();
};
 
 
// The plugin entry point, Here start the code execution
extern "C" int plugin_exec( PluginParam *par )
{
    // our demo dialog instance.
    eBibleMainWindow dlg;
        // show the dialog...
    dlg.show();
        // give control to dialog.. (the dialog is modal!)
    int result=dlg.exec();
        // and after it, hide it again.
    dlg.hide();
    return result;
}
 
 
eBibleMainWindow::eBibleMainWindow(): eWindow(1)
{
 
    // move our dialog to 100.100...
    cmove(ePoint(100, 100));
        // ...and give x and y dimensions.
    cresize(eSize(520, 320));
        // set a title.
    setText("My Plugin: Intro");
 
 
    // create a label to show a text.
    label=new eLabel(this);
    // give a position
    label->move(ePoint(95, 120));
    // set the label dimensions
    label->resize(eSize(350, 200));
    // set the label text
    label->setText("Bienvenue---Welcome---Willkommen");
 
 
// create the button
    ok = new eButton(this);
    // set the button text
    ok->setText("About");
    // set position
    ok->move(ePoint((clientrect.width() - 260)/7, clientrect.height() - 60));
    // set size
    ok->resize(eSize(90, 40));
    // set shortcut and pixmap
    ok->setShortcut("red");
    ok->setShortcutPixmap("red");
    // decore with a frame
    ok->loadDeco();
    // function to call when buton is pressed
    CONNECT(ok->selected, eWidget::accept);
    // set focus to the button
    setFocus(ok);
 
// create the button
    ok = new eButton(this);
    // set the button text
    ok->setText("Start");
    // set position
    ok->move(ePoint((clientrect.width() - 90)/2, clientrect.height() - 60));
    // set size
    ok->resize(eSize(90, 40));
    // set shortcut and pixmap
    ok->setShortcut("green");
    ok->setShortcutPixmap("green");
    // decore with a frame
    ok->loadDeco();
    // function to call when buton is pressed
    CONNECT(ok->selected, eWidget::accept);
    // set focus to the button
    setFocus(ok);
 
// create the button
    ok = new eButton(this);
    // set the button text
    ok->setText("Exit");
    // set position
    ok->move(ePoint((clientrect.width() - 120), clientrect.height() - 60));
    // set size
    ok->resize(eSize(90, 40));
    // set shortcut and pixmap
    ok->setShortcut("blue");
    ok->setShortcutPixmap("blue");
    // decore with a frame
    ok->loadDeco();
    // function to call when buton is pressed
    CONNECT(ok->selected, eWidget::accept);
    // set focus to the button
    setFocus(ok);
 
 
}
 
eBibleMainWindow::~eBibleMainWindow()
{
    // we have to do almost nothing here. all widgets are automatically removed
    // since they are child of us. the eWidget-destructor will to this for us.
}