RCP 36

JFACE new Window의 다이얼로그 생성

독립창으로 다이얼로그 생성새로운 독립창에 dialog를 생성하고 싶은 경우에는 다음과 같이 설정한다. 예를들어 a 라는 다이얼로그를 생성할 때, parent Shell을 null 값을 전달하며 새로운 창에 다이얼로그가 생성된다. Dialog a = new Dialog(null);a.open(); 생성된 다이얼로그는 독립된 task bar에 아이콘을 가지게 된다. 다른 창보다 강제로 상위에 표시a.forceActive();a.forceFocus(); blocking 해제 방법a.setBlockOnOpen(false);

RCP/SWT & JFACE 2016.12.24

RCP workbench 글로벌 후크

글로벌 application의 키, 마우스 이벤트를 감지하기 위해서는 워크벤치에서 activeWorkbenchWindow의 shell에서 getdisplay().addfilter를 통해 등록을 해줘야 한다. addFilter(swt.keydown, new listener() {Public void handle(event e) { }} Shell에 있는 filter에 있는 리스너는 다른 위젯 리스너에 도달하기전에 모든 이벤트를 먼저 필터한다. 그렇기 때문에 해당 이벤트 필터는 다른 이벤트를 못가게 막을 수도 있고 이벤트 사이에 필드를 지정할 수 있다. 그래서 event 필터는 강력하지만 위험하다. 그래서 잘 하지않는다.

RCP/RCP 2016.12.24

shell Listener

shell에 리스너를 추가하여 shell이 최소화 되었을 때, 다시 최대화 되었을 때, 활성화 됬을 때 종료됬을 때 등 shell 자체의 이벤트에 대한 리스너를 설정할 수 있다. shell.addShellListener(new ShellListener() { public void shellActivated(ShellEvent event) { System.out.println("activate"); } public void shellClosed(ShellEvent arg0) { System.out.println("close"); } public void shellDeactivated(ShellEvent arg0) { } public void shellDeiconified(ShellEvent arg0) { ..

RCP/SWT & JFACE 2016.12.24

rcp 구조 및 기초

WorkbenchAdvisor( 대상 선정)WorkbenchAdvisor는 애플리케이션 생명 주기의 각 단계전에 작업을 처리한다.어떻게 그리고 누구를 그릴지 설정한다. Public class ExampleAdvisor extends WorkbenchAdvisor{Public String getInitialWindowPerspectiveID() {} Public void preWindow(IWorkbenchWindowConfigurer configurer) // 워크 벤치 외양에 대한 설정{Configurer.setText("test");Configurer.setInitialSize(new Point(10,10)_); } } preStartup() 시작전에 나타낼 부분 사용prewindowOpen() 윈도..

RCP/RCP 2016.12.24

대용량 테이블 조회가 가능한 Nattable 예제 실행 방법

TableViewer로는 대용량 데이터를 가져오는데 한계가 있다. 그래서 이클립스에서 제공하는 nattable을 사용하면 조금 더 빠르게 대용량 데이터를 가져올 수 있다. 그 nattable의 예제와 소스코드를 볼 수 있는 방법을 소개한다. 첨부된 파일 두개를 모두 다운 받고 cmd 창에서 다음 명령어를 실행시킨다. java -cp org.eclipse.swt.win32.win32.x86_64-4.3.jar;NatTableExamples-0.9.0.jar org.eclipse.nebula.widgets.nattable.examples.NatTableExamples 관련 주소https://eclipse.org/nattable/documentation.php?page=getting_started

RCP/SWT & JFACE 2016.12.24

OSGI & Platform

OSGI?다양한 이클립스의 런타임 매커니즘을 하나로 묶어서 사용할 수 있도록 만든 런타임 모델이 OSGI 런타임 모델이다. Platform현재 실행중인 이클립스 환경에 대한 정보를 제공한다. 이 클래스를 사용해 설치되어 있는 플러그인(번들),. 확장, 확장점, 명령행 인자 , 작업관리자 등의 정보를 얻을 수 있다.Ex ) getProduct() 현재 실행 중인 이클립스 제품 정보를 반환한다.

RCP/SWT & JFACE 2016.12.24