Over the summer, our GSOC student Akila Wajirasena gave a wonderful overhaul to our OpenOffice plugin with many improvements, including a slick new user interface, support for public domain tools, and many other cool things. Recently he contacted us having looked into whether or not that plugin works with LibreOffice, a fork of OpenOffice run by the Document Foundation, which has gathered significant interest from certain areas of the free and open source software world recently.
The good news? It seems that it works just fine out of the box:
We’ve only tested it on some limited systems though, so if you do have some problems, please report them here.
We also included some instructions previously on how to fix an issue on GNU/Linux systems where the menu would become inaccessible, and you had to install via the command line to fix it. That seems like it may be fixed in LibreOffice.
One concern though is that LibreOffice is trying to use less amounts of Java or completely abandon Java altogether. Probably Java extensions will be supported some way in the future regardless, but it may be something to keep our eye on.
Thanks to Akila again for his work not only on the plugin enhancements but also into looking into this with LibreOffice.1 Comment »
Coding period of GSoC 2010 officially ended 16th. I was able to release the new stable version of the OpenOffice Plug-in on that day. So it’s time to have a look back on what I did for the past 4+ months and discuss about the issues I met.
The proposal for the development had following tasks.
- Supporting OpenOffice.org 3.0 – 3.1.
- Adding support for CC0.
- Adding support for Draw.
- User Interface Improvements.
- Adding references to important pages like FAQ and About.
- Provide help around what each option means (“what is Share Alike”).
- Display license information when opening CC licensed documents.
- Other improvements for the UI.
- Speed up the first time license insertion process.
- Support for Internationalization.
I started working on the project since mid April. Moving the code base to OpenOffice.org 3.1 SDK was easy. I also updated the other libraries to their newest version. Then I tried to implement the Draw support. I found that implementation for Draw should be same as the implementation for Impress. So adding Draw support was fairly easy, but I had some problem with the page sizes. The available code did not conceder about the page sizes and the margins. The next problem was; the visible license notice was added to the master page of the Draw/Impress document like a background of an Impress document. Therefore the user can not arrange the notice as he wants.
While I fixing those issues, Nathan asked me to have a look at the Flickr Image Re-Use plug-in. Then I started look at it and integrating its functionality to the CC plug-in. I had to update the API wrappers for the Flickr plug-in to make it working. Then I started using that code to add image reuse support for Open Clip Art. I also improved the loading time of the Flickr dialog.
Then I started RDF adding RDF Metadata in the document. Currently this works only in Writer documents, because OpenOffice.org currently supports adding RDF only for writer documents. Then I get back to improve the image insertion I added Wikimedia Commons and Picasa for that. So the users can now add images using four well known image sharing sites; Flickr, Picasa, Wikimedia Commons and Open Clip Art.
The next thing I did is the UI improvement and adding public domain tools. Those two things were carried in parallel. After discussing with my mentors Nathan and Christopher we decided to use a tabbed window. This will make the licensing less confusing and easy to use.
Next was the internationalization phase. I used the existing i18n repository to add some translations to the licensing dialog, but still there are new strings available in the dialog that should be added to Transifex. Hope those new strings will added in the future. These translations files (.po files) need to be converted to Java resource bundles (internationalization method used in Java). The source folder includes a script for this, and the instructions can be found in the README.
For the last few weeks I was testing and trying to find out the issues related to the plug-in.
Though the new version released as a stable release, there are some problems which actually out of our control. This plug-in will not work in Mac OS Leopard where Java 64bit is the default; this is a known issue in OpenOffice.org. In additions to that, Mac OS X also have a problem in displaying AWT windows (issue 92926). I am still trying to see whether there is anything I can do.
The next issue is with Linux. We tested the plug-in in Debian and Ubuntu, in both cases if the plug-in is installed through the extension manager, the menus either become gray or they will not be available at all. This issue is most probably a problem in 9.10 and 10.04 because the plug-in worked well in Ubuntu 9.04 and Windows. I am glad to say that I have found a workaround for this. If the plug-in installed using the terminal there will not be any problem. Users can use both CLI and GUI versions of the unopkg (Extension manager).
To use the CLI version run
/usr/lib/openoffice/program/unopkg -f ccooo.oxt
and for the GUI version use
/usr/lib/openoffice/program/unopkg gui -f ccooo.oxt
Actually this is not an issue of the plug-in itself it should be a problem with Ubuntu. Similar plug-ins likeOoo2GDand Open Cards are also affected by this problem.
I tested this plug-in in Windows and Linux in both x86 and x86-64 versions and it work without any problem (in Linux with the workaround).
Windows users can simply install it by double clicking the plug-in. Ubuntu (may be other Linux users also) need to install it trough the terminal using
/usr/lib/openoffice/program/unopkg gui -f ccooo.oxt
/usr/lib/openoffice/program/unopkg -f ccooo.oxt
The source code of the plug-in can be found at http://code.creativecommons.org/viewsvn/ccooo/branches/akila-gsoc-2010/
Comments and Feedbacks
While I was searching the Internet to find more issues related to the plug-in, I found some blog posts and comments about the plug-in. I have listed them below.
All of these feedbacks were good, except the Mac OS X issue. I am trying to fix it as soon as possible.
To add new feedbacks, users can use the extension page at extension repository. Still there can be issues related to the plug-in. Those issues and feature requests can be added to the CC issues list.
Nathan suggested a feature for Flickr; to extract add images from a given URL. So users can copy and paste the URL to OpenOffice.org and the plug-in will automatically download the image and add licensing data also. This can be used for others services also.
In addition to that localization should be completed.
This is time time to thank all the people who helped me in achieving this. I should thank the following people specially for helping me;
- Nathan Yergler: for helping me with good suggestions in the pre GSoC period and in the community bonding period.
- Christopher Allan Webber: for mentoring me in this process and for all the good suggestions he gave.
- Nathan Kinkade: for helping with the SVN issues (yes I had some :)).
- Alex Roberts and Greg Grossmeier: for their valuable suggestions in making the GUI.
Now it is the time to rip off the “test” part from the plug-in name “Creative Commons Licensing (test)” :). The plug-in was released for beta testing since May 2010 and it was downloaded more than 400 times. But making a perfect program is impossible thing. So I appreciate if the users can report any issues and suggestions as I mentioned in the Feedback section. I will always try to fix/implement them.
More information about the plug-in and the screen shots are available in the wiki page.6 Comments »
According to the schedule for the past two weeks I have been working on adding internationalization (i18n) support for the OpenOffice plug-in. I have completed this task successfully and now the plug-in uses some existing translations from the transifex. Lets have a look at the internationalization process.
The plug-in is developed using Java. Java supports internationalization using resource bundles. Resource bundle is the file that contains locale-specific data instead of the code itself, therefore making the code locale independent. There are two types of resource bundles .properties files and .class files. The .properties format is a text file that can be edited directly like a PO file, but this does not support plural forms. On the other hand .class format is compiled from .java source code and can support plural forms through the gnu.gettext.GettextResource API.
Here I have used .class format for resource bundle because the plural forms can be used, but I am not using gnu.gettext.GettextResource API because there is no need of plural forms at this point (Extracting new strings for internationalization is not completed yet).
I have added two shell scripts to convert PO files to resource bundle and extract new strings. You can run them separately or use them when compiling the project. To use them when compiling uncomment line 75-82 of the build.xml, but conversion will take about 3 minutes to complete, therefore it is better to use the scripts separately only when you need add a new translation or extract new strings.
Here is a screen shot of the GUI with some Spanish translated strings (I choose Spanish because of this comment).No Comments »
For the last two weeks I was focusing on the User Interface and the Picasa support. At first lets look at the new changes to the license insertion dialog. I have changed the UI to something similar to the license choosing page in Creative Commons website. The new UI is quite simple to understand and it will not confuse the user. I have also included the tips about each choice. Currently you can see them when you move your mouse over the “i” image in the right side of each choice. The tip is displayed in a single line and that cannot be changed. I am going to add a small dialog for each of the tip which will activate when you click the “i” for the choice.
The next thing I did in the past two week was Picasa support for the insert image menu. Now you can add creative commons licensed images. Currently you cannot select the images by license and the image sizes when inserting the image to the document. I am hopeing to add this feature very soon.No Comments »
I was selected for the Google Summer of Code for the above project with the guidance from Christopher Webber & Nathan Yergler. I am a 22 year old student from University of Moratuwa Sri Lanka where I am doing my BSc Engineering degree on Electronic & Telecommunication. What I am doing in this project is updating the OpenOffice plugin developed by Cassio Melo in GSoC 2007.
I have been working on the project since last April. I was able to add many requested features and some new ideas by me.
So lets look at the progress of the add-on and those “New Features”.
Support for OpenOffice 3.1, 3.2
The add on currently in the extension repository only has support for the OpenOffce 2 version. I recompiled the add on to make it work in OpenOffice 3.1, 3.2
Support for adding images from Flickr, Open Clip Art and Wikimedia Commons.
In 2008 Summer of Code Mihai Husleag made the Flickr Image Re-Use add on. I used this code to add this feature. Now you can search images in Flickr, Open Clip Art and Wikimedia Commons and add them to your document. The license and attribution data will also be added with the image. This works on Writer Calc Impress and Draw.
Support for OpenOffice Draw.
This task was included in developer challenges. This is the first task that I completed in the project. Now you can add visible license statement and the metadata to a draw document.
Showing a notification when opening CC licensed documents.
Speed Up first time license insertion.
Now the RDF database will load to memory when open office starts but this will not freeze OpenOffice because it is done in a separate thread. So the initial license insertion delay which is due to RDF loading will no longer be there.
Auto update visible license notice when license changes.
In the previous version this worked only for writer documents. Now Calc, Impress and Draw also have this feature.
Adding RDF meta data.
This only works for Writer. Other OpenOffice applications doesn’t support this currently.
This is what I’ve done so far. You can get the add on at http://extensions.services.openoffice.org/en/project/ccoootest and the check the source code at: http://code.creativecommons.org/viewsvn/ccooo/branches/akila-gsoc-2010/
If you have any suggestions about this project (new functionalities, things you don’t like, etc) feel free to leave a comment. And if you found any bugs please let me know.3 Comments »
I’ve been working on the GSoC 2009 project, where I’m working on certain updates to the existing Creative Commons Add-in for OpenOffice.org. This project is mentored by Nathan Yergler.
The main goals for this project is to provide the following updates to the existing plugin.
- Update the codebase to the OOo 3 SDK
- The license selection UI could be refined to provide help around what each option means (”what is Share Alike”).
- Display license information when opening CC licensed documents
- Internationalization – prepare the code for translation and write the scripts to integrate PO files prepared by translators
- Support for OOo Draw
- Add support for CC0
- Make a release incorporating Flickr Image Re-Use for OpenOffice.org.
As there are many distinct tasks, I’m working on complete the most I can. I have been struggling a bit in the past couple of weeks with my progress, but I’m now bouncing back and coming back to track.
I hope I’ll be able to present the CC community with an updated version of the Add-in at the end of the project completion.No Comments »
Since my last article new functionalities were implemented :
- more results per page (16 to be more exactly)
- an image is inserted if you double click on it(previous was on a single click)
- i add it the functionality for Impress and Calc
- fixed some bugs related to search
Unfortunately i have a problem with the popup menu on right click menu. It seems if that if set the location of the popup on the place where the right click happens, the popup indeed will appear but only for a moment. This happens not for all those 16 results, but for lets say more than half.
Now i found some settings and at this moment the popup will appear for each result, unfortunately the location where the popup appears is not exactly on the result (slightly above). I have to work more on this.
Some screenshots :
Download extension (right click and save as)4 Comments »
Never trust a programmer when he gives you a date for something to be done . Thats what i did in my last article (2 weeks i think i said then) and here we are a month later.
What has be done since my last article :
- right click on an result (image) will show you a popup menu with the available sizes on Flickr server
- left click on a result will insert directly in Writer the image with size medium as default
- once the image is inserted some text will be added beside the image(title , link to the image, license and link to the license)
- i improved searching and the way the image is adding into Writer
- i added a more friendly interface when you want to search over license (similar with advanced search on Flickr website)
- added a previous button to see previous results if needed
- if you insert a image, when you open again the extension the previous search will be done immediately ( on the exact the same position if you used the previous or next buttons)
- about searching : we can have multiple tags (separated by space : ” “) and the relation between them is AND . also the results are ordered by interestingness
- a progress bar was added
- the extension after installation can be found here : Insert \ Picture \ From Flickr …
Some screenshots :
Also i would to add that this extension, at this momment, works only in Writer.
Download (right click and save as)
Any suggestions or remarks are greatly appreciated.7 Comments »
I`m happy to announce that i succeeded in doing, in a basic manner, all the 3 requirements for this project : search photos by tags, by license and to insert one photo into a document.
Here you have a screenshot made after a search was done on tag mountains and license Attribution License :
Also here you have the screenshot with the photo inserted into a document . As you can see the image was inserted with a default size, but this will be changed later.
What i`ll try to do next :
- add menus to each image with the available sizes
- improve the searching
- inserting the image into the document with the selected size
- adding the license into the document
- more testing
I hope, that in less than 2 weeks i will make available a good version.
Any comments or suggestions are well appreciated.1 Comment »