Package chrriis.dj.nativeswing.swtimpl

Examples of chrriis.dj.nativeswing.swtimpl.Message


  @Override
  protected Message readMessageFromChannel() throws IOException, ClassNotFoundException {
    Object o = ois.readUnshared();
    if(o instanceof Message) {
      Message message = (Message)o;
      if(IS_DEBUGGING_MESSAGES) {
        System.err.println("RECV: " + SWTNativeInterface.getMessageID(message) + ", " + message);
      }
      return message;
    }
View Full Code Here


  @Override
  protected Message readMessageFromChannel() throws IOException, ClassNotFoundException {
    Object o = ois.readUnshared();
    if(o instanceof Message) {
      Message message = (Message)o;
      if(IS_DEBUGGING_MESSAGES) {
        System.err.println("RECV: " + SWTNativeInterface.getMessageID(message) + ", " + message);
      }
      return message;
    }
View Full Code Here

    // While waiting for an SWT fix, we use the workaround to disable the component which loses the focus.
    JWebBrowser webBrowser = htmlEditor.getWebBrowser();
    NativeComponent nativeComponent = webBrowser.getNativeComponent();
    boolean isEnabled = nativeComponent.isEnabled();
    nativeComponent.setEnabled(false);
    new Message().syncSend(true);
    webBrowser.executeJavascript("JH_setData('" + Utils.encodeURL(html) + "');");
    new Message().syncSend(true);
    nativeComponent.setEnabled(isEnabled);
  }
View Full Code Here

    // While waiting for an SWT fix, we use the workaround to disable the component which loses the focus.
    JWebBrowser webBrowser = htmlEditor.getWebBrowser();
    NativeComponent nativeComponent = webBrowser.getNativeComponent();
    boolean isEnabled = nativeComponent.isEnabled();
    nativeComponent.setEnabled(false);
    new Message().syncSend(true);
    webBrowser.executeJavascript("JH_setData('" + Utils.encodeURL(html) + "');");
    new Message().syncSend(true);
    nativeComponent.setEnabled(isEnabled);
  }
View Full Code Here

  private Object RECEIVER_LOCK = new Object();

  private CommandResultMessage processReceivedMessages() {
    while(true) {
      Message message;
      synchronized(RECEIVER_LOCK) {
        if(receivedMessageList.isEmpty()) {
          return null;
        }
        message = receivedMessageList.remove(0);
View Full Code Here

  private void createReceiverThread(final boolean exitOnEndOfStream) {
    Thread receiverThread = new Thread("NativeSwing[" + pid + "] " + (isNativeSide()? "SWT": "Swing") + " Receiver") {
      @Override
      public void run() {
        while(MessagingInterface.this.isAlive()) {
          Message message = null;
          try {
            message = readMessageFromChannel();
          } catch(Exception e) {
            boolean isRespawned = false;
            if(MessagingInterface.this.isAlive()) {
              setAlive(false);
              if(exitOnEndOfStream) {
                terminate();
                return;
              }
              e.printStackTrace();
              try {
                isRespawned = SWTNativeInterface.getInstance().notifyKilled();
              } catch(Exception ex) {
                ex.printStackTrace();
              }
            }
            // Unlock all locked sync calls
            synchronized(RECEIVER_LOCK) {
              receivedMessageList.clear();
              RECEIVER_LOCK.notify();
            }
            for(int instanceID: syncThreadRegistry.getInstanceIDs()) {
              Object o = syncThreadRegistry.get(instanceID);
              if(o instanceof ThreadLock) {
                synchronized(o) {
                  o.notify();
                }
              }
            }
            if(isRespawned) {
              SWTNativeInterface.getInstance().notifyRespawned();
            }
          }
          if(message != null) {
            if(!SWTNativeInterface.isMessageUI(message)) {
              final Message message_ = message;
              new Thread("NativeSwing[" + getPID() + "] Non-UI Message [" + SWTNativeInterface.getMessageID(message) + "] Executor") {
                @Override
                public void run() {
                  runMessage(message_);
                }
View Full Code Here

  }

  private static class CM_asyncExec extends CommandMessage {
    @Override
    public Object run(Object[] args) {
      Message message = (Message)args[1];
      boolean isOriginatorNativeSide = (Boolean)args[2];
      SWTNativeInterface.setMessageSyncExec(message, false);
      MessagingInterface messagingInterface = SWTNativeInterface.getInstance().getMessagingInterface(!isOriginatorNativeSide);
      CM_asyncExecResponse asyncExecResponse = new CM_asyncExecResponse();
      SWTNativeInterface.setMessageArgs(asyncExecResponse, args[0], messagingInterface.runMessage(message), messagingInterface.isNativeSide());
View Full Code Here

    // While waiting for an SWT fix, we use the workaround to disable the component which loses the focus.
    JWebBrowser webBrowser = htmlEditor.getWebBrowser();
    NativeComponent nativeComponent = webBrowser.getNativeComponent();
    boolean isEnabled = nativeComponent.isEnabled();
    nativeComponent.setEnabled(false);
    new Message().syncSend(true);
    webBrowser.executeJavascript("JH_setData('" + Utils.encodeURL(html) + "');");
    new Message().syncSend(true);
    nativeComponent.setEnabled(isEnabled);
  }
View Full Code Here

    }

    private static class CMJ_unlockSystemIn extends CommandMessage {
      @Override
      public Object run(Object[] args) throws Exception {
        new Message().asyncSend(true);
        return null;
      }
View Full Code Here

TOP

Related Classes of chrriis.dj.nativeswing.swtimpl.Message

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.