home *** CD-ROM | disk | FTP | other *** search
- package WMPNS;
-
- import netscape.javascript.JSObject;
-
- class EventThread extends Thread {
- JSObject m_JSOWindow = null;
- WMP m_WMPApplet = null;
- int m_iEventThreadID = 0;
- boolean m_fFireEvents = true;
- int[] m_aValidEvents = new int[50];
- int m_iNumValidEvents = 0;
-
- private native void kill(int var1);
-
- void kill() {
- this.kill(this.m_iEventThreadID);
- }
-
- private native int GetThreadID();
-
- void stringStringStringEvent(long var1, String var3, String var4, String var5) {
- Object[] var6 = new Object[]{var3, var4, var5};
- switch ((int)var1) {
- case 5820:
- this.callEventHandler("MediaCollectionAttributeStringChanged", var6);
- default:
- }
- }
-
- void doubleDoubleEvent(long var1, double var3, double var5) {
- Double var7 = new Double(var3);
- Double var8 = new Double(var5);
- Object[] var9 = new Object[]{var7, var8};
- switch ((int)var1) {
- case 5202:
- this.callEventHandler("PositionChange", var9);
- default:
- }
- }
-
- void longLongStringEvent(long var1, long var3, long var5, String var7) {
- Long var8 = new Long(var3);
- Long var9 = new Long(var5);
- Object[] var10 = new Object[]{var8, var9, var7};
- switch ((int)var1) {
- case 5601:
- this.callEventHandler("Warning", var10);
- default:
- }
- }
-
- void boolEvent(long var1, boolean var3) {
- Boolean var4 = new Boolean(var3);
- Object[] var5 = new Object[]{var4};
- switch ((int)var1) {
- case 5402:
- this.callEventHandler("Buffering", var5);
- default:
- }
- }
-
- void longEvent(long var1, long var3) {
- Long var5 = new Long(var3);
- Object[] var6 = new Object[]{var5};
- switch ((int)var1) {
- case 5001:
- this.callEventHandler("OpenStateChange", var6);
- break;
- case 5101:
- this.callEventHandler("PlayStateChange", var6);
- break;
- case 5102:
- this.callEventHandler("AudioLanguageChange", var6);
- break;
- case 5201:
- this.callEventHandler("EndOfStream", var6);
- break;
- case 5203:
- this.callEventHandler("MarkerHit", var6);
- break;
- case 5204:
- this.callEventHandler("DurationUnitChange", var6);
- break;
- case 5401:
- this.callEventHandler("Disconnect", var6);
- break;
- case 5701:
- this.callEventHandler("CdromMediaChange", var6);
- break;
- case 5804:
- this.callEventHandler("CurrentPlaylistChange", var6);
- }
-
- }
-
- void mediaEvent(long var1, int var3) {
- IWMPMedia var4 = null;
- if (var3 >= 0) {
- var4 = new IWMPMedia();
- if (var4 != null) {
- var4.m_pIWMPMedia = var3;
- var4.m_hWnd = this.m_WMPApplet.m_hwndTarget;
- }
- }
-
- Object[] var5 = new Object[]{var4};
- switch ((int)var1) {
- case 5802:
- this.callEventHandler("MediaChange", var5);
- break;
- case 5806:
- this.callEventHandler("CurrentItemChange", var5);
- break;
- case 5821:
- this.callEventHandler("MediaError", var5);
- }
-
- }
-
- void playlistEvent(long var1, int var3) {
- IWMPPlaylist var4 = null;
- if (var3 >= 0) {
- var4 = new IWMPPlaylist();
- if (var4 != null) {
- var4.m_pIWMPPlaylist = var3;
- var4.m_hWnd = this.m_WMPApplet.m_hwndTarget;
- }
- }
-
- Object[] var5 = new Object[]{var4};
- switch ((int)var1) {
- case 5823:
- this.callEventHandler("OpenPlaylistSwitch", var5);
- default:
- }
- }
-
- private native void CheckEvents();
-
- void voidEvent(long var1) {
- switch ((int)var1) {
- case 5002:
- this.callEventHandler("StatusChange", (Object[])null);
- break;
- case 5403:
- this.callEventHandler("NewStream", (Object[])null);
- break;
- case 5501:
- this.callEventHandler("Error", (Object[])null);
- break;
- case 5807:
- this.callEventHandler("MediaCollectionChange", (Object[])null);
- break;
- case 5810:
- this.callEventHandler("PlaylistCollectionChange", (Object[])null);
- }
-
- }
-
- void stringEvent(long var1, String var3) {
- Object[] var4 = new Object[]{var3};
- switch ((int)var1) {
- case 5803:
- this.callEventHandler("CurrentMediaItemAvailable", var4);
- break;
- case 5805:
- this.callEventHandler("CurrentPlaylistItemAvailable", var4);
- break;
- case 5811:
- this.callEventHandler("PlaylistCollectionPlaylistAdded", var4);
- break;
- case 5812:
- this.callEventHandler("PlaylistCollectionPlaylistRemoved", var4);
- break;
- case 5822:
- this.callEventHandler("DomainChange", var4);
- }
-
- }
-
- void shortEvent(long var1, short var3) {
- Short var4 = new Short(var3);
- Object[] var5 = new Object[]{var4};
- switch ((int)var1) {
- case 6508:
- this.callEventHandler("KeyPress", var5);
- default:
- }
- }
-
- void callEventHandler(String var1, Object[] var2) {
- if (this.m_fFireEvents) {
- String var3 = "On" + this.m_WMPApplet.m_sEventPrefix + var1;
-
- try {
- this.m_JSOWindow.call(var3, var2);
- } catch (Exception var5) {
- System.out.println("Exception caught when firing \"" + var3 + "\" event. " + ((Throwable)var5).toString());
- ((Throwable)var5).printStackTrace();
- }
- }
-
- }
-
- void InitValidEventsArray() {
- this.VerifyAndAddEntryForEvent(5001, "OpenStateChange");
- this.VerifyAndAddEntryForEvent(5002, "StatusChange");
- this.VerifyAndAddEntryForEvent(5101, "PlayStateChange");
- this.VerifyAndAddEntryForEvent(5102, "AudioLanguageChange");
- this.VerifyAndAddEntryForEvent(5201, "EndOfStream");
- this.VerifyAndAddEntryForEvent(5202, "PositionChange");
- this.VerifyAndAddEntryForEvent(5203, "MarkerHit");
- this.VerifyAndAddEntryForEvent(5204, "DurationUnitChange");
- this.VerifyAndAddEntryForEvent(5301, "ScriptCommand");
- this.VerifyAndAddEntryForEvent(5401, "Disconnect");
- this.VerifyAndAddEntryForEvent(5402, "Buffering");
- this.VerifyAndAddEntryForEvent(5403, "NewStream");
- this.VerifyAndAddEntryForEvent(5501, "Error");
- this.VerifyAndAddEntryForEvent(5601, "Warning");
- this.VerifyAndAddEntryForEvent(5701, "CdromMediaChange");
- this.VerifyAndAddEntryForEvent(5801, "PlaylistChange");
- this.VerifyAndAddEntryForEvent(5802, "MediaChange");
- this.VerifyAndAddEntryForEvent(5803, "CurrentMediaItemAvailable");
- this.VerifyAndAddEntryForEvent(5804, "CurrentPlaylistChange");
- this.VerifyAndAddEntryForEvent(5805, "CurrentPlaylistItemAvailable");
- this.VerifyAndAddEntryForEvent(5806, "CurrentItemChange");
- this.VerifyAndAddEntryForEvent(5807, "MediaCollectionChange");
- this.VerifyAndAddEntryForEvent(5808, "MediaCollectionAttributeStringAdded");
- this.VerifyAndAddEntryForEvent(5809, "MediaCollectionAttributeStringRemoved");
- this.VerifyAndAddEntryForEvent(5810, "PlaylistCollectionChange");
- this.VerifyAndAddEntryForEvent(5811, "PlaylistCollectionPlaylistAdded");
- this.VerifyAndAddEntryForEvent(5812, "PlaylistCollectionPlaylistRemoved");
- this.VerifyAndAddEntryForEvent(5818, "PlaylistCollectionPlaylistSetAsDeleted");
- this.VerifyAndAddEntryForEvent(5819, "ModeChange");
- this.VerifyAndAddEntryForEvent(5820, "MediaCollectionAttributeStringChanged");
- this.VerifyAndAddEntryForEvent(5821, "MediaError");
- this.VerifyAndAddEntryForEvent(5822, "DomainChange");
- this.VerifyAndAddEntryForEvent(5823, "OpenPlaylistSwitch");
- this.VerifyAndAddEntryForEvent(6505, "Click");
- this.VerifyAndAddEntryForEvent(6506, "DoubleClick");
- this.VerifyAndAddEntryForEvent(6507, "KeyDown");
- this.VerifyAndAddEntryForEvent(6508, "KeyPress");
- this.VerifyAndAddEntryForEvent(6509, "KeyUp");
- this.VerifyAndAddEntryForEvent(6510, "MouseDown");
- this.VerifyAndAddEntryForEvent(6511, "MouseMove");
- this.VerifyAndAddEntryForEvent(6512, "MouseUp");
- }
-
- public void run() {
- this.m_iEventThreadID = this.GetThreadID();
- this.m_WMPApplet.m_iEventThreadID = this.m_iEventThreadID;
- this.InitValidEventsArray();
- this.CheckEvents();
- }
-
- void playlistLongEvent(long var1, int var3, long var4) {
- IWMPPlaylist var6 = null;
- Long var7 = new Long(var4);
- if (var3 >= 0) {
- var6 = new IWMPPlaylist();
- if (var6 != null) {
- var6.m_pIWMPPlaylist = var3;
- var6.m_hWnd = this.m_WMPApplet.m_hwndTarget;
- }
- }
-
- Object[] var8 = new Object[]{var6, var7};
- switch ((int)var1) {
- case 5801:
- this.callEventHandler("PlaylistChange", var8);
- default:
- }
- }
-
- void stringBoolEvent(long var1, String var3, boolean var4) {
- Boolean var5 = new Boolean(var4);
- Object[] var6 = new Object[]{var3, var5};
- switch ((int)var1) {
- case 5818:
- this.callEventHandler("PlaylistCollectionPlaylistSetAsDeleted", var6);
- break;
- case 5819:
- this.callEventHandler("ModeChange", var6);
- }
-
- }
-
- void stringStringEvent(long var1, String var3, String var4) {
- Object[] var5 = new Object[]{var3, var4};
- switch ((int)var1) {
- case 5301:
- this.callEventHandler("ScriptCommand", var5);
- break;
- case 5808:
- this.callEventHandler("MediaCollectionAttributeStringAdded", var5);
- break;
- case 5809:
- this.callEventHandler("MediaCollectionAttributeStringRemoved", var5);
- }
-
- }
-
- void shortShortLongLongEvent(long var1, short var3, short var4, long var5, long var7) {
- Short var9 = new Short(var3);
- Short var10 = new Short(var4);
- Long var11 = new Long(var5);
- Long var12 = new Long(var7);
- Object[] var13 = new Object[]{var9, var10, var11, var12};
- switch ((int)var1) {
- case 6505:
- this.callEventHandler("Click", var13);
- break;
- case 6506:
- this.callEventHandler("DoubleClick", var13);
- case 6507:
- case 6508:
- case 6509:
- default:
- break;
- case 6510:
- this.callEventHandler("MouseDown", var13);
- break;
- case 6511:
- this.callEventHandler("MouseMove", var13);
- break;
- case 6512:
- this.callEventHandler("MouseUp", var13);
- }
-
- }
-
- void shortShortEvent(long var1, short var3, short var4) {
- Short var5 = new Short(var3);
- Short var6 = new Short(var4);
- Object[] var7 = new Object[]{var5, var6};
- switch ((int)var1) {
- case 6507:
- this.callEventHandler("KeyDown", var7);
- case 6508:
- default:
- break;
- case 6509:
- this.callEventHandler("KeyUp", var7);
- }
-
- }
-
- void VerifyAndAddEntryForEvent(int var1, String var2) {
- try {
- String var3 = this.m_JSOWindow.getMember("On" + this.m_WMPApplet.m_sEventPrefix + var2).toString();
- if (var3 != null && !var3.equalsIgnoreCase("undefined")) {
- this.m_aValidEvents[this.m_iNumValidEvents++] = var1;
- }
- } catch (Exception var4) {
- }
-
- }
- }
-