2010-05-04 2 views
5

저는 C#의 인텔리 센스 또는 코드 완성 기능을 연구하고 있습니다.emacs : x-popup-menu 최대 크기 제약?

지금까지 그렇게 좋았습니다. 지금은 기본적인 작업이 완료되었습니다. 완료를 요청하는 2 가지 방법이 있습니다. 첫 번째주기는 모든 잠재적 인 일치를 순환합니다. 두 번째는 경기의 팝업 메뉴를 제공합니다. 이 유형의 작동 : 지역 및 인스턴스 변수도

alt text http://i44.tinypic.com/afbl2o.jpg

그리고 :

alt text http://i40.tinypic.com/2pqul2u.jpg 나는 X-팝업 메뉴 두 가지 문제에 직면하고있어

:

  1. 을 선택 항목 수가 많으면 팝업 메뉴를 확장하여 사용 가능한 모든 화면 공간을 사용할 수 있습니다. 말 그대로 전체 화면을 소비 할 수 있으며 전체 이맥 창과 모든 다른 창을 포함하여 모든 것을가립니다. 어리석은 것은 스크롤 할 수 있다는 것입니다. 먼저 사용 가능한 공간을 모두 소비하도록 확장 한 다음 스크롤 할 수있게됩니다. 사용 가능한 공간을 모두 차지하지 않고 특정 지점까지 확장 한 다음 스크롤 할 수있게되는 것이 합리적이라고 생각됩니다. x-popup-menu의 최대 크기를 제한 할 수있는 방법이 있습니까?
  2. 팝업 메뉴의 위치를 ​​지정하려면 위치를 전달하고 x-popup-menu는 메뉴 상단 라인의 왼쪽이 아닌 * 중간 *으로 사용합니다. 왜 중간에요? 누가 알아. 메뉴의 위치를 ​​(40.60)으로 지정하고 메뉴의 크기가 100 픽셀이면 메뉴는 이맥스 창의 왼쪽 테두리 너머로 확장됩니다. 위의 두 번째 이미지에서이를 볼 수 있습니다. 위치를 지정하기 전에 팝업 크기가 얼마나 될지 알았다면 보상 할 수있었습니다. 하지만 나는 그렇지 않습니다. 해결 방법이 있습니까? x-popup-menu가 중간이 아닌 LEFT로 위치를 잡을 수있는 방법이 있습니까?

부록 : X-팝업 메뉴에 대한 문서

X-팝업 메뉴`C 소스 코드 '에 내장 된 기능입니다. (x 팝업 메뉴 위치 메뉴)

카드 갑판 팝업을 팝업하고 사용자 선택을 되돌립니다. PO SITION은 위치 사양입니다. 이것은 마우스 단추 이벤트이거나 목록 ((XOFFSET YOFFSET) WINDOW)입니다. 여기서 XOFFSET 및 YOFFSET 은 WINDOW의 프레임 의 왼쪽 위 모퉁이에서 픽셀 위치입니다 (WINDOW는 창 대신 프레임 개체 일 수 있음). 메뉴의 첫 번째 창에서 첫 번째 줄의 가운데 위치를 으로 제어하며 전체 메뉴의 왼쪽 상단은 제어하지 않습니다. POSITION이 t이면 은 현재 마우스 위치를 사용한다는 의미입니다.

+0

참조 :-) 순수한 추측입니다 : http://meta.stackexchange.com/questions/79406/bounty-awarded-incorrectly – Will

답변

3

당신은 company 또는 제안의 디스플레이가 당신을 위해 처리됩니다 autocomplete에 자동 완성 백엔드를 기반으로 할 수 있습니다.

+1

자동 완성에서 팝업 기능이 있는지, 도움이 될 것 같은데 자동 완성 기능을 사용하여 옵션을 생성합니다. – Cheeso

4

이 아니기 때문에 이맥스와 같은 사람들은에 팝업 창이 있습니다 (예 : this blog entry 참조). 가능한 완료 목록을 제시하는 "emacsy"방법은 분할 버퍼에 표시하는 것입니다. 그렇게하면 자동으로 위의 모든 문제 (스크린 부동산 & 화면 이동)를 피할 수 있으며 아마도 이명박 이맥 사용자를 더 유치 할 것입니다.

하지만 그

+0

그것은 좋은 지적입니다. 나는 그것에 대해 생각하지 않았습니다. – Cheeso