Skip to content
  • daniel_e's avatar
    New files, implementing class Controller and class ControlItem. · b241a836
    daniel_e authored
    * src/controller.{cc,h}: New files, implementing class Controller
    and class ControlItem.  ControlItem maintains an arbitrary number
    of activation sources, and controls the sensitivity state of an
    arbitrary number of widgets too.  Controller centralizes all of
    the ControlItems and provides create() functions for all pure
    control widgets in regexxer.  Also, there's ControlGroup which can
    be used to set the sensitivity of several widgets at once.
    
    All this stuff became necessary due to the proposed addition of
    menus.  Getting the sensitivity of all widgets right was already
    quite complex.  After the integration of menus the old code would
    have reached a critical mass.
    
    * src/imagebutton.{cc,h}: New files, containing ImageButton and
    ImageLabelButton that were previously in mainwindow.cc.  We need
    them in controller.cc now too.
    
    * src/Makefile.am (regexxer_SOURCES): Add new files.
    
    * src/mainwindow.{cc,h}: Integrate the new Controller concept and
    get rid of the obsolete cruft.  We're now below 1000 lines again.
    b241a836