블로그 이미지
올해목표 // 10월 어학연수 떠나자~ 자수씨

카테고리

전체글 (1457)
Brand New! (28)
주절주절 (213)
MOT (11)
해외쇼핑 (49)
쇼핑노트 (150)
취미생활 (94)
iPhone (4)
Eclipse (121)
Google (83)
Spring (31)
JAVA (176)
JavaScript (59)
WEB (49)
Database (20)
OS (26)
Tools (8)
Tips (26)
IT정보 (1)
Book (21)
Programming (37)
외부행사 (43)
주변인들 (17)
여행노트 (60)
학교생활 (30)
회사생활 (52)
사회생활 (5)
외국어공부 (12)
잡동사니 (30)
Total
Today
Yesterday
 
03-29 11:30
 

달력

« » 2024.3
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
 

최근에 올라온 글

최근에 달린 댓글



예전에 묵혀놨던 RCP 프로그램을 옵션에 따라 다르게 구동하도록 만들어야 했습니다.

작년에도 이 문제 때문에 방법을 찾아보았지만 해결을 하지 못했습니다.

우연치 않게 eclipse.ini 을 보다가 방법을 찾아냈습니다.


해당 RCP 의 ini 파일에 다음과 같은 옵션을 추가해주면 됩니다.
-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.0.v20100503

-vmargs
-Dproduct.version=3.1


-vmargs 아래에 VM Arguments 를 정의해주면 됩니다. 실제로 사용할 때는 아래와 같이 사용합니다.

String version = System.getProperty("product.version");



시간이 흐르면 해결되는 것들이 많은 것 같습니다.

Posted by 자수씨
, |

방향키로 크기와 위치를 제어해보려고 여러 사이트를 뒤져보았으나, 속 시원한 레퍼런스를 찾기 어려워서... 그냥 마구잡이로 만들었습니다. GEF 구조를 더 잘 알았으면 EditPolicy 도 이용했을텐데... 아직 거기까지 레벨은 안되서...


GEF 는 커맨드 단위로 변경을 처리합니다. 키보드 처리를 위해서는 별도의 Command 클래스를 생성합니다.

ArrowKeyChangeLayoutCommand.java



키보드 입력을 처리하는 GraphicalViewerKeyHandler 를 상속받아 Command 를 생성하는 별도의 KeyHandler 클래스를 생성합니다.

FormWizardArrowKeyHandler.java




GraphicalEditor 를 초기화 하는 부분에 아래와 같이 설정합니다.

GraphicalViewer viewer = getGraphicalViewer();
viewer.setKeyHandler(new FormWizardArrowKeyHandler(viewer, getSite().getSelectionProvider(), getCommandStack()));


GraphicalViewer 에서 Figure 를 선택하고 방향키를 누르면 위치가 이동되며, SHIFT 키를 누르고 방향키를 누르면 크기가 조절됩니다.

예전부터 묵혀두었던 문제를 처리...

Posted by 자수씨
, |

RCP에서 Dialog 사용법

Eclipse/RCP / 2010. 10. 12. 16:53


단, AbstractHandler 에서 사용하는 경우가 아니라면 Shell 객체는 아래와 같이 참조합니다.


참고자료
http://www.vogella.de/articles/EclipseDialogs/article.html

Posted by 자수씨
, |

일반적으로 GEF 에서 EditPart 에 EditPolicy.LAYOUT_ROLE 로 editpolicy 를 install 하게 됩니다.


이렇게 처리할 경우 생성이나 이동, 리사이징에는 별 무리 없이 사용할 수 있을 것이라 생각하였으나 한가지 문제가 있었습니다. 다른 자식 피규어와 겹칠경우 정상적으로 이동이 되지 않는 것이었습니다. LAYOUT_ROLE 로는 다른 자식 피규어 위에서 이동하는 것에 대한 이벤트를 잡지 않는 것으로 파악이 되었습니다. 그래서 조금 찾아보니 될 것만 같은 것이 있어서 한번 수정한 후 실행을 해보았습니다.



