Tools Improvement

ESUG-Logo The project has been selected for the SummerTalk action by the European Smalltalk User Group.

Table of contents


Presentation

Abstract

This page will gather all information about the SummerTalk project named "Tools Improvement" made by Benjamin Van Ryseghem supervised by St├ęphane Ducasse and Alain Plantec.

The purpose is to improve some editing tools and to also improve some widgets.

PluggableListMorph

About this basic widget, Benjamin has gathered the subclass hierarchy and merged the subclass behaviors to have a single entry point which can be dynamically changed

Benjamin also:

  • adds a mechanism to separate the searched element from the selected element
  • adds a mechanism to defined the background of each items
  • adds a mechanism to add separators between specified elements
  • improves the way multi columns lists are rendered
  • improves the drag/drop mechanism
  • improves the multiselection
  • clean the source code

Other improvements made by Benjamin

  • Implement a modular way to handle keys pressed in a morph (EventHandler)
  • Create new widgets (Ticklist, SwitchingTree ...)
  • Implementation of a new test runner

Nautilus

Nautilus is a new code browser mainly designed to browse RPackages and Ring objects. Image

More info could be found here.

Few numbers

  • over 55 fixes for Pharo 1.3/Pharo 1.4
  • over 150 classes impacted
  • 6 months of work