9910

          單飛

             :: 首頁 :: 聯系 :: 聚合  :: 管理
          public class FMultiPageEditor extends MultiPageEditorPart implements IResourceChangeListener{

          /**
               * Creates page f of the multi-page editor,
               * which contains a text editor.
               
          */
              
          void createHPage() {
                  FEditorInput fInput 
          = (FEditorInput) getEditorInput();
                  
          // h file
                  IFile hFile  = formInput.getHFile();
                  
          try {
                      FileEditorInput fed 
          = new FileEditorInput(hFile);
                      htmlEditorPart 
          = makeDefaultEditorFor("default" + ".html");
                      
          int index = addPage(htmlEditorPart, fed);
                      setPageText(index, 
          "");
                      setPageImage(index, fed.getImageDescriptor().createImage());
                  } 
          catch (PartInitException e) {
                      ErrorDialog.openError(getSite().getShell(),
                              
          "r"null, e.getStatus());
                  } 
          catch (Exception e) {
                      e.printStackTrace();
                  }
              }

          private IEditorPart makeDefaultEditorFor(String name) {
                  IEditorDescriptor editorDescriptor 
          = getSite().getWorkbenchWindow()
                          .getWorkbench().getEditorRegistry().getDefaultEditor(name);
                  IEditorRegistry reg 
          = WorkbenchPlugin.getDefault().getEditorRegistry();
                  EditorDescriptor desc 
          = (EditorDescriptor) reg
                          .findEditor(editorDescriptor.getId());

                  
          if (desc == null)
                      
          return /*new TextEditor()*/null;

                  IEditorPart part 
          = null;
                  
          try {
                      
          if (desc.getClassName() != null
                              
          && desc.getClassName().equals(getClass().getName())) {
                          IEditorDescriptor[] editors 
          = getSite().getWorkbenchWindow()
                                  .getWorkbench().getEditorRegistry().getEditors(name);
                          
          for (int i = 0; i < editors.length; i++) {
                              
          if (editors[i].getId() != editorDescriptor.getId()) {
                                  editorDescriptor 
          = editors[i];
                                  desc 
          = (EditorDescriptor) reg
                                          .findEditor(editorDescriptor.getId());
                                  
          if (desc.getClassName() != null
                                          
          && !desc.getClassName().equals(
                                                  getClass().getName()))
                                      
          break;
                              }
                          }
                      }
                      
          if (desc.getClassName() == null
                              
          || desc.getClassName().equals(getClass().getName()))
                          part 
          = new TextEditor();
                      
          else
                          part 
          = desc.createEditor();

                  } 
          catch (CoreException e) {
                      e.printStackTrace();
                      part 
          = new TextEditor();
                  }
                  
          return part;
              }
          posted on 2009-03-26 11:04 單飛 閱讀(867) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 电白县| 祁门县| 丰顺县| 松溪县| 博兴县| 弥渡县| 彭州市| 龙南县| 赤壁市| 儋州市| 临潭县| 阿克陶县| 遂川县| 永嘉县| 肥西县| 敦化市| 鲁山县| 舞钢市| 黎川县| 元氏县| 华亭县| 贞丰县| 阜宁县| 西安市| 宁陵县| 疏勒县| 阜新| 崇明县| 湛江市| 全椒县| 大英县| 海兴县| 中牟县| 自贡市| 两当县| 平遥县| 满洲里市| 宁波市| 溧水县| 贵溪市| 光泽县|