그냥 한번 해보았을 뿐인데... 원하는 결과가 나와버렸습니다. 그래서 구글에서 좀 찾아보니 아래와 같은 자료가 있었습니다.
Because of the relationship between handles and layouts, it is recommended that the PRIMARY_DRAG_ROLE editpolicy be installed by the parent's LayoutEditPolicy, which defines abstract methods for this purpose. If a container changes layout managers during editing, typically the layout policy gets swapped with one for the new layout manager. The new policy then replaces the stalePRIMARY_DRAG_ROLE policies on each child.

무신 말씀을 하시는지는 정확하게 파악을 하지 못하였으나 잘 돌아가주시니 감사할 따름입니다.


뭐 해결했다는게 중요한게 아닙니까 하하하하;;;;





Posted by 자수씨
, |

http://cafe.naver.com/eclipseplugin/2882
위의 글을 읽고서 현재 만들고 있는 RCP 의 로그인 화면을 바꾸고자 시도를 해보았습니다.






이런 상태로 실행했더니, 털썩... 안됩니다.

그래서 product 파일을 열어서 Splash 탭을 확인해보았습니다.






그런후 product 파일로 실행을 하면 아래와 같이 잘 나옵니다.





위의 화면 레이아웃을 바꾸려면 아래 소스를 수정하면 됩니다.


_M#]

하악... 집에가서 수정해야지...



Posted by 자수씨
, |

RCP 를 개발하고 Product 로 배포한 후에 update site 에 새로운 버전을 올리고 테스트를 하려고 하는데
아래와 같은 오류가 나왔습니다.




엥;;; 머지 하면서 자세히 들여다보니 license 와 관련이 있을 것 같아서 feature.xml 의 Infomation 탭에 있는
것을 살짝 수정해 보았습니다. (일단 그게 의심스러워서...)




다시 update site 를 build 하니 잘 되는 군요~




음... 이런 문제는 해결방법 찾기도 힘들겠네요~  여튼 쉽게 해결해서 다행입니다.!!!




Posted by 자수씨
, |

회사 프로젝트로 만든 RCP Application 을 배포해야 할 시간이 다가왔습니다.
(팀장님이 보여달라는...)

일단 간단한 절차만 정리하겠습니다.
기회가 된다면 스크린샷과 함께... (요즘 좀 귀차니즘에 빠졌습니다... 업무가 빡셔서...)




Posted by 자수씨
, |

최근에 하는 업무가 RCP 로 어플리케이션 개발을 하는 것과 gwt-ext 에서 ui 페이지를 구성하는 작업을 하고 있습니다. 하면서 느끼는 점은 RCP 에서 Action 을 사용하면 이벤트에 대한 재사용이 편한 것과는 달리 gwt-ext 는 정리가 되지 않은 것 같습니다. 

최근 viewer 쪽도 gwt-ext 에서 비슷하게 사용할 수 있는 방법을 찾고 일부 적용해보고 있습니다. Action 쪽도 정확하게 컨버팅은 할 수는 없을지라도 비슷하게 만들어 놓으면 RCP 와 gwt-ext 작업을 병행하는데도 편해질 것 같습니다.

그 전에 jface 를 재대로 이해하지 못한다면... 저만의 라이브러리가 되버릴수도....





Posted by 자수씨
, |

FCKEditor for RCP

Eclipse/Plug-ins / 2008. 11. 16. 15:22
[원본문서]  http://vicki.springnote.com/pages/2106692

FCKEditor for RCP

Vicki Yi

Version 0.1 Copyright ⓒ 2008 Vicki Yi

16.11.2008


 

요약

이 문서는 Rich Client Platform (이하 RCP) 에서 FCKEditor 를 이용하여 HTML 문서를 작성할 수 있는 번들에 대한 소개와 사용법을 설명합니다.

 

SWT 에서 제공하는 StyledText 위짓의 텍스트를 HTML로 변환하기에는 추가적인 작업이 많이 필요하기 때문에 이클립스의 EPF 프로젝트의 RichText의 소스를 참고하여 FCKEditor 를 간단하게 사용할 수 있도록 구현을 하였습니다. (FCKEditor 의 라이센스는 해당문서를 참조하시기 바랍니다.)

 

설치하기

테스트환경
  • Eclipse: Ganymede (3.4)
  • JDK: 1.6.0_07
  • Platform: Windows XP

 

설치

아래 참고자료의 kr.co.vicki.plugins.fckeditor.zip 를 내려받아 이클립스 설치 디렉토리에 압축을 풀고 이클립스를 재시작합니다.

