r=gbarney
a=edburns
This checkin adds java.awt.event.MouseListener support to webclient for
mozilla. The following files are include in this checkin. "A" is new
file "M" is modified file.
A classes_spec/org/mozilla/webclient/WCMouseEvent.java
A classes_spec/org/mozilla/webclient/wrapper_native/WCMouseListenerImpl.java
A src_moz/DOMMouseListenerImpl.cpp
A src_moz/DOMMouseListenerImpl.h
A src_moz/dom_util.cpp
A src_moz/dom_util.h
M classes_spec/org/mozilla/webclient/EventRegistration.java
M classes_spec/org/mozilla/webclient/test/EMWindow.java
M classes_spec/org/mozilla/webclient/wrapper_native/EventRegistrationImpl.java
M classes_spec/org/mozilla/webclient/wrapper_native/NativeEventThread.java
M src_moz/DocumentLoaderObserverImpl.cpp
M src_moz/DocumentLoaderObserverImpl.h
M src_moz/EventRegistration.cpp
M src_moz/EventRegistration.h
M src_moz/Makefile.solaris
M src_moz/Makefile.win
M src_moz/NativeEventThread.cpp
M src_moz/NavigationImpl.cpp
M src_moz/RDFTreeNode.cpp
M src_moz/bal_util.cpp
M src_moz/jni_util.cpp
M src_moz/jni_util.h
M src_moz/jni_util_export.cpp
M src_moz/jni_util_export.h
A classes_spec/org/mozilla/webclient/WCMouseEvent.java
* <P> This java.awt.event.MouseEvent subclass allows the user to access the
* WebclientEvent. This eventData of this WebclientEvent, if non-null,
* is a java.util.Properties instance that contains information about
* this event. </P>
* <P>The following are some interesting keys:</P>
* <UL>
* <LI> href
* </LI>
* <LI> #text
* </LI>
* </UL>
A classes_spec/org/mozilla/webclient/wrapper_native/WCMouseListenerImpl.java
* This class wraps the user provided instance of
* java.awt.event.MouseListener so it can be installed as a
* WebclientEventListener. Note that we implement MouseListener so we
* can be detected by the webclient event system. We don't do anything
* with these methods here, though.
A src_moz/DOMMouseListenerImpl.cpp
A src_moz/DOMMouseListenerImpl.h
* This class is the shim between the mozilla listener event system for
* mouse events and the java MouseListener interface.
* For each of the Mouse* methods, we call the appropriate method in java.
* See the implementation of MouseOver for an example.
* For each mouseEvent, we create a Properties object containing
* information about the event. We use methods in dom_util to do this.
A src_moz/dom_util.cpp
A src_moz/dom_util.h
/**
* Methods to simplify webclient accessing the mozilla DOM.
*/
M classes_spec/org/mozilla/webclient/EventRegistration.java
Added support for java.awt.event.MouseListener
M classes_spec/org/mozilla/webclient/test/EMWindow.java
Implemented simle MouseListener
M classes_spec/org/mozilla/webclient/wrapper_native/EventRegistrationImpl.java
Added support for java.awt.event.MouseListener
M classes_spec/org/mozilla/webclient/wrapper_native/NativeEventThread.java
Added support for java.awt.event.MouseListener
M src_moz/DocumentLoaderObserverImpl.cpp
M src_moz/DocumentLoaderObserverImpl.h
* We define a local IID to allow the addDocumentLoadListener and
* addMouseListener functions in EventRegistration.{h,cpp} to
* interrogate the currently installed DocumentLoaderObserver instance
* in mozilla.
*/
#define NS_IDOCLOADEROBSERVERIMPL_IID_STR "fdadb2e0-3028-11d4-8a96-0080c7b9c5ba"
#define NS_IDOCLOADEROBSERVERIMPL_IID {0xfdadb2e0, 0x3028, 0x11d4, { 0x8a, 0x96, 0x00, 0x80, 0xc7, 0xb9, 0xc5, 0xba }}
/**
* This class is the shim between the mozilla listener event system for
* document load events and the java DocumentLoadListener interface.
* For each of the On* methods, we call the appropriate method in java.
* See the implementation of OnEndDocumentLoad for an example.
* A DocumentLoaderObserverImpl instance has a "jobject target", which
* is the Java object that should ultimately receive the events. This
* target will be null if the user just wants to listen for mouse
* events. It willl be non-null if the user wants to listen for
* DocumentLoad events.
* It also hosts a nsIDOMMouseListener instance, which piggybacks on the
* nsIDocumentLoaderObserver instance.
M src_moz/EventRegistration.cpp
M src_moz/EventRegistration.h
Add support for MouseListener
M src_moz/Makefile.win
Added classes for MouseListener and Dom access
M src_moz/NativeEventThread.cpp
Added support for MouseListener
M src_moz/NavigationImpl.cpp
Added call to ReleaseStringChars for bal case.
M src_moz/RDFTreeNode.cpp
Added call to ReleaseStringChars for bal case.
M src_moz/bal_util.cpp
Added #include "wchar.h" so this file compiles on Solaris.
M src_moz/jni_util.cpp
Added implementations for util_CreatePropertiesObject,
util_DestroyPropertiesObject and util_StoreIntoPropertiesObject.
M src_moz/jni_util.h
/**
* A JNI wrapper to create a java.util.Properties object, or the
* equivalent object in the BAL case.
*/
jobject util_CreatePropertiesObject(JNIEnv *env, jobject reserved_NotUsed);
/**
* A JNI wrapper to destroy the object from CreatePropertiesObject
*/
void util_DestroyPropertiesObject(JNIEnv *env, jobject propertiesObject,
jobject reserved_NotUsed);
/**
* A JNI wrapper for storing a name/value pair into the Properties
* object created by CreatePropertiesObject
*/
void util_StoreIntoPropertiesObject(JNIEnv *env, jobject propertiesObject,
jobject name, jobject value);
M src_moz/jni_util_export.cpp
M src_moz/jni_util_export.h
Added functions for allowing the BAL user to specify functions for
{creating, destroying, setting values into} properties objects.
git-svn-id: svn://10.0.0.236/trunk@70879 18797224-902f-48f8-a5cc-f745e15eee43
187 lines
6.1 KiB
Makefile
187 lines
6.1 KiB
Makefile
#!nmake
|
|
#
|
|
# The contents of this file are subject to the Mozilla Public
|
|
# License Version 1.1 (the "License"); you may not use this file
|
|
# except in compliance with the License. You may obtain a copy of
|
|
# the License at http://www.mozilla.org/MPL/
|
|
#
|
|
# Software distributed under the License is distributed on an "AS
|
|
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
|
# implied. See the License for the specific language governing
|
|
# rights and limitations under the License.
|
|
#
|
|
# The Original Code is mozilla.org code.
|
|
#
|
|
# The Initial Developer of the Original Code is Sun Microsystems,
|
|
# Inc. Portions created by Sun are
|
|
# Copyright (C) 1999 Sun Microsystems, Inc. All
|
|
# Rights Reserved.
|
|
#
|
|
# Contributor(s):
|
|
|
|
DEPTH=..\..\..
|
|
IGNORE_MANIFEST=1
|
|
|
|
MAKE_OBJ_TYPE = DLL
|
|
DLLNAME = webclient
|
|
DLL=.\$(OBJDIR)\$(DLLNAME).dll
|
|
|
|
MODULE=webclient
|
|
|
|
OBJS = \
|
|
.\$(OBJDIR)\jni_util.obj \
|
|
.\$(OBJDIR)\jni_util_export.obj \
|
|
.\$(OBJDIR)\rdf_util.obj \
|
|
.\$(OBJDIR)\dom_util.obj \
|
|
.\$(OBJDIR)\nsActions.obj \
|
|
.\$(OBJDIR)\BookmarksImpl.obj \
|
|
.\$(OBJDIR)\CurrentPageImpl.obj \
|
|
.\$(OBJDIR)\DocumentLoaderObserverImpl.obj \
|
|
.\$(OBJDIR)\DOMMouseListenerImpl.obj \
|
|
.\$(OBJDIR)\EventRegistration.obj \
|
|
.\$(OBJDIR)\HistoryImpl.obj \
|
|
.\$(OBJDIR)\WrapperFactoryImpl.obj \
|
|
.\$(OBJDIR)\WindowControlImpl.obj \
|
|
.\$(OBJDIR)\NavigationImpl.obj \
|
|
.\$(OBJDIR)\NativeEventThread.obj \
|
|
.\$(OBJDIR)\RDFEnumeration.obj \
|
|
.\$(OBJDIR)\RDFTreeNode.obj \
|
|
.\$(OBJDIR)\ISupportsPeer.obj \
|
|
.\$(OBJDIR)\nsSetupRegistry.obj \
|
|
$(NULL)
|
|
|
|
!ifdef BAL_INTERFACE
|
|
OBJS = \
|
|
.\$(OBJDIR)\bal_util.obj \
|
|
$(OBJS) \
|
|
$(NULL)
|
|
!endif
|
|
|
|
|
|
LCFLAGS = \
|
|
-DDEBUG_RAPTOR_CANVAS \
|
|
$(NULL)
|
|
|
|
!ifdef BAL_INTERFACE
|
|
LCFLAGS = \
|
|
$(LCFLAGS) \
|
|
-DBAL_INTERFACE \
|
|
$(NULL)
|
|
!endif
|
|
|
|
LLIBS = \
|
|
$(DIST)\lib\gkweb.lib \
|
|
$(DIST)\lib\raptorbasewidget_s.lib \
|
|
$(DIST)\lib\gkwidget.lib \
|
|
$(DIST)\lib\xpcom.lib \
|
|
$(DIST)\lib\gkgfxwin.lib \
|
|
$(DIST)\lib\nsreg.lib \
|
|
$(DIST)\lib\nspr3.lib \
|
|
$(DIST)\lib\plds3.lib \
|
|
$(DIST)\lib\plc3.lib \
|
|
# $(DEPTH)\xpfe\bootstrap\$(OBJDIR)\nsSetupRegistry.obj \
|
|
$(NULL)
|
|
|
|
WIN_LIBS = \
|
|
version.lib
|
|
|
|
include <$(DEPTH)\config\rules.mak>
|
|
|
|
include <$(DEPTH)\java\config\localdefs.mak>
|
|
|
|
!ifdef BAL_INTERFACE
|
|
INCS = \
|
|
-I..\bal\ \
|
|
-I..\bal\win32 \
|
|
$(INCS) \
|
|
$(NULL)
|
|
!else
|
|
INCS = \
|
|
-I$(JDKHOME)\include \
|
|
-I$(JDKHOME)\include\win32 \
|
|
$(INCS) \
|
|
$(NULL)
|
|
!endif
|
|
|
|
|
|
!CMDSWITCHES -S
|
|
|
|
# generate the jni header
|
|
export:: BookmarksImpl.h CurrentPageImpl.h HistoryImpl.h WrapperFactoryImpl.h WindowControlImpl.h NavigationImpl.h NativeEventThread.h RDFEnumeration.h RDFTreeNode.h ISupportsPeer.h nsSetupRegistry.cpp
|
|
|
|
BookmarksImpl.h:
|
|
@echo Assuming class org.mozilla.webclient.wrapper_native.BookmarksImpl is in $(JAVAH_FLAGS)
|
|
$(JAVAH) $(JAVAH_FLAGS) -o $@ org.mozilla.webclient.wrapper_native.BookmarksImpl
|
|
|
|
CurrentPageImpl.h:
|
|
@echo Assuming class org.mozilla.webclient.wrapper_native.CurrentPageImpl is in $(JAVAH_FLAGS)
|
|
$(JAVAH) $(JAVAH_FLAGS) -o $@ org.mozilla.webclient.wrapper_native.CurrentPageImpl
|
|
|
|
HistoryImpl.h:
|
|
@echo Assuming class org.mozilla.webclient.wrapper_native.HistoryImpl is in $(JAVAH_FLAGS)
|
|
$(JAVAH) $(JAVAH_FLAGS) -o $@ org.mozilla.webclient.wrapper_native.HistoryImpl
|
|
|
|
WrapperFactoryImpl.h:
|
|
@echo Assuming class org.mozilla.webclient.wrapper_native.WrapperFactoryImpl is in $(JAVAH_FLAGS)
|
|
$(JAVAH) $(JAVAH_FLAGS) -o $@ org.mozilla.webclient.wrapper_native.WrapperFactoryImpl
|
|
|
|
NavigationImpl.h:
|
|
@echo Assuming class org.mozilla.webclient.wrapper_native.NavigationImpl is in $(JAVAH_FLAGS)
|
|
$(JAVAH) $(JAVAH_FLAGS) -o $@ org.mozilla.webclient.wrapper_native.NavigationImpl
|
|
|
|
RDFEnumeration.h:
|
|
@echo Assuming class org.mozilla.webclient.wrapper_native.RDFEnumeration is in $(JAVAH_FLAGS)
|
|
$(JAVAH) $(JAVAH_FLAGS) -o $@ org.mozilla.webclient.wrapper_native.RDFEnumeration
|
|
|
|
RDFTreeNode.h:
|
|
@echo Assuming class org.mozilla.webclient.wrapper_native.RDFTreeNode is in $(JAVAH_FLAGS)
|
|
$(JAVAH) $(JAVAH_FLAGS) -o $@ org.mozilla.webclient.wrapper_native.RDFTreeNode
|
|
|
|
ISupportsPeer.h:
|
|
@echo Assuming class org.mozilla.webclient.wrapper_native.ISupportsPeer is in $(JAVAH_FLAGS)
|
|
$(JAVAH) $(JAVAH_FLAGS) -o $@ org.mozilla.webclient.wrapper_native.ISupportsPeer
|
|
|
|
WindowControlImpl.h:
|
|
@echo Assuming class org.mozilla.webclient.wrapper_native.WindowControlImpl is in $(JAVAH_FLAGS)
|
|
$(JAVAH) $(JAVAH_FLAGS) -o $@ org.mozilla.webclient.wrapper_native.WindowControlImpl
|
|
|
|
NativeEventThread.h:
|
|
@echo Assuming class org.mozilla.webclient.wrapper_native.NativeEventThread is in $(JAVAH_FLAGS)
|
|
$(JAVAH) $(JAVAH_FLAGS) -o $@ org.mozilla.webclient.wrapper_native.NativeEventThread
|
|
|
|
nsSetupRegistry.cpp:
|
|
copy $(MOZ_SRC)\mozilla\xpfe\bootstrap\nsSetupRegistry.cpp
|
|
|
|
buildRunems:
|
|
!ifdef BAL_INTERFACE
|
|
!else
|
|
@echo +++ Creating $(MOZ_SRC)\mozilla\java\webclient\src\$(OBJDIR)\runem.bat. Use this to run the test browser.
|
|
@echo set PATH=$(MOZ_SRC)\mozilla\dist\$(OBJDIR)\bin;$(PATH) > .\$(OBJDIR)\runem.bat
|
|
@echo $(JAVA) -Djava.library.path=$(MOZ_SRC)\mozilla\dist\$(OBJDIR)\bin -classpath $(JAVAC_CLASSPATH) org.mozilla.webclient.test.EmbeddedMozilla $(MOZ_SRC)\mozilla\dist\$(OBJDIR)\bin %1% >> .\$(OBJDIR)\runem.bat
|
|
@echo +++ Creating $(MOZ_SRC)\mozilla\java\webclient\src\$(OBJDIR)\swingem.bat. Use this to run the swing based test browser.
|
|
@echo set PATH=$(MOZ_SRC)\mozilla\dist\$(OBJDIR)\bin;$(PATH) > .\$(OBJDIR)\swingem.bat
|
|
@echo $(JAVA) -Djava.library.path=$(MOZ_SRC)\mozilla\dist\$(OBJDIR)\bin -classpath $(JAVAC_CLASSPATH) org.mozilla.webclient.test.swing.SwingEmbeddedMozilla $(MOZ_SRC)\mozilla\dist\$(OBJDIR)\bin %1% >> .\$(OBJDIR)\swingem.bat
|
|
!endif
|
|
|
|
install:: $(DLL) buildRunems
|
|
$(MAKE_INSTALL) .\$(OBJDIR)\$(DLLNAME).dll $(DIST)\bin
|
|
$(MAKE_INSTALL) .\$(OBJDIR)\$(DLLNAME).lib $(DIST)\lib
|
|
|
|
clobber_all:: clobber
|
|
|
|
clobber::
|
|
rm -f $(DIST)\bin\$(DLLNAME).dll
|
|
rm -f BookmarksImpl.h
|
|
rm -f CurrentPageImpl.h
|
|
rm -f HistoryImpl.h
|
|
rm -f WrapperFactoryImpl.h
|
|
rm -f NavigationImpl.h
|
|
rm -f WindowControlImpl.h
|
|
rm -f NativeEventThread.h
|
|
rm -f RDFEnumeration.h
|
|
rm -f RDFTreeNode.h
|
|
rm -f ISupportsPeer.h
|
|
rm -f nsSetupRegistry.cpp
|
|
rm -f .\$(OBJDIR)\runem.bat
|
|
rm -f .\$(OBJDIR)\swingem.bat
|