Overview

Expose the Haiku API to Perl.

From the Google Summer of Code Application for this project:

  • Project title: "Expose the Haiku API to Perl"
  • List of project goals
    • Expose objects from various kits
    • Write documentation for each object exposed
    • Write demos for exposed objects
    • Write tutorials for users
  • Project description: This is an ongoing (although recently started) project; coding was started in March 2009 and will continue past the end of Summer of Code. The following phases have been defined for the project; the defined phases include the objects from the Application and Interface Kits, as well as the BFilePanel object from the Storage Kit. Each phase will include one or more demos and tutorials explaining each demo. Phase 1 should be complete before the GSoC start date, and phases 2 and 3 will be completed during GSoC. If coding goes more quickly than anticipated, work will begin on later phases.
    • Phase 1: Proof of Concept
      • Milestone A: "Hello World" window demo
      • Milestone B: "Click Me" button demo
    • Phase 2: Standard Controls
      • Milestone A: simple controls demo (box, checkbox, textcontrol, picture button)
      • Milestone B: scrolling textview demo
      • Milestone C: listview/outline listview demo
      • Milestone D: tabview demo
      • Milestone E: miscellaneous controls demo (slider, status bar, alert)
    • Phase 3: Menus
      • Milestone A: menus demo
    • Phase 4: Layout
      • Milestone A: layout demo
    • Phase 5: System Objects
      • Milestone A: simple text editor (with clipboard, cursor, font, printing, file selection, etc.)
    • Phase 6: Drag and Drop
      • Milestone A: drag-and-drop demo
    • Phase 7: Communication with other applications
      • Milestone A: running apps list demo
    • Phase 8: Base and utility classes for custom objects
      • Milestone A: custom class demo
    • Further phases will expose the other kits in an order to be determined by user demand.
  • Why do you want to work on this project?

This is a project I have already started; GSoC would give me the opportunity to work on it full-time.

I have been using GUI modules for Perl for many years; both platform-specific (such as Win32::GUI) and cross-platform (such as wxPerl). Since I plan to switch to Haiku as my main OS once R1 is released, I would feel the lack of such a tool for Haiku if it were not available.

While wxWidgets is great for cross-platform programming, I would prefer to be able to take full advantage of Haiku's native controls (rather than the limited subset wxWidgets and similar cross-platform tools provide) when working on Haiku-specific programs.

Furthermore, all the coding is being done in Haiku, which demonstrates that even at this early stage (pre-alpha), Haiku is stable and mature enough for this kind of development.

  • License: GPL v3
  • CIA: No
  • Other license: Artistic License
  • Commits mailing list: No

Issue tracking

View all issues