해당 플러그인은 다음 플러그인들을 필요로 합니다.

  • org.eclipse.core.runtime
  • org.eclipse.ui
  • com.ibm.icu

 

사용법
  1. 사용하는 플러그인이나 RCP에 Dependencies 목록에 kr.co.vicki.plugins.fckeditor 를 추가합니다.

    1.png

      [그림 1] plugin.xml 의 Dependencies 탭   

     

  2. 해당 플러그인이나 RCP를 실행시키고 Show View 를 통해 FCKEditor Tester View 를 선택합니다.

      2.png

      [그림 2] Eclipse의 Show View

     

  3. 추가된 FCKEditor Tester 는 다음과 같습니다. GetHTML 버튼을 클릭할 경우 본문 내용이 콘솔에 찍히게 됩니다. SetHTML의 버튼의 경우에는 테스트 용으로 붙여놓았습니다.
     3.png

     [그림 3] FCKEditor Tester View

  4. FCKEditor Tester View 의 소스는 다음과 같습니다.
    [코드 1] FCKEditorView.java

    public class FCKEditorView extends ViewPart {

      private FCKEditor editor;

      @Override
      public void createPartControl(Composite parent) {
        editor = new FCKEditor(parent, SWT.NONE);
        initializeToolBar();
      }

      @Override
      public void setFocus() {
        editor.setFocus();
      }
      private void initializeToolBar() {
        IToolBarManager toolBarManager = getViewSite().getActionBars().getToolBarManager();
        toolBarManager.add(new GetHTMLAction());
        toolBarManager.add(new SetHTMLAction());
      }

      class GetHTMLAction extends Action {

        public GetHTMLAction() {
          setText("GetHTML");
        }

        public void run() {
          System.out.println(editor.getHTML());
        }
        
      }

      class SetHTMLAction extends Action {

        public SetHTMLAction() {
          setText("SetHTML");
        }

        public void run() {
          editor.setHTML("Test HTML");
        }
        
      }
    }


  5. 위 코드에서 사용한 FCKEditor 객체를 parent Composite 에 붙이면 RCP에 FCKEditor를 확인할 수 있습니다.

    FCKEditor 의 주요 메소드는 다음과 같습니다.

    String kr.co.vicki.plugins.fckeditor.editor.FCKEditor.getHTML()
    FCKEditor의 HTML을 반환홥니다.

    void kr.co.vicki.plugins.fckeditor.editor.FCKEditor.setHTML(String html)
    FCKEditor의 HTML을 설정합니다.

    Parameters: html

     

  6. FCKEditor 의 툴바를 변경하기 위해서는 플러그인 내부의 fckeditor 디렉토리에 있는 custom.config.js와 fckconfig.js 파일을 수정합니다.
    수정할 설정은 해당페이지를 참고합니다.

     4.png
      [그림 4] FCKEditor config 파일

 

 

문제점/개선사항

  • FCKEditor 를 추가할 경우 해당 위짓에 세로 스크롤바가 생김
  • 툴바를 JAVA 소스 내에서 설정할 수 있도록 수정 

 

관련자료

  1. kr.co.vicki.plugins.fckeditor.zip FCKEditor 번들 플러그인
  2. http://www.eclipse.org/epf/ Eclipse Process Framework Proejct
  3. http://www.fckeditor.net/ FCKeditor
  4. http://en.wikipedia.org/wiki/RCP 위키피디아 RCP
  5. http://www.java2s.com/Tutorial/Java/0280__SWT/BrowserqueryDOMnodevalue.htm Browser: query DOM node value

 

 

이 글은 스프링노트에서 작성되었습니다.

Posted by 자수씨
, |
plugin.xml 의 Extentsions 탭에서 Add 를 눌러서 Extension Wizards 의 Editor 를 생성하면
XmlEditor 를 만들어 줍니다.

근데 이놈은 파일과 연결할 용도로 만든 ... 그런거라는 ....

그래서 그냥 스트링 데이터를 넣을 수 있게 수정하였습니다.

구글신께서 도움을 주셨습니다.



이것도 역시 얻어걸렸다는...

Posted by 자수씨
, |

글 보관함

최근에 받은 트랙백