Hello,

I have been searching this for hours to no avail, I am turning to the forums
before calling this a DW bug...

I am currently preparing a DW extension to help insert PHP code structures and
variables faster into code view. It works great, except I have added the
menuitems via the mxi file in a regular menu and in the context menu, but it
works only in the context menu.

For instance, I have :
<menu-insert insertAfter="DWContext_HTML_NewSnippet" skipSeparator="true">
<menu id="XPContext_Insert_CodePHP" showif="_VIEW_CODE, _SERVERMODEL_PHP"
name="Insert PHP _Code">
</menu>
</menu-insert>
<menu-insert appendTo="XPContext_Insert_CodePHP">
<menuitem id="XPContext_Insert_CodePHP_IF" enabled="true" name="_if"
file="Shared/XavierPitel/CodePHP.htm" arguments="'if'" />
...

and:
<menu-insert insertAfter="DWMenu_Insert_PHPObjects">
<menu id="XPMenu_Insert_CodePHP" showif="_VIEW_CODE, _SERVERMODEL_PHP"
name="Insert PHP _Code">
</menu>
</menu-insert>
<menu-insert appendTo="XPMenu_Insert_CodePHP">
<menuitem id="XPMenu_Insert_CodePHP_IF" enabled="true" name="_if"
file="Shared/XavierPitel/CodePHP.htm" arguments="'if'" />
...

So the same command calling the same file works in the context menu, but fails
in DW Insert menu. As you can see, menuitem IDs are different, name and file
attributes are the same. Debugging (alert() message), it seems
receiveArguments() is called from the context menu, but not from the Insert
menu. Removing the context menu, I still experience the problem. I do not have
any error messages showing up, just nothing is happening from the Insert menu,
for none of the menuitems (correctly) appearing...

I am currently using DW 9 under Windows XP, it used to work properly in DW8.

Any Adobe Guru in there to help?
Thanks in advance!
Xavier

Attached is the full code of the mxi file.


<macromedia-extension
name="Xavier Pitel's PHP Coding tools for Dreamweaver"
version="1.2.0"
type="utility"
requires-restart="true">

<author name="Xavier PITEL" />

<products>
<product name="Dreamweaver 8" version="8" primary="true" />
</products>

<description>
<![CDATA[Provides ready-made coding structures as well as a list of all
variables found in the current document. Select in Insert menu or right-click
to add at cursor location.]]>
</description>

<ui-access>
<![CDATA[Select Insert menu and Insert PHP code or Insert PHP variable, or
right-click on code mode and select Insert PHP code or Insert PHP Variable.]]>
</ui-access>

<files>
<file source="CodePHP.htm"
destination="$dreamweaver/Configuration/Shared/XavierPitel" />
<file source="CodePHP.js"
destination="$dreamweaver/Configuration/Shared/XavierPitel" />
<file source="VariablesPHP_Dynamic.htm"
destination="$dreamweaver/Configuration/Shared/XavierPitel" />
<file source="VariablesPHP_Dynamic.js"
destination="$dreamweaver/Configuration/Shared/XavierPitel" />
<file source="IncludePHPFile.htm"
destination="$dreamweaver/Configuration/Shared/XavierPitel" />
</files>

