Package org.eclipse.swt.ole.win32

Examples of org.eclipse.swt.ole.win32.OleFrame


    oleFrame = new OleFrame(this, SWT.NONE);

    try {
      // Create an Automation object for access to extended capabilities
      oleControlSite = new OleControlSite(oleFrame, SWT.NONE,
          "ShockwaveFlash.ShockwaveFlash");
      OleAutomation oleAutomation = new OleAutomation(oleControlSite);
      flashObject = new OleObject(oleAutomation);
      created = true;
      final OleMsgHook hook = new OleMsgHook(this);
View Full Code Here


    flashListener = listener;

    this.setLayout(new FillLayout());

    oleFrame = new OleFrame(this, SWT.NONE);

    try {
      // Create an Automation object for access to extended capabilities
      oleControlSite = new OleControlSite(oleFrame, SWT.NONE,
          "ShockwaveFlash.ShockwaveFlash");
View Full Code Here

      return null;
    }
  }

  protected static Control createControl(Composite parent, Object[] parameters) {
    final OleFrame frame = new OleFrame(parent, SWT.NONE);
    OleControlSite site;
    try {
      site = new OleControlSite(frame, SWT.NONE, "Shell.Explorer");
      configureOleFrame(site, frame);
      // Add a listener
      OleAutomation shellExplorer = new OleAutomation(site);
      int[] dispIDs = shellExplorer.getIDsOfNames(new String[] {"Application"});
      Variant pVarResult = shellExplorer.getProperty(dispIDs[0]);
      final OleAutomation application = pVarResult.getAutomation();
      frame.addDisposeListener(new DisposeListener() {
        public void widgetDisposed(DisposeEvent e) {
          application.dispose();
        }
      });
      pVarResult.dispose();
      shellExplorer.dispose();
      OleListener listener = new OleListener() {
        public void handleEvent (OleEvent e) {
          Variant[] args = e.arguments;
          String url = args[1].getString();
          // two arguments which must be released
          for (int i = 0; i < args.length; i++) {
            args[i].dispose();
          }
          new CMJ_sendDocumentCompleteEvent().asyncExec(frame, url);
        }
      };
      site.addEventListener(application, IID_DWebBrowserEvents2, DocumentComplete, listener);
    } catch(SWTException e) {
      e.printStackTrace();
      frame.dispose();
      return null;
    }
    site.doVerb(OLE.OLEIVERB_INPLACEACTIVATE);
    return frame;
  }
View Full Code Here

* @author Christopher Deckers
*/
class NativeWMediaPlayer extends SWTOleNativeComponent implements INativeWMediaPlayer {

