본문 바로가기

쓰기

ATPluginFrame 을 0.3 에 맞게 수정중입니다;

일단 변경점은..
 - 당연하지만 아랄트랜스 0.3 용 인터페이스가 추가되었습니다.
 - StdAfx.h 에 USE_ARALTRANS_0_2 가 설정되면 아랄트랜스 0.2용 플러그인을 생성합니다.
   마찬가지로 USE_ARALTRANS_0_3 이 설정되면 아랄트랜스 0.3용으로 생성합니다.
   심지어는 둘 다 설정하면 0.2 및 0.3 용 인터페이스를 모두 갖출 수 있습니다..
- DefStruct.h 가 추가되었습니다.
- 충돌을 막기 위해 DefStruct.h 는 NS_ARALTRANS_0_3 네임스페이스에,
   DefATContainer.h 는 NS_ARALTRANS_0_2 네임스페이스에 올라갑니다. (파일 변경은 없습니다)
   실 개발자는 신경 안 써도 됩니다만; 어쨌든.
- 번역 콜백 함수 (TRANSLATION_OBJECT::procTranslate 에 지정되는) 관련 파생 함수가 생겼습니다.
  작업 순서는 다음과 같습니다. (번역 및 필터 플러그인일 경우)
1. ::MainTranslateProcedure 콜백
2. CATPluginFrameApp::MainTranslateProcedure 콜
2-1. 객체 확인 후 CATPluginFrameApp::PreTranslateEx 콜
2-1-1. 오버로드가 되지 않았다면 CATPluginFrameApp::PreTranslate 콜 (기존 함수 이용)
2-2. 객체 확인 후 CATPluginFrameApp::TranslateEx 콜
2-2-1. 오버로드가 되지 않았다면 CATPluginFrameApp::Translate 콜 (기존 함수 이용)
2-3. CATPluginFrameApp::NextTranslateEx 콜
2-3-1. 오버로드가 되지 않았다면 pTransObj->pNextObject->procTranslate 콜
2-4. CATPluginFrameApp::PostTranslateEx 콜
2-4-1. 오버로드가 되지 않았다면 CATPluginFrameApp::PostTranslateEx 콜 (기존 함수 이용)

이런 식으로 손을 대지 않는다면 기존의 함수를, 중간의 Ex 혹은 MainTranslateProcedure 자체를
오버로딩 시키면 0.3 에서 추가된 기능을 사용할 수 있도록 했습니다.. (덕택에 스파게티 코드가 되고 있..;)

주의사항
1. Libs 에 있는 라이브러리들은 아직 손을 못 댔습니다.
2. ATCApi 역시 컴파일만 제대로 되고 있습니다.
3. VC++ 6.0 용 프로젝트 파일은 아직 미변경. 2005용 프로젝트 파일만 써 주세요.
4. 디버그 코드가 아직 남아있습니다.
5. 완벽히 테스트가 된 것이 아니므로 어디서 버그가 튀어나올 지 모름.. oTL
6. Readme.txt 역시 그대로임;

그리고.. 아랄님께 건의가 하나.
아랄트랜스 0.2 및 0.3 겸용으로 플러그인을 만드는 것이 가능한 것 같습니다만, 아랄트랜스 0.3의
구버전 플러그인 체크가 아마도 PreTranslate 등의 익스포트 함수의 존재여부로 체크하는 듯 해서
겸용으로 만들어도 구버전으로 인식되더군요.

그래서.. 플러그인 체크 알고리즘을 GetPluginInfo 함수가 존재하는지 여부로 바꾸실 생각은 없으신지요?
이 함수는 확실히 0.3용 플러그인에서만 존재하니까요.

그리고 Hide_D 님, 위키에서 수정버튼 누르니까 수정할 게시글이 안뜨던데.. 버그 아닌가요?

Hide_D

2009.12.20
15:32:38
아 그리고 0.3에서는 필터도 Context를 생성할 수 있기 때문에 그것도 신경을 써야할겁니다.

+ 위키 수정 완료. 제로보드 버그입니다

whoami

2009.12.20
15:38:33
뭐.. Context 생성이야 API 에서 할 일이고.. ㅎㅎ 정 안되면 Ex 함수쪽을
오버로딩해서 입맛에 맞게 재작성하면 되겠지요.