<configuration-changes>
<menu-insert insertAfter="DWContext_HTML_NewSnippet" skipSeparator="true">
<menu id="XPContext_Insert_CodePHP" showif="_VIEW_CODE, _SERVERMODEL_PHP"
name="Insert PHP _Code">
</menu>
</menu-insert>
<menu-insert appendTo="XPContext_Insert_CodePHP">
<menuitem id="XPContext_Insert_CodePHP_IF" enabled="true" name="_if"
file="Shared/XavierPitel/CodePHP.htm" arguments="'if'" />
<menuitem id="XPContext_Insert_CodePHP_ELSE" enabled="true" name="_else"
file="Shared/XavierPitel/CodePHP.htm" arguments="'else'" />
<menuitem id="XPContext_Insert_CodePHP_ELSEIF" enabled="true"
name="elsei_f" file="Shared/XavierPitel/CodePHP.htm" arguments="'elseif'" />
<menuitem id="XPContext_Insert_CodePHP_IFELSE" enabled="true" name="if_
else" file="Shared/XavierPitel/CodePHP.htm" arguments="'ifelse'" />
<menuitem id="XPContext_Insert_CodePHP_IFELSEIFELSE" enabled="true"
name="if e_lseif else" file="Shared/XavierPitel/CodePHP.htm"
arguments="'ifelseifelse'" />
<separator />
<menuitem id="XPContext_Insert_CodePHP_SWITCH" enabled="true"
name="_switch" file="Shared/XavierPitel/CodePHP.htm" arguments="'switch'" />
<separator />
<menuitem id="XPContext_Insert_CodePHP_FOR" enabled="true" name="f_or"
file="Shared/XavierPitel/CodePHP.htm" arguments="'for'" />
<menuitem id="XPContext_Insert_CodePHP_FOREACH" enabled="true"
name="fo_reach" file="Shared/XavierPitel/CodePHP.htm" arguments="'foreach'" />
<separator />
<menuitem id="XPContext_Insert_CodePHP_WHILE" enabled="true" name="_while"
file="Shared/XavierPitel/CodePHP.htm" arguments="'while'" />
<menuitem id="XPContext_Insert_CodePHP_DO" enabled="true" name="_do"
file="Shared/XavierPitel/CodePHP.htm" arguments="'do'" />
<separator />
<menuitem id="XPContext_Insert_CodePHP_FUNCTION" enabled="true"
name="f_unction" file="Shared/XavierPitel/CodePHP.htm" arguments="'function'" />
<separator />
<menuitem id="XPContext_Insert_CodePHP_Inclusion_fichier" enabled="true"
name="I_nclure un fichier" file="Shared/XavierPitel/IncludePHPFile.htm" />
</menu-insert>
<menu-insert insertAfter="XPContext_Insert_CodePHP" skipSeparator="true">
<menu id="XPContext_Insert_VariablesPHP" showif="_VIEW_CODE,
_SERVERMODEL_PHP" name="Insert PHP _Variable">
</menu>
<separator />
</menu-insert>
<menu-insert appendTo="XPContext_Insert_VariablesPHP" skipSeparator="true">
<menuitem id="XPContext_Insert_VariablesPHP_Default" dynamic name="No
variable found" file="Shared/XavierPitel/VariablesPHP_Dynamic.htm"
arguments="'pas de variables'" />
</menu-insert>
<menu-insert insertAfter="DWMenu_Insert_PHPObjects">
<menu id="XPMenu_Insert_CodePHP" showif="_VIEW_CODE, _SERVERMODEL_PHP"
name="Insert PHP _Code">
</menu>
</menu-insert>
<menu-insert appendTo="XPMenu_Insert_CodePHP">
<menuitem id="XPMenu_Insert_CodePHP_IF" enabled="true" name="_if"
file="Shared/XavierPitel/CodePHP.htm" arguments="'if'" />
<menuitem id="XPMenu_Insert_CodePHP_ELSE" enabled="true" name="_else"
file="Shared/XavierPitel/CodePHP.htm" arguments="'else'" />
<menuitem id="XPMenu_Insert_CodePHP_ELSEIF" enabled="true" name="elsei_f"
file="Shared/XavierPitel/CodePHP.htm" arguments="'elseif'" />
<menuitem id="XPMenu_Insert_CodePHP_IFELSE" enabled="true" name="if_ else"
file="Shared/XavierPitel/CodePHP.htm" arguments="'ifelse'" />
<menuitem id="XPMenu_Insert_CodePHP_IFELSEIFELSE" enabled="true" name="if
e_lseif else" file="Shared/XavierPitel/CodePHP.htm" arguments="'ifelseifelse'"
/>
<separator />
<menuitem id="XPMenu_Insert_CodePHP_SWITCH" enabled="true" name="_switch"
file="Shared/XavierPitel/CodePHP.htm" arguments="'switch'" />
<separator />
<menuitem id="XPMenu_Insert_CodePHP_FOR" enabled="true" name="f_or"
file="Shared/XavierPitel/CodePHP.htm" arguments="'for'" />
<menuitem id="XPMenu_Insert_CodePHP_FOREACH" enabled="true" name="fo_reach"
file="Shared/XavierPitel/CodePHP.htm" arguments="'foreach'" />
<separator />
<menuitem id="XPMenu_Insert_CodePHP_WHILE" enabled="true" name="_while"
file="Shared/XavierPitel/CodePHP.htm" arguments="'while'" />
<menuitem id="XPMenu_Insert_CodePHP_DO" enabled="true" name="_do"
file="Shared/XavierPitel/CodePHP.htm" arguments="'do'" />
<separator />
<menuitem id="XPMenu_Insert_CodePHP_FUNCTION" enabled="true"
name="f_unction" file="Shared/XavierPitel/CodePHP.htm" arguments="'function'" />
<separator />
<menuitem id="XPMenu_Insert_CodePHP_Inclusion_fichier" enabled="true"
name="I_nclure un fichier" file="Shared/XavierPitel/IncludePHPFile.htm" />
</menu-insert>
<menu-insert insertAfter="XPMenu_Insert_CodePHP" skipSeparator="true">
<menu id="XPMenu_Insert_VariablesPHP" showif="_VIEW_CODE, _SERVERMODEL_PHP"
name="Insert PHP _Variable">
</menu>
</menu-insert>
<menu-insert appendTo="XPMenu_Insert_VariablesPHP">
<menuitem id="XPMenu_Insert_VariablesPHP_Default" dynamic name="No variable
found" file="Shared/XavierPitel/VariablesPHP_Dynamic.htm" arguments="'pas de
variables'" />
</menu-insert>
</configuration-changes>
</macromedia-extension>