  protected static Control createControl(Composite parent, Object[] parameters) {
    OleFrame frame = new OleFrame(parent, SWT.NONE);
    OleClientSite site;
    try {
      site = new OleClientSite(frame, SWT.NONE, "WMPlayer.OCX");
      configureOleFrame(site, frame);
    } catch(SWTException e) {
      e.printStackTrace();
      frame.dispose();
      return null;
    }
    site.doVerb(OLE.OLEIVERB_INPLACEACTIVATE);
    return frame;
  }
View Full Code Here

    }
    System.out.println();

    System.out.println("Methods:");

    OleFunctionDescription funcDesc;
    for (int i = 0; (funcDesc = oleAutomation.getFunctionDescription(i)) != null; i++) {
      System.out.print(funcDesc.name);
      System.out.print("(");
      for (int j = 0; j < funcDesc.args.length; j++) {
        OleParameterDescription parmDesc = funcDesc.args[j];
View Full Code Here

      return;
    }

    // ReadyStateChange event
    oleControlSite.addEventListener(DISPID_ONREADYSTATECHANGE,
        new OleListener() {
          public void handleEvent(OleEvent event) {
            Variant state = event.arguments[0];
            if (flashListener != null)
              flashListener.onReadyStateChange(state.getInt());
          }
        });

    // OnProgress event
    oleControlSite.addEventListener(DISPID_ONPROGRESS, new OleListener() {
      public void handleEvent(OleEvent event) {
        Variant percentDone = event.arguments[0];
        if (percentDone != null) {
          if (flashListener != null)
            flashListener.onProgress(percentDone.getInt());
        }
      }
    });

    // FSCommand event
    oleControlSite.addEventListener(DISPID_FSCOMMAND, new OleListener() {
      public void handleEvent(OleEvent event) {
        Variant command = event.arguments[0];
        Variant args = event.arguments[1];
        if (command != null && args != null) {
          if (flashListener != null)
View Full Code Here

    OleFunctionDescription funcDesc;
    for (int i = 0; (funcDesc = oleAutomation.getFunctionDescription(i)) != null; i++) {
      System.out.print(funcDesc.name);
      System.out.print("(");
      for (int j = 0; j < funcDesc.args.length; j++) {
        OleParameterDescription parmDesc = funcDesc.args[j];
        System.out.print(parmDesc.name);
        System.out.print(", ");
      }
      System.out.println(")");
    }
View Full Code Here

    return setIntegerProperty("Height", value);
  }

  public void dump() {
    System.out.println("Properties:");
    OlePropertyDescription propDesc;
    for (int i = 0; (propDesc = oleAutomation.getPropertyDescription(i)) != null; i++) {
      System.out.println(propDesc.name);
    }
    System.out.println();
View Full Code Here

      int pVarResult,
      int pExcepInfo,
      int pArgErr) {
    HResultException ex = null;
    Variant[] vArgs = null;
    Variant result = null;
    try {
      vArgs = extractVariantArrayFromDispParamsPtr(pDispParams);
      result = invoke(dispIdMember, dwFlags, vArgs);
      if (pVarResult != 0) {
        Utils.win32_copy(pVarResult, result);
      }
    } catch (HResultException e) {
      // Log to the console for detailed examination.
      //
      e.printStackTrace();
      ex = e;
    } catch (InvocationTargetException e) {
      // If we get here, it means an exception is being thrown from
      // Java back into JavaScript
      Throwable t = e.getTargetException();
      ex = new HResultException(t);
      ModuleSpace.setThrownJavaException(t);
    } catch (Exception e) {
      // Log to the console for detailed examination.
      //
      e.printStackTrace();
      ex = new HResultException(e);
    } finally {
      // We allocated variants for all arguments, so we must dispose them all.
      //
      for (int i = 0; i < vArgs.length; ++i) {
        if (vArgs[i] != null) {
          vArgs[i].dispose();
        }
      }
      if (result != null) {
        result.dispose();
      }
    }
    if (ex != null) {
      // Set up an exception for IE to throw.
      //
View Full Code Here

      throw new RuntimeException("Invalid dispatch oracle.");
    }
    try {
      // GWT 2: called static scope with dispId as parameter
      if (dispId == 0 && (flags & COM.DISPATCH_METHOD) != 0 && params.length >= 2) {
        Variant dispIdVar = params[0]; // zero is dispId, next should be null (as 'this') for static context
        dispId = dispIdVar.getInt();
        if (javaDispatch.isMethod(dispId)) {
          MethodAdaptor method = javaDispatch.getMethod(dispId);
          Object target = getTarget();
          Object jthis =
              method.needsThis() ? JsValueGlue.get(
                new JsValueIE6(params[1]),
                classLoader,
                method.getDeclaringClass(),
                "this") : null;
          Variant[] otherParams = new Variant[params.length - 2];
          System.arraycopy(params, 2, otherParams, 0, otherParams.length);
          return callMethod(classLoader, dispIdOracle, jthis, otherParams, method);
        }
      }
      // Whatever the caller asks for, try to find it via reflection.
      //
      if (dispId == DISPID_MAGIC_GETGLOBALREF && myGlobalRef != 0) {
        // Handle specially.
        //
        return new Variant(myGlobalRef);
      } else if (dispId == 0) {
        if ((flags & COM.DISPATCH_METHOD) != 0) {
          // implicit call -- "m()"
          // not supported -- fall through to unsupported failure
        } else if ((flags & COM.DISPATCH_PROPERTYGET) != 0) {
          // implicit toString -- "'foo' + m"
          return new Variant(getTarget().toString());
        }
      } else if (dispId > 0) {
        if (javaDispatch.isMethod(dispId)) {
          MethodAdaptor method = javaDispatch.getMethod(dispId);
          if ((flags & COM.DISPATCH_METHOD) != 0) {
            // This is a method call.
            return callMethod(classLoader, dispIdOracle, getTarget(), params, method);
          } else if (flags == COM.DISPATCH_PROPERTYGET) {
            // The function is being accessed as a property.
            AccessibleObject obj = method.getUnderlyingObject();
            IDispatchImpl dispMethod =
                (IDispatchImpl) WrappersCache.getWrapperForObject(classLoader, obj);
            if (dispMethod == null || dispMethod.refCount < 1) {
              dispMethod = new MethodDispatch(classLoader, dispIdOracle, method);
              WrappersCache.putWrapperForObject(classLoader, obj, dispMethod);
            }
            IDispatch disp = new IDispatch(dispMethod.getAddress());
            disp.AddRef();
            return new Variant(disp);
          }
        } else if (javaDispatch.isField(dispId)) {
          Field field = javaDispatch.getField(dispId);
          if (flags == COM.DISPATCH_PROPERTYGET) {
            return SwtOleGlue.convertObjectToVariant(
              classLoader,
              dispIdOracle,
              field.getType(),
              javaDispatch.getFieldValue(dispId));
          } else if ((flags & (COM.DISPATCH_PROPERTYPUT | COM.DISPATCH_PROPERTYPUTREF)) != 0) {
            javaDispatch.setFieldValue(dispId, JsValueGlue.get(
              new JsValueIE6(params[0]),
              classLoader,
              field.getType(),
              "Setting field '" + field.getName() + "'"));
            return new Variant();
          }
        }
      } else {
        // The specified member id is out of range.
        throw new HResultException(COM.DISP_E_MEMBERNOTFOUND);
View Full Code Here

TOP

Related Classes of org.eclipse.swt.ole.win32.OleFrame

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.