source: tags/arb_5.3/PGT/help_dialog.cxx

Last change on this file was 3978, checked in by baderk, 18 years ago

Various changes from my own testing-repository are hereby transfered to the
main ARB repository. The sole purpose of this version is an increased
stability and less memory leaks, additional features will follow soon.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 12.5 KB
Line 
1// Copyright (c) 2004 - 2005 Kai Bader <baderk@in.tum.de>
2//
3// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
4// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
5// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
6// AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
7// AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
8// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
9
10// CVS REVISION TAG  --  $Revision: 3978 $
11
12
13#include "help_dialog.hxx"
14
15
16/****************************************************************************
17*  HELP DIALOG - CONSTRUCTOR
18****************************************************************************/
19helpDialog::helpDialog(MDialog *d)
20    : MDialog(d)
21{
22    // CREATE SHELL FOR THIS DIALOG
23    createShell("");
24
25    // CALL CREATE WINDOW FUNCTION
26    createWindow();
27
28    // SET WINDOW WIDTH
29    XtVaSetValues(m_shell,
30        XmNwidth, 300,
31        XmNheight, 450,
32        NULL);
33
34    // REALIZE WINDOW
35    realizeShell();
36
37    // SET WINDOW LABEL
38    setDialogTitle("PGT - Help Dialog");
39
40    // DESELECT ALL WINDOW BUTTONS EXCEPT CLOSE AND MOVE
41    XtVaSetValues(m_shell, XmNmwmFunctions, MWM_FUNC_MOVE | MWM_FUNC_CLOSE, NULL);
42}
43
44
45/****************************************************************************
46*  HELP DIALOG - DESTRUCTOR
47****************************************************************************/
48helpDialog::~helpDialog()
49{
50
51}
52
53
54/****************************************************************************
55*  HELP DIALOG - CREATE WINDOW
56****************************************************************************/
57void helpDialog::createWindow()
58{
59    // CREATE TOP LEVEL WIDGET
60    m_top= XtVaCreateManagedWidget("top",
61        xmFormWidgetClass, m_shell,
62        XmNorientation, XmVERTICAL,
63        XmNmarginHeight, 0,
64        XmNmarginWidth, 0,
65        NULL);
66
67    // CREATE A SIMPLE LABEL
68    createVisualizationHelp(m_top);
69}
70
71
72/****************************************************************************
73*  HELP DIALOG - CREATE VISUALIZATION HELP
74****************************************************************************/
75void helpDialog::createVisualizationHelp(Widget parent)
76{
77    // GET FOREGROUND AND BACKGROUND PIXEL COLORS
78    Pixel fg, bg;
79    XtVaGetValues(parent, XmNforeground, &fg, XmNbackground, &bg, NULL);
80
81    // USED PIXMAPS (BUTTON LOGOS)
82    Pixmap circle22_xpm, cross22_xpm, text22_xpm, markonly22_xpm, textonly22_xpm,
83           markall22_xpm, marknone22_xpm, arb2mark_xpm, mark2arb_xpm, help_xpm,
84           markinfo22_xpm, markinvert22_xpm;
85
86    // OPEN THE PIXMAP FILES
87    Screen *s        = XtScreen(parent);
88    circle22_xpm     = PGT_LoadPixmap("circle22.xpm", s, fg, bg);
89    cross22_xpm      = PGT_LoadPixmap("cross22.xpm", s, fg, bg);
90    text22_xpm       = PGT_LoadPixmap("text22.xpm", s, fg, bg);
91    markonly22_xpm   = PGT_LoadPixmap("markonly22.xpm", s, fg, bg);
92    textonly22_xpm   = PGT_LoadPixmap("textonly22.xpm", s, fg, bg);
93    markall22_xpm    = PGT_LoadPixmap("markall22.xpm", s, fg, bg);
94    markinvert22_xpm = PGT_LoadPixmap("markinvert22.xpm", s, fg, bg);
95    marknone22_xpm   = PGT_LoadPixmap("marknone22.xpm", s, fg, bg);
96    markinfo22_xpm   = PGT_LoadPixmap("markinfo22.xpm", s, fg, bg);
97    arb2mark_xpm     = PGT_LoadPixmap("arb2mark22.xpm", s, fg, bg);
98    mark2arb_xpm     = PGT_LoadPixmap("mark2arb22.xpm", s, fg, bg);
99    help_xpm         = PGT_LoadPixmap("help22.xpm", s, fg, bg);
100
101    // CREATE A SIMPLE LABEL
102    Widget top_label= XtVaCreateManagedWidget("label",
103        xmLabelWidgetClass, parent,
104        XmNlabelString, CreateDlgString("Visualization Buttons:"),
105        XmNheight, 32,
106        XmNalignment, XmALIGNMENT_CENTER,
107        XmNtopAttachment, XmATTACH_FORM,
108        XmNleftAttachment, XmATTACH_FORM,
109        XmNrightAttachment, XmATTACH_FORM,
110        NULL);
111
112    // CIRCLE DESCRIPTION
113    Widget pos01_Button= XtVaCreateManagedWidget("spotsbtn",
114        xmPushButtonWidgetClass, parent,
115        XmNlabelType, XmPIXMAP,
116        XmNlabelPixmap, circle22_xpm,
117        XmNheight, 32,
118        XmNleftAttachment, XmATTACH_FORM,
119        XmNtopAttachment, XmATTACH_WIDGET,
120        XmNtopWidget, top_label,
121        NULL);
122    Widget pos01_Label= XtVaCreateManagedWidget("label",
123        xmLabelWidgetClass, parent,
124        XmNlabelString, CreateDlgString("Show/hide virtual spots"),
125        XmNheight, 32,
126        XmNalignment, XmALIGNMENT_BEGINNING,
127        XmNrightAttachment, XmATTACH_FORM,
128        XmNleftAttachment, XmATTACH_WIDGET,
129        XmNleftWidget, pos01_Button,
130        XmNtopAttachment, XmATTACH_WIDGET,
131        XmNtopWidget, top_label,
132        NULL);
133
134    // CROSS DESCRIPTION
135    Widget pos02_Button= XtVaCreateManagedWidget("spotsbtn",
136        xmPushButtonWidgetClass, parent,
137        XmNlabelType, XmPIXMAP,
138        XmNlabelPixmap, cross22_xpm,
139        XmNheight, 32,
140        XmNleftAttachment, XmATTACH_FORM,
141        XmNtopAttachment, XmATTACH_WIDGET,
142        XmNtopWidget, pos01_Button,
143        NULL);
144    Widget pos02_Label= XtVaCreateManagedWidget("label",
145        xmLabelWidgetClass, parent,
146        XmNlabelString, CreateDlgString("Show/hide spot crosshair"),
147        XmNheight, 32,
148        XmNalignment, XmALIGNMENT_BEGINNING,
149        XmNrightAttachment, XmATTACH_FORM,
150        XmNleftAttachment, XmATTACH_WIDGET,
151        XmNleftWidget, pos02_Button,
152        XmNtopAttachment, XmATTACH_WIDGET,
153        XmNtopWidget, pos01_Label,
154        NULL);
155
156    // TEXT DESCRIPTION
157    Widget pos03_Button= XtVaCreateManagedWidget("spotsbtn",
158        xmPushButtonWidgetClass, parent,
159        XmNlabelType, XmPIXMAP,
160        XmNlabelPixmap, text22_xpm,
161        XmNheight, 32,
162        XmNleftAttachment, XmATTACH_FORM,
163        XmNtopAttachment, XmATTACH_WIDGET,
164        XmNtopWidget, pos02_Button,
165        NULL);
166    Widget pos03_Label= XtVaCreateManagedWidget("label",
167        xmLabelWidgetClass, parent,
168        XmNlabelString, CreateDlgString("Show/hide spot information"),
169        XmNheight, 32,
170        XmNalignment, XmALIGNMENT_BEGINNING,
171        XmNrightAttachment, XmATTACH_FORM,
172        XmNleftAttachment, XmATTACH_WIDGET,
173        XmNleftWidget, pos03_Button,
174        XmNtopAttachment, XmATTACH_WIDGET,
175        XmNtopWidget, pos02_Label,
176        NULL);
177
178    // MARKONLY DESCRIPTION
179    Widget pos04_Button= XtVaCreateManagedWidget("spotsbtn",
180        xmPushButtonWidgetClass, parent,
181        XmNlabelType, XmPIXMAP,
182        XmNlabelPixmap, markonly22_xpm,
183        XmNheight, 32,
184        XmNleftAttachment, XmATTACH_FORM,
185        XmNtopAttachment, XmATTACH_WIDGET,
186        XmNtopWidget, pos03_Button,
187        NULL);
188    Widget pos04_Label= XtVaCreateManagedWidget("label",
189        xmLabelWidgetClass, parent,
190        XmNlabelString, CreateDlgString("show only marked spots"),
191        XmNheight, 32,
192        XmNalignment, XmALIGNMENT_BEGINNING,
193        XmNrightAttachment, XmATTACH_FORM,
194        XmNleftAttachment, XmATTACH_WIDGET,
195        XmNleftWidget, pos04_Button,
196        XmNtopAttachment, XmATTACH_WIDGET,
197        XmNtopWidget, pos03_Label,
198        NULL);
199
200    // TEXTONLY DESCRIPTION
201    Widget pos05_Button= XtVaCreateManagedWidget("spotsbtn",
202        xmPushButtonWidgetClass, parent,
203        XmNlabelType, XmPIXMAP,
204        XmNlabelPixmap, textonly22_xpm,
205        XmNheight, 32,
206        XmNleftAttachment, XmATTACH_FORM,
207        XmNtopAttachment, XmATTACH_WIDGET,
208        XmNtopWidget, pos04_Button,
209        NULL);
210    Widget pos05_Label= XtVaCreateManagedWidget("label",
211        xmLabelWidgetClass, parent,
212        XmNlabelString, CreateDlgString("show only spots with an ID"),
213        XmNheight, 32,
214        XmNalignment, XmALIGNMENT_BEGINNING,
215        XmNrightAttachment, XmATTACH_FORM,
216        XmNleftAttachment, XmATTACH_WIDGET,
217        XmNleftWidget, pos05_Button,
218        XmNtopAttachment, XmATTACH_WIDGET,
219        XmNtopWidget, pos04_Label,
220        NULL);
221
222    // MARKALL DESCRIPTION
223    Widget pos06_Button= XtVaCreateManagedWidget("spotsbtn",
224        xmPushButtonWidgetClass, parent,
225        XmNlabelType, XmPIXMAP,
226        XmNlabelPixmap, markall22_xpm,
227        XmNheight, 32,
228        XmNleftAttachment, XmATTACH_FORM,
229        XmNtopAttachment, XmATTACH_WIDGET,
230        XmNtopWidget, pos05_Button,
231        NULL);
232    Widget pos06_Label= XtVaCreateManagedWidget("label",
233        xmLabelWidgetClass, parent,
234        XmNlabelString, CreateDlgString("mark all spots"),
235        XmNheight, 32,
236        XmNalignment, XmALIGNMENT_BEGINNING,
237        XmNrightAttachment, XmATTACH_FORM,
238        XmNleftAttachment, XmATTACH_WIDGET,
239        XmNleftWidget, pos06_Button,
240        XmNtopAttachment, XmATTACH_WIDGET,
241        XmNtopWidget, pos05_Label,
242        NULL);
243
244    // MARKNONE DESCRIPTION
245    Widget pos07_Button= XtVaCreateManagedWidget("spotsbtn",
246        xmPushButtonWidgetClass, parent,
247        XmNlabelType, XmPIXMAP,
248        XmNlabelPixmap, marknone22_xpm,
249        XmNheight, 32,
250        XmNleftAttachment, XmATTACH_FORM,
251        XmNtopAttachment, XmATTACH_WIDGET,
252        XmNtopWidget, pos06_Button,
253        NULL);
254    Widget pos07_Label= XtVaCreateManagedWidget("label",
255        xmLabelWidgetClass, parent,
256        XmNlabelString, CreateDlgString("unmark all spots"),
257        XmNheight, 32,
258        XmNalignment, XmALIGNMENT_BEGINNING,
259        XmNrightAttachment, XmATTACH_FORM,
260        XmNleftAttachment, XmATTACH_WIDGET,
261        XmNleftWidget, pos07_Button,
262        XmNtopAttachment, XmATTACH_WIDGET,
263        XmNtopWidget, pos06_Label,
264        NULL);
265
266    // ARB2MARK DESCRIPTION
267    Widget pos08_Button= XtVaCreateManagedWidget("spotsbtn",
268        xmPushButtonWidgetClass, parent,
269        XmNlabelType, XmPIXMAP,
270        XmNlabelPixmap, arb2mark_xpm,
271        XmNheight, 32,
272        XmNleftAttachment, XmATTACH_FORM,
273        XmNtopAttachment, XmATTACH_WIDGET,
274        XmNtopWidget, pos07_Button,
275        NULL);
276    Widget pos08_Label= XtVaCreateManagedWidget("label",
277        xmLabelWidgetClass, parent,
278        XmNlabelString, CreateDlgString("transfer marker to arb gene map"),
279        XmNheight, 32,
280        XmNalignment, XmALIGNMENT_BEGINNING,
281        XmNrightAttachment, XmATTACH_FORM,
282        XmNleftAttachment, XmATTACH_WIDGET,
283        XmNleftWidget, pos08_Button,
284        XmNtopAttachment, XmATTACH_WIDGET,
285        XmNtopWidget, pos07_Label,
286        NULL);
287
288    // ARB2MARK DESCRIPTION
289    Widget pos09_Button= XtVaCreateManagedWidget("spotsbtn",
290        xmPushButtonWidgetClass, parent,
291        XmNlabelType, XmPIXMAP,
292        XmNlabelPixmap, mark2arb_xpm,
293        XmNheight, 32,
294        XmNleftAttachment, XmATTACH_FORM,
295        XmNtopAttachment, XmATTACH_WIDGET,
296        XmNtopWidget, pos08_Button,
297        NULL);
298    Widget pos09_Label= XtVaCreateManagedWidget("label",
299        xmLabelWidgetClass, parent,
300        XmNlabelString, CreateDlgString("fetch marker from arb gene map"),
301        XmNheight, 32,
302        XmNalignment, XmALIGNMENT_BEGINNING,
303        XmNrightAttachment, XmATTACH_FORM,
304        XmNleftAttachment, XmATTACH_WIDGET,
305        XmNleftWidget, pos09_Button,
306        XmNtopAttachment, XmATTACH_WIDGET,
307        XmNtopWidget, pos08_Label,
308        NULL);
309
310    // INVERT MARK DESCRIPTION
311    Widget pos10_Button= XtVaCreateManagedWidget("spotsbtn",
312        xmPushButtonWidgetClass, parent,
313        XmNlabelType, XmPIXMAP,
314        XmNlabelPixmap, markinvert22_xpm,
315        XmNheight, 32,
316        XmNleftAttachment, XmATTACH_FORM,
317        XmNtopAttachment, XmATTACH_WIDGET,
318        XmNtopWidget, pos09_Button,
319        NULL);
320    Widget pos10_Label= XtVaCreateManagedWidget("label",
321        xmLabelWidgetClass, parent,
322        XmNlabelString, CreateDlgString("invert all spot marker"),
323        XmNheight, 32,
324        XmNalignment, XmALIGNMENT_BEGINNING,
325        XmNrightAttachment, XmATTACH_FORM,
326        XmNleftAttachment, XmATTACH_WIDGET,
327        XmNleftWidget, pos10_Button,
328        XmNtopAttachment, XmATTACH_WIDGET,
329        XmNtopWidget, pos09_Label,
330        NULL);
331
332    // MARK INFO ONLY DESCRIPTION
333    Widget pos11_Button= XtVaCreateManagedWidget("spotsbtn",
334        xmPushButtonWidgetClass, parent,
335        XmNlabelType, XmPIXMAP,
336        XmNlabelPixmap, markinfo22_xpm,
337        XmNheight, 32,
338        XmNleftAttachment, XmATTACH_FORM,
339        XmNtopAttachment, XmATTACH_WIDGET,
340        XmNtopWidget, pos10_Button,
341        NULL);
342    XtVaCreateManagedWidget("label",
343        xmLabelWidgetClass, parent,
344        XmNlabelString, CreateDlgString("mark only spots with an ID"),
345        XmNheight, 32,
346        XmNalignment, XmALIGNMENT_BEGINNING,
347        XmNrightAttachment, XmATTACH_FORM,
348        XmNleftAttachment, XmATTACH_WIDGET,
349        XmNleftWidget, pos11_Button,
350        XmNtopAttachment, XmATTACH_WIDGET,
351        XmNtopWidget, pos10_Label,
352        NULL);
353}
Note: See TracBrowser for help on using the repository browser.