Re: embed abiword into java app

From: jeremyd@ctc.net
Date: Tue Nov 19 2002 - 10:40:23 EST

  • Next message: Robert: "Re: problem with abiword-1.1.2 and recent gnome"

    > From: Hubert Figuiere <hfiguiere@teaser.fr>
    > Date: 2002/11/19 Tue AM 08:59:19 EST
    > To: David Cypers <dcyjcs@mail.be>
    > CC: abiword-user@abisource.com
    > Subject: Re: embed abiword into java app
    >
    >
    > On mardi, nov 19, 2002, at 14:26 Europe/Paris, David Cypers wrote:
    >
    > > Hello
    > >
    > > I need to embed AbiWord into a java application. Since JDK1.3, any
    > > native UI component can be placed on an AWT Canvas. This is done by
    > > overriding the java method paint(..) by a native implementation, which
    > > renders the native UI-component.
    > >
    > > Can somebody tell me if
    > >
    > > a) it is possible to wrap AbiWord into a DLL (and how?)
    >

    sorta - its possible [with some work] to compile
    AbiWord as a DLL; you may wish to optionally create a
    DllMain, though it should not call AP_Win32App::WinMain
    (or a suitable replacement function) (you should do that
    after the DLL variant is loaded), and adjust the
    Makefile[s] (or MSVC6 project) to build as a DLL instead
    of executable. You may need to add some hook functions
    or whatever, depending on exactly what functionality you
    require.

    > Some people (OEOne.com) have done abimoz, an AbiWord embedded into a
    > Mozilla plug-in.

    Hmm, did this work on Windows? I will have to have a look
    at it someday I guess.

    >
    > > b) what the main() entry point for the application is

    main (or WinMain as it is) may be found in
    abi/src/wp/main/win/Win32Main.cpp
    however, this just calls AP_Win32App::WinMain found in
    abi/src/wp/ap/win/ap_Win32App.cpp

    > > c) how you initiate the AbiWord GUI. (so I can override the paint(..)
    > > method with a call to that code
    >
    > Look at that the code mentionned above.
    > http://abimoz.mozdev.org/

    Within Abiword you probably want to have a look at
    AP_Win32Frame (and its super classes) as this creates
    the visible window; though there are many other
    classes that handle various aspects including the
    keyboard, the menu, etc. Though looking at abimoz
    as Hub mentioned will probably give you a better
    starting point.

    >
    > > I also have one major drawback, I'm not familiar with C++ and
    > > make-files, and I can't find any make's for the Win32 environment (I
    > > develop on a win2k machine).
    > >
    >
    > Make should work on Windows to.
    > Otherwise you have a module called MSVC6 that provide VC6 project file
    > if you really want that.
    >

    cd into abi and you will see Makefile (the same one
    is used for all platforms), we do not use nmake. I
    recommend you work with cvs head (others may disagree),
    you will want to look in abi/docs/build/ and read the
    info there, you may also wish to check out my site
    http://abiword.pchasm.org/source/ which has similar
    info for compiling AbiWord on Windows and should you
    choose the makefile approach, the minimal Cygwin tools
    you will require [for the head branch].

    >
    > Hub
    >

    As a side note, you may wish to switch to abiword-dev.

    If you need any help, let me know and I will do my
    best to help you (though I'm spread a bit thin amongst
    the many projects I'm working on in my spare time;
    I'm familiar with Java, C++, and building AbiWord
    on Windows :-)

    Jeremy Davis
    jeremyd@computer.org

    -----------------------------------------------
    To unsubscribe from this list, send a message to
    abiword-user-request@abisource.com with the word
    unsubscribe in the message body.



    This archive was generated by hypermail 2.1.4 : Tue Nov 19 2002 - 10:41:08 EST