Opened 5 years ago

Last modified 4 years ago

#3394 new change

Factor out status bar into a separate class

Reported by: eric@… Assignee:
Priority: Unknown Milestone:
Module: Unknown Keywords:
Cc: Blocked By:
Blocking: #712, #3382, #3765 Platform: Unknown / Cross platform
Ready: no Confidential: no
Tester: Unknown Verified working: no
Review URL(s):

Description (last modified by eric@…)


CPluginClass is something of a god object. All of the code for the status bar icon and its associated menu is part of this class at present.

What to change

  • Extract all the status bar code into a separate class.
  • If possible, share a single status bar object between multiple instances of CPluginClass.
  • Ensure the life cycle of the new class is in harmony with CPluginClass
  • Define clear responsibilities for the new class and the remnant CPluginClass
    • The status bar class is responsible for correctly displaying its status relative to the current tab. It does not have responsibility for determining that status; it asks another class.

Change History (5)

comment:1 Changed 5 years ago by eric@…

  • Blocking 3382 added

This relates to issue #3382 to rationalize the life cycle of some of the user interface members of CPluginClass.

comment:2 Changed 5 years ago by eric@…

  • Blocking 712 added

This relates to #712, which is a problem with managing the display state of the icon. It would be possible to complete #712 without addressing the present issue, but only by making CPluginClass more of a god object. Thus this issue has been marked as blocking #712.

comment:3 Changed 5 years ago by eric@…

  • Description modified (diff)

comment:4 Changed 5 years ago by eric@…

  • Description modified (diff)

comment:5 Changed 4 years ago by eric@…

  • Blocking 3765 added
Note: See TracTickets for help on using tickets.