如何在现有网页Editor Palette中提供自定义组件

2024-03-15

我想在网页编辑器面板中添加一个名为“myHTMLComponent”的新自定义组件。 因此,一旦用户使用 WPE 打开任何 html 页面,myHTMLComponentM 就应该出现在那里。 我该如何做需要的事情,而且这个组件还需要相应地生成代码更改。如何达到想要的结果。

我可以为此获得任何意见吗? 我已经创建了标准元数据标签,但下一步是什么!


最后,我找到了问题的解决方案。

为了在调色板中添加新类别,我们需要在plugin.xml中使用pagedesignerextension,如下所示 -

<extension
point="org.eclipse.jst.pagedesigner.pageDesignerExtension">
<paletteFactory
class="com.comp.myeditor.palette.CustomEditorPaletteFactory">
</paletteFactory>
</extension>

其中 CustomEditorPaletteFactory 将扩展 AbstractPaletteFactory。在 createPaletteRoot() 中,我们可以添加我们的类别。

public PaletteRoot createPaletteRoot(IEditorInput editorInput){
PaletteRoot paletteRoot = new PaletteRoot();
paletteRoot.add(createStandardComponents());
return paletteRoot;
//return null;
}


private static PaletteContainer createStandardComponents() {
PaletteDrawer componentsDrawer = new PaletteDrawer("CustomHTMLComponent");

TagToolPaletteEntry paletteEntry = new TagToolPaletteEntry(
new FormPaletteComponent(".....);
componentsDrawer.add(paletteEntry);

return componentsDrawer;
}

这将在调色板中创建组件类别,我们可以使用组件抽屉根据需要添加任意数量的组件。

要在现有类别中添加新类别 - 在构造函数中添加它 -

super();
        this._paletteContext = PaletteItemManager.createPaletteContext(file);
        this._manager = PaletteItemManager.getInstance(_paletteContext);

然后像这样使用调色板分组 -

PaletteGroup controls = new PaletteGroup("CUST HTML");
        super.add(controls);

        ToolEntry tool = new SelectionToolEntry("CUST Cursor",
                "Cursor DESCRIPTION");

        controls.add(tool);
        setDefaultEntry(tool);
//Custom Marquee
        controls.add(new MarqueeToolEntry("Marquee", "Marquee Desc"));

        controls.add(new PaletteSeparator());
//This class maintins or load all categories features
        controls.add(new CustomComponentToolEntry("Custom Component", "Custom Component Descrition", 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在现有网页Editor Palette中提供自定义组件 的相关文章

  • Android 模拟器问题

    当我启动模拟器时 我遇到很多问题 错误 HttpConnectionApp emulator 5554 disconnected Cancelling net paxcel http HttpConnectionApp activity l
  • 在红帽 JBoss Developer Studio (Devstudio) 中使用 Eclipse Marketplace 客户端

    我想问您是否 以及如何 可以在 Red Hat JBoss Developer Studio 10 3 0 GA 中使用 Eclipse Marketplace 我尝试从 1 安装 EMPC 但版本看起来有点旧 之后无法运行 基本上我想将
  • 艾玛对枚举类型的报道

    我正在运行 EclEmma Eclipse 的 Emma 插件 覆盖率报告仅显示我定义的 Enum 的部分覆盖率 即使它显示了 Enum 中唯一被覆盖的值 我假设支持枚举的隐含方法存在覆盖范围差距 但我不太确定 例如 使用此枚举 EclEm
  • Eclipse Kepler 在 64 位 ubuntu 上冻结

    几天前我刚刚将 Ubuntu 升级到 14 04 并在此过程中从 32 位切换到 64 位 从那时起 Eclipse 就变得非常不稳定 运行几分钟后 它将开始随机冻结越来越长的时间 特别是在代码完成时 已经必须禁用它 而且在剪切 粘贴时 偶
  • 在java中打印阿拉伯字符串

    我试图在 java 中显示阿拉伯语文本 但它显示垃圾字符 示例 或有时在我打印时仅显示问号 我如何才能打印阿拉伯语 我听说它与unicode和UTF 8有关 这是我第一次使用语言 所以不知道 我正在使用 Eclipse Indigo IDE
  • android/eclipse 中的网络服务

    我需要通过soap 方法使用android eclipse 的Web 服务 即 我必须提供输入并根据用户输入从网络服务显示适当的结果 如何做到这一点 java类 public class Demo webserviceActivity ex
  • 将项目导入 Eclipse 后出现“必须重写超类方法”错误

    任何时候我必须将我的项目重新导入到 Eclipse 中 如果我重新安装了 Eclipse 或者更改了项目的位置 几乎全部我的重写方法的格式不正确 导致错误 该方法必须重写超类方法 值得注意的是 无论出于何种原因 Android 项目中方法参
  • 为什么 Eclipse 有时会对 JavaScript 中的数组数组发出警告?

    在 Eclipse 中 以下 JavaScript 行 var a1 1 2 3 4 生成警告 Type mismatch cannot convert from Number to any Type mismatch cannot con
  • 如何自动执行使用 Maven 构建的 Eclipse 插件的版本号更新过程

    我正在处理一个与该项目类似的项目此处描述 http www vogella com articles EclipseTycho article html 因此 它在父 pom xml 中有一些模块
  • Eclipse 中的 node.js - 大多数人使用哪个插件?

    我最感兴趣的是服务器端 Web 开发 尽管能够在 Chrome 中重新部署一些部分会很好 我目前正在跑步Eclipse Indigo在 Ubuntu 上主要开发 Java Scala 程序并使用 git 到目前为止我遇到过http code
  • 从 Eclipse Java 编辑器中获取选定的文本

    我正在开发一个 Eclipse 插件 按下按钮后 该插件会在 Java 编辑器中获取选定的文本 并将其放入出现的文本框中 我的代码如下所示 我从这里得到它 http dev eclipse org newslists news eclips
  • 如何在 JSP 编辑器中激活 javascript 的语法着色 - Eclipse

    在某些情况下 javascript 确实必须位于 JSP 页面中 而不是位于单独的文件中 有些框架还使用Javascript做一些事情 以便用户将其包含到JSP标签中 这样JS就不会出现在
  • 在eclipse上恢复项目的maven插件

    我通过单击 Disable Maven Nature 禁用了项目的 m2eclipse 插件 如下图所示 然后 Maven 条目从菜单中消失 我无法恢复它 如何恢复 重置 重新启用以便该条目再次出现 PS 1 我想在不重新导入项目的情况下做
  • 字符串的外部文件,而不是对它们进行硬编码

    我有开发一些 Android 应用程序的经验 这些应用程序可以轻松地拥有可以存储字符串的 XML 字符串文件 上次我开发桌面 Java 应用程序时 我对字符串进行了硬编码 例如按钮标题 标签等 我后来了解到这是不好的做法 我应该将字符串存储
  • 在 Eclipse Juno 上安装 Marketplace 插件

    我下载了Eclipse Juno 4 2 经典捆绑包 http eclipse org downloads 然后看到了Help gt Marketplace 不可用 AFAIK 这是由mpc 插件 在他们的网站上 http eclipse
  • Eclipse Android 项目总是在调试中启动

    我觉得问这个问题很愚蠢 遇到这个问题更愚蠢 我有一个 Android 项目 到目前为止一直运行良好 但几天前 在我没有做任何我所知道的特别事情的情况下 无论我尝试什么 我的项目总是在调试中启动自己 单击调试或运行会给我相同的结果 我尝试查看
  • Eclipse jsp 编辑器中出现错误

    我在 jsp 文件中遇到错误 在 X 行上 但这一切似乎都是正确的
  • 我的本地 Eclipse 可以在 Docker 容器中安装 Access 库吗?

    我有一个用于 Django 开发的 Docker 映像 通过一些 xauthority 文件机制 我在容器内使用 Eclipse 在大多数情况下 Eclipse 运行良好 但存在一些棘手的问题 这些问题似乎与它在容器内运行的事实有关 毕竟
  • SVN 不断提示我输入密码并拒绝缓存我的凭据

    环境 Eclipse Indigo Ubuntu 11 04 Subclipse 1 6 SVN 客户端 Subclipse RabbitVCS 我通过 svn ssh 连接 我的网址如下所示 svn ssh 我的名字 我的域名 路径 我可
  • 如何将库添加到 LIBGDX 项目的依赖项 gradle

    一切都在问题中 我已经尝试了在 SO 和其他网站中找到的所有答案 但没有运气 这就是我迄今为止尝试过的 adding compile fileTree dir lib include jar 到我的 build gradle adding

随机推荐

  • Rails 模型 has_many 具有多个foreign_keys

    对 Rails 来说相对较新 并尝试使用具有姓名 性别 father id 和 mother id 2 个父母 的单个 Person 模型来建模非常简单的家庭 树 下面基本上是我想做的 但显然我不能在 has many 中重复 childr
  • 是否可以从 Android 应用程序执行 Shell 脚本

    我一直在尝试 Android 终端模拟器 Termux 这是一款优秀的应用程序 无需 root 访问即可访问 Android 操作系统 我希望能够实现的是从同一设备上安装的另一个 Android 应用程序中执行 Termux 中的脚本 命令
  • Storm程序的执行流程

    我是 Storm 的新手 试图了解不同方法的执行流程spout to bolt 就像spout有不同的方法一样 下一个元组 open 声明输出字段 启用 停用 Bolt 有类似的方法 准备 执行 清理 声明输出字段 那么谁能告诉我这些方法的
  • 将数据传递给 Polymer 元素

    使用 Web UI 时 我可以将数据传递给组件 如下所示
  • 卷积神经网络的 float16 与 float32

    标准是float32 但我想知道在什么条件下可以使用float16 我比较了运行相同的 covnet 和两种数据类型 没有发现任何问题 对于大型数据集 我更喜欢 float16 因为我可以更少担心内存问题 令人惊讶的是 使用 16 位是完全
  • 在docker中挂载两个嵌套的只读挂载点

    我有一个docker compose文件运行 PHP 并以嵌套方式安装一些卷 它已经工作了两年了 最近我又尝试了一次 但失败了 至少在 Docker for WSL 2 上是这样 以下是 docker compose 文件中挂载的卷 vol
  • 如何设置 git 提交消息的模式?

    我想限制提交的人具有特定的提交消息格式 我该怎么做 例如 Pair Name Story Number Commit Message 有一个pre commit msg or commit msg钩子 你可以使用 http www kern
  • 使用函数给定的值初始化 numpy 数组的最快方法

    我主要对 d1 d2 numpy 数组 矩阵 感兴趣 但这个问题对于具有更多轴的数组来说是有意义的 我有函数 f i j 我想通过该函数的某些操作来初始化数组 A np empty d1 d2 for i in range d1 for j
  • JFrame java中的无限消失-重新出现循环

    作为继这个帖子 https stackoverflow com questions 34593471 why do i need to reset settext in a jlabel to prevent errors 34598241
  • 如何获取侧边栏下拉列表中所有工作表的列表

    我正在谷歌工作表的侧边栏菜单中工作 以设置我的脚本中需要的一些变量 我的脚本已经可以运行了 这很简单 在提交表单时 它将在我的日历中创建一个事件 但是 为了简化脚本的安装 我想在侧边栏中显示一个下拉列表 其中包含工作表中所有工作表的名称 我
  • 克隆Conda根环境不会克隆conda和condo-build

    我在 OS X El Capitan 10 11 4 上使用 conda 4 2 9 我使用以下命令克隆了根环境 conda create n rootclone clone root 它给出了以下消息 The following pack
  • 为什么 spread() 方法在 Sequelize 中不起作用?

    我正在使用一个Sequelize for my node js应用程序 我用findOrCreate 方法创建新用户 如果不存在 据此docs http docs sequelizejs com manual tutorial models
  • 如何更改微调器背景颜色?

    如何更改微调器背景颜色 这种黑色来自风格 如何更改弹出窗口的样式颜色 我想将背景颜色更改为白色而不是黑色 我该如何改变 spinnner
  • 使用 Moose 时在构造时分配方法体的最佳方法是什么?

    我在用着Moose 具体来说MooseX Declare 创建一个迭代器对象 Iter其中有一个next前进状态并返回的方法0 or 1根据需要使用在while陈述 我遇到的问题是 根据构造参数之一的存在 next需要执行两组截然不同的操作
  • 如何将 jquery ui 与 Bower 一起使用?

    我正在尝试yeoman http yeoman io and bower http bower io 我使用以下命令创建了一个 yeoman webapp yo webapp 我想用jqueryui http jqueryui com 所以
  • 如何在组件绘制时创建“请稍候”Swing 对话框

    对于 Swing 来说仍然相对较新 但经过几个小时的搜索 我无法在网上找到答案 因此写了这篇文章 抱歉 如果已经回答但我忽略了它 我在 Swing 应用程序中使用 JFreeChart 有些图表相对较重 180k 数据点 并且 JFreeC
  • 使用javascript正则表达式验证日期的问题[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我正在尝试
  • React Js Es6 风格的三元运算符

    我正在尝试添加以下三元运算符以在我登录时显示我的按钮并且如果我不隐藏它 下面的内容不断向我抛出错误 img src this state photo alt style display display none 您提供给 style 属性的
  • Haskell:如何使运行外部命令的函数超时

    我在函数内调用外部程序 现在我想让这个函数超时 而不仅仅是外部程序 但是在函数超时之后 外部程序仍然在我的计算机上运行 我使用的是debian 直到它完成计算 之后它的线程仍然作为我的主程序的子线程保留在进程表中 直到主程序终止 这是两个最
  • 如何在现有网页Editor Palette中提供自定义组件

    我想在网页编辑器面板中添加一个名为 myHTMLComponent 的新自定义组件 因此 一旦用户使用 WPE 打开任何 html 页面 myHTMLComponentM 就应该出现在那里 我该如何做需要的事情 而且这个组件还需要相应地生成