سؤال

والآن يمكنني التسجيل مساعدة السياقية في الكسوف WizardDialog / محرر.

1) I إنشاء ملف help_contexts.xml.

<?xml version="1.0" encoding="UTF-8"?>
<?NLS TYPE="org.eclipse.help.contexts"?>
<contexts>
   <context  id="my.plugin.help.general" >
        <description>test</description>
        <topic label="test" href="http://domain.com/help.html"/>
   </context>
</contexts>

2) I المشار إليها هذا الملف في بلدي plugin.xml

  <extension
         point="org.eclipse.help.contexts">
         <contexts file="help_contexts.xml" plugin="my.plugin.MainEditor">
         </contexts>
   </extension>

و3) وأضفت خط في build.properties جهدي لتضمين هذا الملف في الدليل بن (bin.includes = help_contexts.xml، ...)

و4) عند تشغيل بلدي المساعد أساس مرفق البيئة العالمية، أرى my.plugin.MainEditor "" تحت مساعدة حيوية "لم يتم العثور على للمباراة".

وأنا أعلم أنني بحاجة إلى خلق شيء من هذا القبيل في مكان ما، ولكني لا أعرف من أين لوضع هذا الأمر بالنسبة لي WizardDialog أو على الأقل لبلدي تحرير كامل:

  public void createPartControl(Composite parent) {
      ...
      PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, 
         "my.plugin.help.general");
   }

ملحوظة: هذا السؤال يرد أصلا سؤالين. لقد أزالت الأول (جزء لم يتم الرد عليها) ليتم نشرها في مكان آخر.

هل كانت مفيدة؟

المحلول

وهنا هو كيف نفعل ذلك: 1) I إنشاء ملف help_contexts.xml. لم يكن لديك فترات في هوية السياق. لا تتضمن اسم البرنامج المساعد الخاص بك هناك.

<?xml version="1.0" encoding="UTF-8"?>
<?NLS TYPE="org.eclipse.help.contexts"?>
<contexts>
   <context  id="help_general" >
        <description>test</description>
        <topic label="test" href="http://domain.com/help.html"/>
   </context>
</contexts>

2) I المشار إليها هذا الملف في بلدي plugin.xml لا تشمل المساعد معرف إذا كنت يتم الرجوع المساعد الخاص بك.

 <extension
         point="org.eclipse.help.contexts">
         <contexts file="help_contexts.xml">
         </contexts>
   </extension>

و3) وأضفت خط في build.properties جهدي لتضمين هذا الملف في الدليل بن (bin.includes = help_contexts.xml، ...). ملاحظة بك حزمة-SymbolicName في MANIFEST.MF الخاص بك (كما يظهر في محرر plugin.xml الخاص بك). على سبيل المثال: my.plugin

و4) تعيين معرف السياق في WizardPage (الفضل في ذلك إلىVonC)

public class MyWizardPage extends WizardPage
    public void createControl(Composite parent) {
        PlatformUI.getWorkbench.getHelpSystem.setHelp(parent, "my.plugin.help_general");
    }
}

نصائح أخرى

وبالنسبة للسؤال الرئيسي، وأنا لست متأكدا بك setHelp المعلمة الثانية. انظر هذا الموضوع :

<اقتباس فقرة>   

في استدعاء الأسلوب

PlatformUI.getWorkbench().getHelpSystem().setHelp()
<اقتباس فقرة>   

والمعلمة الثانية هي contextID.
  وينبغي أن مسبوقة مع pluginID مثل: "pluginID.contextID"
  الآن لم أكن متأكدا من أين للعثور على المكونات في ID لبلدي في المكونات.
  لذلك أنا استخدمت قيمة هذه الخاصية: <ديل> Bundle-Name Bundle-Symbolic-Name من MANIFEST.MF كما في المكونات ID
  الآن يعمل.


لوsidenote (مساعدة لWizardDialog هذا الموضوع قد يساعد (من ديفيد كيلي وبلوق له " الكسوف RCP "):

<اقتباس فقرة>   

ونحن تعيين معرف السياق في صفحة المعالج لدينا.

public class MyWizardPage extends WizardPage
    public void createControl(Composite parent) {
        PlatformUI.getWorkbench.getHelpSystem.setHelp(parent, 
MyPluginActivator.ID + ".mycontexthelpid");
    }
}
<اقتباس فقرة>   

ووضعناها مساعدة للحوار المعالج.

WizardDialog dialog = new WizardDialog(.....);
PlatformUI.getWorkbench().getHelpSystem().setHelp(dialog.getShell(), 
"mycontexthelp.id");
<اقتباس فقرة>   

ونحن لا تجاوز performHelp().

     

وأما بالنسبة للهوية مساعدة السياق. تحديد ملف xml السياق في البرنامج المساعد الخاص بك.

<?xml version="1.0" encoding="UTF-8"?>
<?NLS TYPE="org.eclipse.help.contexts"?>
<contexts>
    <context id="mycontexthelpid" >
        <description>My wizard help.</description>
        <topic label="Wizard help" href="reference/wizard/help.xhtml"/>
    </context>
</contexts>
<اقتباس فقرة>   

وفي البرنامج المساعد الخاص بك

<plugin>
    <extension point="org.eclipse.help.contexts">
        <contexts file="mywizard.xml" plugin="com.mypluginid"/>
    </extension>
</plugin>
<اقتباس فقرة>   

وهناك مشكلة مشتركة وخبطة البرنامج المساعد وتعليمات السياق هويات. يمكنك تعيين   بضع نقاط لكسر الارسال لمعرفة أي معرف السياق يتم طلبها.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top