Hi all,

I am a master student from China, my name is Peng Cui, as we know, Nebula
supplies much cool custom widget for Eclipse developers, i am one of the
beneficiaries. Now, I want to supplies a custom widget for Eclipse and
Nebula, so i post it here to see hear your voice.

vCard is the electronic business card. It is a powerful new means of
Personal Data Interchange (PDI) that is automating the traditional business
card.It has been widely used in Personal Information Manager (PIM),
electronic email application such as Microsoft Outlook and IBM Lotus notes,
Web Browser or telephone. If Eclipse supplies a Custom SWT widget to display
vCard, isn't it cool ? My project will do it.

In fact, i hold this project as a GSoC (http://socghop.appspot.com/) project
Eclipse, and i list my whole project proposal below. If any one is
interested in my project or have any advises or  want to mentor me, please
let me know, thank you :-)

------------------------------------------------Project
Proposal--------------------------------------------------------------------------

*Project Proposal Detailed Information*

vCard <http://www.imc.org/pdi/vcardoverview.html> automates the exchange of
personal information typically found on a traditional business card. At
present time,vCard is widely used in applications such as Internet mail,
voice mail, Web browsers, telephony applications, call centers, video
conferencing, PIMs (Personal Information Managers), PDAs (Personal Data
Assistants), pagers, fax, office equipment and smart cards. vCard
information goes way beyond simple text, and includes elements like
pictures, company logos, live Web addresses, and so on. It has following
features:

   - vCards carry vital directory information such as name, addresses
   (business, home, mailing, parcel), telephone numbers (home, business, fax,
   pager, cellular, ISDN, voice, data, video), email addresses and Internet
   URLs (Universal Resource Locators).


   - All vCards can also have graphics and multimedia including photographs,
   company logos, audio clips such as for name pronunciation
   - Geographic and time zone information in vCards let others know when to
   contact you.
   - Of course, vCards support multiple languages
   - The vCard spec is transport and operating system independent so you can
   have vCard-ready software on any computer
   - vCards are Internet friendly, standards based, and have wide industry
   support.

If we use Eclipse SWT/JFace to develop a application which has contacts info
management function, I think vCard supporting is necessary. But as we know,
Eclipse does not supplies any SWT/JFace components or widget to parse vCard
data or display vCard information. This project aims to implement a vCard
display custom SWT widget which is in keeping with vCard version 2.1
Specification <http://www.imc.org/pdi/pdiproddev.html> for Eclipse. The
whole project will implement the following functions:

   1. Construct a Java class to represent vCard, we call it JavavCard, this
   class has following mainly methods:
      - Communidate with othe file format such as CSV, it means it can
      import/export data info from/to CSV.
      - Get any property detail by proper name, we can get Java String
      property value such as Name or Email address etc, get Java Image property
      value such as Photo, get Java Sound property value such as vCard name
      pronunciation.
   2. Create a vCard information parser,we call it vCardParser, it has the
   following functions:
      - Parse vCard Identification Properties
      - Parse vCard Delivery Addressing Properties
      - Parse vCard Telecommunications Addressing Properties
      - Parse vCard Organizational Properties
      - Parse vCard Explanatory Properties
      - Parse vCard Security Properties
      - Parse vCard Miscellaneous Properties
   3. Create a custom widget to display JavavCard information, this widget
   has following features:
      - It is a SWT based custom widget, just like widgets in Eclipse Nebula
      project <http://www.eclipse.org/nebula/>;
      - Use different icons to indicate different properties in vCard, it
      has a default solution, but developer can change its default icons;
      - It will show all the properties in vCard, and has default layout
      solution,but developer can change its default layout solution,and decide
      which properties to display, which not.
      - It has changeable styles and overall look and feel, it has a default
      solution, but developer can change it to what he likes.

As we know,Eclipse Nebula is a place where different Eclipse-Projects and
Independent developers collaborate on building Custom SWT widgets and
reuseable UI-Components useable in UI-Applications built using SWT and
JFace. I will contribute this project to Nebula as a custom widget for
Eclipse developers.

*Background*

I have serveral years Eclipse plunge-in develop experience and know vCard
well, so i have confidence to finish this project well. But before i hold it
as a GSoC project, i ordered Eclipse open source mail list, discuss this
project in the mail list. Feedback from mail list told me that various
custom SWT/JFace widgets will help Eclipse developers largely, this
component has practical value,it is a great work. And then, i will start the
developing job,dicuss technology difficulites in Eclipse mail list and vCard
developer mail list.

*Deliverables*

   - Source code, achieved jars
   - Junit test case
   - Sample code, some demos
   - Design Document, UML document and JavaDoc API document

*Schedule*

   - March 29 - April 9: Submit my proposal, do some alter works if
   necessary
   - April 26 - May 23: Students get to know mentors, read documentation,
   get up to speed to begin working on their projects.
   - May 24 - May 31: Class JavavCard design and implement,finish data
   communication function with CSV
   - June 1 - June 7: Implement various getter methods of class
   JavavCard,including get string records, image records and voice records
   - June 8 - June 15: Implement vCard Identification Properties and
   Delivery Addressing Properties parse job
   - June 16 - June 22: Implement Telecommunications Addressing Properties
   and Organizational Properties parse job
   - June 23 - June 30: Implement Explanatory Properties and Security
   Properties parse job
   - July 1 - July 7: Implement the other Miscellaneous Properties parse job

   - July 8 - July 23: JavavCard information display custom widget design
   and coding job, finish a default display model
   - July 24 - July 31: Implement layout and properties customize functions
   for the widget
   - August 1 - August 8: Implement style, look and feel customize function
   for the widget
   - August 9 - August 15:Take a week to scrub code, write tests, improve
   documentation, etc.
   - August 16 - August 30:Submitting final evaluations and required code
   samples to Google

*Expectations*

I have rich Eclipse plunge-in develop experience, but i do not have rich
Eclipse SWT/JFace custom widget develop experience, i hope my mentor give me
some instructions or tell me what should i pay attention to.

*Contact Information*

I am a master student from Beijing,China. My name is Peng Cui, i am studying
in School of Information Engineering, University of Science and Technology
Beijing, and my major is Computer Science and Technology. My email is:
[email protected].

In my daily research jobs, i usually use some open source project, for
example, i use Eclipse as my Jave development environment and use Apache
Tomcat as my Web Application Server. Being a open source commiter is so cool
in my mind, because open source promote sofeware development in 21 Century,
it is a good thing and i love it.

I am familiar with Java language and use it to do some develop job since
2003. Eclipse is my Java development IDE, and i have finished some Eclipse
plunge-in projects during my daily research period.vCard plays a important
part in this project, i have payed much time to read vCard specification and
discuss it in vCard develop mail list, also i have got some back knowledge
about how to parse vCard information with Java.
--------------------------------------------------------------------
Best Regards

Peng Cui
_______________________________________________
nebula-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/nebula-dev

Reply via email to