봐서 기존 함수쪽 (PreTranslate 등) 에서 프레임워크쪽에서 뭔가 넣을 것이 있으면
추가할 생각입니다만, 아직 제대로 된 0.3용 설명글도 없는 상황에서는 어떻게 바꿔야
할 지 모르겠더군요.. 뭐 그래서 정식버전이 아닌 것 아니겠습니까.. 하. 하. 하.. ㅡ_ㅜ
List of Articles
번호 제목 글쓴이 조회 수 추천 수sort 날짜 최근 수정일
공지 Talk [필독] 테스트필터 사용시 주의사항 라파에 155437   2008-08-03 2008-12-16 00:03
85 Archive [번역툴]QuickTrans 0.1.0 릴리즈 [1] file HaruKaze 17465   2009-03-08 2011-06-28 01:25
 
84 Archive FixLine v2 20090329 테스트버전 [6] file Hide_D 14317   2009-03-29 2009-03-29 15:51
 
83 Archive FixLine v2 20090331 테스트버전 [2] file Hide_D 14494   2009-03-31 2009-04-01 14:52
 
82 Archive FixLine v2 20090402 테스트버전 [1] file Hide_D 14431   2009-04-02 2009-04-02 09:03
 
81 Archive FixLine v2 20090404 [....] [1] file Hide_D 14767   2009-04-04 2009-04-04 19:10
 
80 Archive FixLine v2 20090404_2 RC2 [2] file Hide_D 16439   2009-04-04 2009-04-05 03:47
 
79 Archive [번역툴] QuickTrans 0.1.1 [4] HaruKaze 14339   2009-05-04 2009-05-05 22:28
몇가지 버그와 자동 저장기능을 추가한 0.1.1 버전입니다. 다운로드 -- Version History -- 0.1.1 Release 2009-05-04 18:00 - 명령어 예외 목록의 수정 기능이 정상적으로 작동되지 않는 버그 수정 - 프로그램이 비정상적으로 종료될 만한 옵션을 변경할 경우...  
78 Archive KDC(Korean Duplication Checker) 090702 테스트버전 [2] file Hide_D 16974   2009-07-07 2009-07-08 02:43
 
77 Archive [플러그인, 소스] NonCached 테스트 버전 20090709 [3] file whoami 27839   2009-07-09 2009-07-11 01:51
 
76 Archive [플러그인, 소스] NonCached 테스트 버전 20090717 [1] file whoami 17949   2009-07-17 2009-07-23 23:37
 
75 Archive [플러그인, 소스] KiriKiri 테스트 버전 20090723 [1] file whoami 17854   2009-07-23 2009-07-23 23:38
 
74 Archive [플러그인, 소스] KiriKiri 테스트 버전 20090726 [10] file whoami 24511   2009-07-26 2009-07-28 23:52
 
73 Archive [플러그인,소스] KiriKiri 테스트 버전 20090729 [11] file whoami 21238   2009-07-29 2009-09-13 14:57
 
72 Archive ATPluginFrame 프레임워크 20090901 테스트 버전.. file whoami 12897   2009-09-01 2009-09-01 22:49
 
» Archive [소스] ATPluginFrame 프레임워크 20091220 테스트 버전 [2] file whoami 11847   2009-12-20 2009-12-22 15:56
ATPluginFrame 을 0.3 에 맞게 수정중입니다; 일단 변경점은.. - 당연하지만 아랄트랜스 0.3 용 인터페이스가 추가되었습니다. - StdAfx.h 에 USE_ARALTRANS_0_2 가 설정되면 아랄트랜스 0.2용 플러그인을 생성합니다. 마찬가지로 USE_ARALTRANS_0_3 이 설정되...  
70 Archive [소스] ATPluginFrame 프레임워크 20091222 테스트 버전 [1] file whoami 17551   2009-12-22 2009-12-30 18:58
 
69 Archive [소스] ATPluginFrame 프레임워크 20100105 테스트 버전 file whoami 17913   2010-01-05 2010-01-05 19:47
 
68 Archive [플러그인] GoogleTrans 테스트 버전 (20100620) file Hide_D 26601   2010-06-20 2010-06-20 16:00
 
67 Archive [소스, 플러그인] Cache 테스트버전 101127 file Hide_D 19949   2010-11-27 2010-11-27 04:19
 
66 Archive [소스] CustomDic v4 20110102 테스트버전 [1] file Hide_D 17513   2011-01-02 2011-01-03 06:08