Я использую envisage workbance, и я хочу получить сервис в Handler. В функции _tcp_send_changed
как я могу получить услуги. В плагине есть self.application.get_service(....)
, но вот как я могу до них добраться?Получение услуг в обработчике
ОБНОВЛЕНО
Это мой взгляд
class MCLidarGUIView(HasTraits):
traits_ui_view = View(
VGroup(
HGroup(
Item('lidar_list',
show_label = False,
editor = TabularEditor(
show_titles = False,
selected = 'selected',
editable = False,
multi_select = True,
adapter = LidarAdapter()
),
),
),
Item(
"lidars_command"
),
HGroup(
Item('handler.tcp_send',
show_label = False,
editor = ButtonEditor(label = "TCP:Send")
),
)
),
id = 'forwind.lidarapi.giuview',
resizable = True,
handler = MCLidarActions()
)
lidar_list = [LidarObject(lidar_name = "No Connected Lidar")]
lidars_command = ''
и это мой обработчик:
class MCLidarActions(Handler):
tcp_send = Event
def object__updated_changed(self, info):
print info;
pass;
def _tcp_send_changed(self):
print(" info")
Спасибо за помощь. Это то, что я искал. –