필요한 액션을 구현하기 위해서 action클래스를 상속받아서 구현한다.
Action 클래스의 메소드
Run() - action에 해당하는 이벤트 처리 수행
Action() - 디폴트 생성자
Action(String, ImageDescriptor) - text 필드를 생성하고 이미지를 action에 연결하는 생성자
Action(String, int) - TEXT와 STYLE 필드를 설정하는 생성자.
ImageDescriptor 객체는 이미지가 아니고 이미지를 생성하기 위해 필요한 정보를 가진 객체이다.
getStyle() - STYLE 필드를 반환한다.
setEnabled(boolean) - ENABLED 필드를 설정한다.
getEnabled() - ENABLED 필드를 반환한다.
setChecked(boolean) - CHECKED 필드를 설정한다.
isChecked(void) - CHECKED 필드를 반환한다.
setAccelerator(int) - 키 코드를 Action의 단축키로 설정 //해당 액션에 단축키를 설정하는 부분
getAccelerator() // Action의 단축키를 위한 키 코드 반환
convertAcclerator(int) //단축키를 문자열로 변환
convertAccelerator(String) // 문자열을 단축키로 변환
removeAcceleratorKey(String) // 단축키를 문자열에서 제거
findKeyCode(String) // 키 이름을 SWT 키 코드로 변환
findKeyString(int) // 키 코드를 키 이름으로 변환
findModifier(String) // 기능키 이름을 기능키 코드로 변환
findModifierString(int) // 기능키 코드를 기능키 이름으로 변환
addPropertyChangeListener(IPropertyChangeListener) // Action과 프로퍼티 변경 리스너를 연결한다.
removePropertyChangeListener(IPropertyChangeListener) // Action과 프로퍼티 변경 리스너를 제거한다.
firePropertyChange(Event) // 프로퍼티 변경 이벤트를 발생시킨다.
firePropertyChange(String, Object, Object) // 주어진 객체에 따라 프로퍼티 변경 이벤트를 발생시킨다.
//////////HelpListener은 컴포넌트와 관련한 정보를 획득하고자 하는 사용자 의도를 처리한다.
setHelpListener(HelpListener) // Action에 도움 리스너를 연결한다.
getHelpListener() //action에서 연결된 도움 리스너를 반환한다.
setID, setActionDefinitionID(string) //Action 식별자를 설정한다.
setMenuCreator(IMenuCreator) // action을 위한 메뉴 생성자를 설정한다.
예제)
public class SlipViewDataExportWithExcel extends
Action {
private static final String ID = "com.wedul.ui.slip.actions.SlipViewDealExcelExportAction";
public SlipViewDataExportWithExcel() {
setId(ID);
setText(Message.msgDealExcelExportLabel);
setToolTipText(Message.msgDealExcelExportLabel);
setImageDescriptor(UiPlugin.getImageDescriptor(IImageKeys.DEAL_EXCEL));
}
@Override
public void run() {
IWorkbenchPage activePage = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
SlipView currSlipview = (SlipView) activePage.findView(SlipView.ID);
ExcelExportActionNotification notification = new ExcelExportActionNotification(currSlipview.getTableViewer(), currSlipview.getColumnHeader(), currSlipview.getInputData());
SlipViewProcessHandler.getInstance().process(notification);
}
}
'RCP > SWT & JFACE' 카테고리의 다른 글
RCP 프레임워크 프로젝트의 플러그인 클래스 (0) | 2016.12.24 |
---|---|
Menifest 파일 설명 (0) | 2016.12.24 |
rcp프레임워크의 shell객체의 이벤트 처리 설명 (0) | 2016.12.24 |
event doit 설명 (0) | 2016.12.24 |
JFace TreeViewer설명 (0) | 2016.12.24 |