Tôi có một yêu cầu để hiển thị một chỉ báo trạng thái trong thanh trạng thái của một ứng dụng Eclipse. Tôi không thể đóng góp thông qua ApplicationWindowAdviser (một nhóm khác sở hữu sản phẩm cốt lõi), nhưng tôi cảm thấy chắc chắn rằng tôi có thể đóng góp thông qua một điểm mở rộng. Mặc dù nhiều googling, tôi không thể tìm thấy bất cứ điều gì mô tả làm thế nào để làm điều này.Đóng góp vào Thanh trạng thái/Cắt trong Eclipse RCP
6
A
Trả lời
1
8
Trong phần mở rộng org.eclipse.ui.menuContributions, sử dụng "toolbar: org.eclipse.ui.trim.status" làm locationURI. Bạn có thể đóng góp lệnh/điều khiển tùy chỉnh vào thanh trạng thái.
0
Thứ nhất, bổ sung thêm thanh trạng thái để application.e4xmi (Application> Windows và Dialogs> Trimmed Window> TrimBars> WindowTrim (Bottom)> Toolbar> Công cụ Control)
Tạo java lớp và đưa ra địa chỉ trong thanh công cụ (lớp uri).
Triển khai thanh trạng thái e4 khác với triển khai e3. Trong e4, bạn có thể sử dụng trình tổ chức sự kiện để gửi văn bản (thông tin) đến thanh trạng thái.
@Inject
private IEventBroker eventBroker;
private static final String STATUSBAR ="statusbar";
@Inject @Optional
public void getEvent(@UIEventTopic(STATUSBAR) String message) {
updateInterface(message);
}
@PostConstruct
public void createControls(Composite parent) {
.... \\ swt definitions e.g. label
}
public void updateInterface(String message)
{
try{
Display.getDefault().asyncExec(new Runnable() {
@Override
public void run() {
try{
label.setText(message);
}
catch(Exception exc){
System.out.println(exc);
}
}
});
}
catch(Exception exception){
System.out.println(exception);
}
}
Ngoài ra, đừng quên thêm eventbrokersender vào một lớp java khác.
@Inject
private IEventBroker eventBroker;
private static final String STATUSBAR ="statusbar";
eventBroker.send(STATUSBAR, "status bar test message..");