Tôi đang làm việc trên một hybrid 3.8-e4 (tức là chúng tôi có các phụ thuộc Luna, nhưng chúng tôi chưa sử dụng Application.e4xmi ). Vì vậy, về cơ bản chúng ta đang chạy lớp nhỏ gọn.
Với điều đó đã được nói, sẽ rất tuyệt nếu bạn tìm thấy một cách lập trình e4 để xếp chồng những chế độ xem khó chịu này vào thư mục trình chỉnh sửa.
1.) Vấn đề
Tôi muốn đặt một thư mục dạng xem chung trong vùng soạn thảo để mỗi dạng xem được mở trong thời gian chạy sẽ được mở ở đó.
(ảnh bị đánh cắp từ câu hỏi này )
2.1) Có thể sửa lỗi số 1: Sử dụng plugin.xml
Tạo tiện ích mở rộng phối cảnh và thêm từng chế độ xem có thể có vào tiện ích mở rộng đó, với ngăn xếp mối quan hệ trên org.eclipse.ui.editorss tương đối . Điều này hơi bất tiện nếu bạn có quá nhiều chế độ xem đang chờ được mở và nếu dự án mở rộng quy mô nhanh chóng. Tôi cũng nhận thấy rằng ID chế độ xem ký tự đại diện không hoạt động ở đây.
Nếu bạn thấy mình có thời gian để thêm từng chế độ xem có thể vào phần mở rộng phối cảnh, điều đó sẽ hiệu quả. Mặc dù, NẾU bạn mở một dạng xem không được thêm vào đây (tức là: mở trong một thư mục khác), thì mỗi dạng xem được mở tiếp theo sẽ được mở trong thư mục trước đó, chứ KHÔNG phải trong vùng soạn thảo (hỏi thêm giải thích nếu bạn không hiểu rồi).
2.2) Bản sửa lỗi có thể có số 2: Sử dụng mã trong nhà máy phối cảnh
Trong IPerspectiveFactory
, chúng tôi có quyền truy cập vào IPageLayout
, tình org.eclipse.ui.internal.e4.compatibility.ModeledPageLayout
cờ là (công cụ e4).
Bây giờ, việc ModeledPageLayout
triển khai này là hợp lý, nhưng cũng không có tài liệu và các API công khai kỳ lạ. Cái này cung cấp khả năng xếp chồng một chế độ xem lên bất kỳ người thân nào khác
modeledPageLayout.stackView("newView0", IPageLayout.ID_EDITOR_AREA);
Đây sẽ là phiên bản lập trình của 2.1 . Ngoài ra, vấn đề tương tự cũng xuất hiện ở đây. Nếu một chế độ xem được mở ở một nơi khác, đoạn mã trên sẽ trở nên vô dụng.
Khá thú vị, stackView
API không hỗ trợ các ký tự đại diện (trong khi các ký tự khác addView
thì có).
2.3) Bản sửa lỗi có thể có số 3: Giải pháp thay thế yaaay!
Tôi có rất nhiều góc nhìn, và rất nhiều thư mục khác nhau trong mỗi góc nhìn. Mọi thứ đều được đặt chính xác.
Vì Eclipse cung cấp các API để lấy tất cả các ID chế độ xem từ mọi nơi xung quanh hệ thống, nên tôi muốn thực hiện như sau, theo quan điểm: mỗi ID chế độ xem chưa được thêm vào một thư mục cụ thể sẽ được thêm vào khu vực trình chỉnh sửa (tức là thư mục trình chỉnh sửa , ngăn xếp biên tập viên) .
Đây sẽ là phương sách cuối cùng của tôi, trừ khi ai đó đưa ra một giải pháp tiện lợi và tiết kiệm thời gian hơn.
Hãy nhớ rằng, một giải pháp thay thế có lập trình e4 linh hoạt hơn!
3.) Các câu hỏi liên quan
- Eclipse RCP - Mở View trong thư mục Editor
- Eclipse RCP - Xếp chồng một dạng xem với vùng soạn thảo?
- Phối cảnh Eclipse tùy chỉnh, với chế độ xem ban đầu không thể nhìn thấy được xếp chồng lên vùng biên tập
- Câu hỏi của Google, câu trả lời của Lars
Những thứ này sẽ không được dùng nữa cho bản phát hành e4.
4.) Lỗi liên quan trên Bugzilla của Eclipse:
Lỗi gần đây do chính tôi mở này có tệp đính kèm với một SSCCE nhỏ. Các bước để tạo lại điều này được mô tả trong nhận xét này , vì vậy tôi sẽ không sao chép và dán chúng ở đây.