source: trunk/autoquest-plugin-mfc/src/main/java/de/ugoe/cs/autoquest/plugin/mfc/HandlerDestroy.java @ 922

Last change on this file since 922 was 922, checked in by sherbold, 12 years ago
  • renaming of packages from de.ugoe.cs.quest to de.ugoe.cs.autoquest
File size: 1.5 KB
Line 
1package de.ugoe.cs.autoquest.plugin.mfc;
2
3import de.ugoe.cs.autoquest.plugin.mfc.guimodel.WindowTree;
4
5/**
6 * <p>
7 * Handler for {@code WM_DESTROY} message. The handler maintains the {@link WindowTree}.
8 * </p>
9 *
10 * @author Steffen Herbold
11 * @version 1.0
12 */
13public class HandlerDestroy extends MessageHandler {
14
15    /**
16     * <p>
17     * Constructor. Creates a new HandlerDestroy.
18     * </p>
19     *
20     * @param windowTree
21     *            the tree of GUI element specifications to be created and adapted during parsing
22     */
23    public HandlerDestroy(WindowTree windowTree) {
24        super(windowTree);
25    }
26
27    /**
28     * <p>
29     * HWND of the window that is destroyed.
30     * </p>
31     */
32    private long hwnd;
33
34    /*
35     * (non-Javadoc)
36     *
37     * @see de.ugoe.cs.autoquest.plugin.mfc.MessageHandler#onEndElement()
38     */
39    @Override
40    public void onEndElement() {
41        if (hwnd != 0) {
42            super.getWindowTree().remove(hwnd);
43        }
44    }
45
46    /*
47     * (non-Javadoc)
48     *
49     * @see de.ugoe.cs.autoquest.plugin.mfc.MessageHandler#onParameter(java.lang.String ,
50     * java.lang.String)
51     */
52    @Override
53    public void onParameter(String name, String value) {
54        if (name.equals("window.hwnd")) {
55            hwnd = Long.parseLong(value);
56        }
57    }
58
59    /*
60     * (non-Javadoc)
61     *
62     * @see de.ugoe.cs.autoquest.plugin.mfc.MessageHandler#onStartElement()
63     */
64    @Override
65    public void onStartElement() {
66        hwnd = 0;
67    }
68
69}
Note: See TracBrowser for help on using the repository browser.