midletcontrollereventproducer.java

来自「This is a resource based on j2me embedde」· Java 代码 · 共 459 行 · 第 1/2 页

JAVA
459
字号
    public void sendMIDletPauseNotifyEvent(int midletSuiteId,                                           String midletClassName) {        sendEvent(midletPausedEvent, midletSuiteId, midletClassName);    }    /**     * Called to send a MIDlet destroyed notification to the AMS isolate.     *     * @param midletSuiteId ID of the MIDlet suite     * @param midletClassName Class name of the MIDlet     */    public void sendMIDletDestroyNotifyEvent(int midletSuiteId,                                             String midletClassName) {        sendEvent(midletDestroyedEvent, midletSuiteId, midletClassName);    }    /**     * Called to send a MIDlet resume request to the AMS isolate.     *     * @param midletSuiteId ID of the MIDlet suite     * @param midletClassName Class name of the MIDlet     */    public void sendMIDletResumeRequest(int midletSuiteId,                                        String midletClassName) {        sendEvent(new NativeEvent(EventTypes.MIDLET_RESUME_REQUEST),                  midletSuiteId, midletClassName);    }    /**     * Sends notification for MIDlet resources pause to the AMS isolate.     *     * @param midletSuiteId ID of the MIDlet suite     * @param midletClassName Class name of the MIDlet     */    public void sendMIDletRsPauseNotifyEvent(int midletSuiteId,                                             String midletClassName) {        sendEvent(midletRsPausedEvent, midletSuiteId, midletClassName);    }    /**     * Called by the display to request the central AMS to destroy the owning     * MIDlet.     *     * @param midletDisplayId ID of the sending Display     */    public void sendMIDletDestroyRequestEvent(int midletDisplayId) {        sendEvent(new NativeEvent(EventTypes.MIDLET_DESTROY_REQUEST_EVENT),                midletDisplayId);    }    /*     * Foreground MIDlet Management Events:     *     * SELECT_FOREGROUND - produced by native code     * FOREGROUND_TRANSFER     * SET_FOREGROUND_BY_NAME_REQUEST     *     */    /**     * Called to send a foreground MIDlet transfer event to the AMS isolate.     * Former: NEW method, originally sent from CHAPI     *     * @param originMIDletSuiteId ID of MIDlet from which     *        to take forefround ownership away,     * @param originMIDletClassName Name of MIDlet from which     *        to take forefround ownership away     * @param targetMIDletSuiteId ID of MIDlet     *        to give forefround ownership to,     * @param targetMIDletClassName Name of MIDlet     *        to give forefround ownership to     */    public void sendMIDletForegroundTransferEvent(        int originMIDletSuiteId,        String originMIDletClassName,        int targetMIDletSuiteId,        String targetMIDletClassName) {        NativeEvent event =            new NativeEvent(EventTypes.FOREGROUND_TRANSFER_EVENT);        event.intParam1 = originMIDletSuiteId;        event.intParam2 = targetMIDletSuiteId;        event.stringParam1 = originMIDletClassName;        event.stringParam2 = targetMIDletClassName;        eventQueue.sendNativeEventToIsolate(event, amsIsolateId);    }    /**     * Called to send a request to AMS isolate for a MIDlet be in     * the foreground.     *     * @param suiteId MIDlet's suite ID     * @param className MIDlet's class name     */    public void sendSetForegroundByNameRequestEvent(int suiteId,            String className) {        NativeEvent event =            new NativeEvent(EventTypes.SET_FOREGROUND_BY_NAME_REQUEST);        event.intParam1 = suiteId;        event.stringParam1 = className;        eventQueue.sendNativeEventToIsolate(event, amsIsolateId);    }    /**     * Called to send a Display created notification to the AMS isolate.     *     * @param midletDisplayId ID of the sending Display     * @param midletClassName Class name of the MIDlet that owns the display     */    public void sendDisplayCreateNotifyEvent(int midletDisplayId,                                             String midletClassName) {        NativeEvent event =            new NativeEvent(EventTypes.DISPLAY_CREATED_NOTIFICATION);        event.intParam1 = currentIsolateId;        event.intParam2 = midletDisplayId;        event.stringParam1 = midletClassName;        eventQueue.sendNativeEventToIsolate(event, amsIsolateId);    }    /*     * Foreground Display Management Events:     *     * FOREGROUND_REQUEST     * BACKGROUND_REQUEST     *     */    /**     * Called to send a foreground request event to the AMS isolate.     *     * @param midletDisplayId ID of the sending Display     * @param isAlert true if the current displayable is an Alert     */    public void sendDisplayForegroundRequestEvent(int midletDisplayId,            boolean isAlert) {        NativeEvent event =            new NativeEvent(EventTypes.FOREGROUND_REQUEST_EVENT);        if (isAlert) {            event.intParam2 = 1;        } else {            event.intParam2 = 0;        }        sendEvent(event, midletDisplayId);    }    /**     * Called to send a background request event to the AMS isolate.     *     * @param midletDisplayId ID of the sending Display     */    public void sendDisplayBackgroundRequestEvent(int midletDisplayId) {        sendEvent(new NativeEvent(EventTypes.BACKGROUND_REQUEST_EVENT),                midletDisplayId);    }    /*     * Display Preemption Management Events:     *     * PREEMPT     *     */    /**     * Called to start preempting and end preempting.     * Probably: will need more parameters, ex. MIDlet ID     *     * @param midletDisplayId ID of the sending Display     */    public void sendDisplayPreemptStartEvent(int midletDisplayId) {        NativeEvent event =            new NativeEvent(EventTypes.PREEMPT_EVENT);        event.intParam2 = -1; /* start = true */        sendEvent(event, midletDisplayId);    }    /**     * Called to start preempting and end preempting.     * Probably: will need more parameters, ex. MIDlet ID     *     * @param midletDisplayId ID of the sending Display     */    public void sendDisplayPreemptStopEvent(int midletDisplayId) {        NativeEvent event =            new NativeEvent(EventTypes.PREEMPT_EVENT);        event.intParam2 = 0; /* start = false */        sendEvent(event, midletDisplayId);    }    /**     * Sends standard MIDlet controller event setting two integer parameters     * for display ID and isolate ID. It is synchronized by the event to be      * sent to avoid inconsistent parameters setting.     *     * @param event event to be sent     * @param midletDisplayId ID of the sending Display     */    private void sendEvent(NativeEvent event, int midletDisplayId) {        synchronized (event) {            event.intParam1 = currentIsolateId;            event.intParam4 = midletDisplayId;            eventQueue.sendNativeEventToIsolate(event, amsIsolateId);        }    }    /**     * Sends standard MIDlet controller event setting two parameters     * for suite ID and class name. It is synchronized by the event to be      * sent to avoid inconsistent parameters setting.     *     * @param event event to be sent     * @param midletSuiteId ID of the MIDlet suite     * @param midletClassName Class name of the MIDlet     */    private void sendEvent(NativeEvent event, int midletSuiteId,                           String midletClassName) {        synchronized (event) {            event.intParam1 = midletSuiteId;            event.stringParam1 = midletClassName;            eventQueue.sendNativeEventToIsolate(event, amsIsolateId);        }    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?