的PluginExample类展示了RoboDK插件的结构。RoboDK插件必须实现IAppRoboDK和QObject类。更多…
# include <pluginexample.h>
公共槽 |
|
无效 | callback_information() |
当选择信息按钮/动作时调用。更多… |
|
无效 | callback_robotpilot() |
当机器人驾驶员按钮/动作被选中时调用。更多… |
|
无效 | callback_robotpilot_closed() |
当机器人驾驶员窗口关闭时调用(由停靠窗口触发的事件)更多… |
|
无效 | callback_help() |
当用户选择按钮/动作寻求帮助时调用。更多… |
|
公共属性 |
|
QMainWindow * | 主窗口 |
RoboDK的主窗口指针。更多… |
|
QStatusBar * | 状态栏 |
RoboDK的主要状态栏指针。更多… |
|
RoboDK* | RDK |
的指针。RoboDK API接口。更多… |
|
私有成员函数 |
|
virtual Q_PLUGIN_METADATA(IID "RoboDK.IAppRoboDK" | PluginLoadQMainWindow *mw, QMenuBar *菜单栏,QStatusBar *状态栏,RoboDK*rdk, const QString &settings="")覆盖 |
加载插件。这个函数只在插件加载时调用一次(或者用插件启动RoboDK)。更多… |
|
虚拟空 | PluginUnload()覆盖 |
这个函数只在卸载插件时调用一次。更多… |
|
虚拟空 | PluginLoadToolbar(QMainWindow *mw, int icon_size)覆盖 |
每次设置工具栏时都会调用此函数。之后至少调用一次这个函数PluginLoad当用户改变视图设置(例如从影院模式改变为普通模式)或改变默认工具栏布局(在工具栏布局中)时,可以调用它。更多… |
|
虚拟保龄球 | PluginItemClick(项项目、QMenu *菜单、TypeClickclick_type)覆盖 |
每次为一个项目创建一个新的上下文菜单时,都会调用这个函数。更多… |
|
虚拟QString | PluginCommand(const QString &command, const QString &value)覆盖 |
可以通过RoboDK API传递特定的命令。例如,父应用程序可以依赖于插件进行某些操作(例如,在RoboDK应用程序中创建本机窗口或利用插件中的RoboDK API速度)。使用RoboDK API (PluginCommand(plugin_name, command, value))从外部应用程序向插件发送特定的命令。更多… |
|
虚拟空 | PluginEvent(TypeEventevent_type)覆盖 |
每当出现新的RoboDK事件(如渲染屏幕、添加/删除项目或更改活动站)时,都会调用此函数。如果event_type是EventRender您可以在这里使用渲染自己的图形IRoboDK: DrawGeometry.更多… |
|
继承自的私有成员函数IAppRoboDK | |
虚拟QString | PluginName() = 0 |
返回插件名。尽量发挥创意,确保名字是独一无二的。 |
|
虚拟保龄球 | PluginItemClickMulti(QList <项> &item_list, QMenu *菜单TypeClickclick_type) |
每次为项目列表创建新的上下文菜单时,都会调用此函数。更多… |
|
私有属性 |
|
QToolBar * | toolbar1 |
指向自定义工具栏的指针。更多… |
|
QMenu * | menu1 |
指向自定义菜单的指针。更多… |
|
QAction * | action_information |
信息的行动。此操作触发Callback_information。填充工具栏和菜单需要操作,并允许获得回调。更多… |
|
QAction * | action_robotpilot |
打开机器人驾驶员动作。Callback_robotpilot由这个动作触发。填充工具栏和菜单需要操作,并允许获得回调。更多… |
|
QAction * | action_help |
打开帮助操作。Callback_help是由这个动作触发的。填充工具栏和菜单需要操作,并允许获得回调。更多… |
|
QDockWidget * | dock_robotpilot |
指向停靠窗口的指针。更多… |
|
FormRobotPilot* | form_robotpilot |
指向机器人驾驶员表单的指针。更多… |
|
其他继承成员 |
|
继承的私有类型IAppRoboDK | |
枚举 | TypeClick{ ClickNone= 1,ClickLeft= 0,ClickCtrlLeft= 1,ClickRight= 2, ClickDouble= 3 } |
点击的类型PluginItemClick函数。更多… |
|
枚举 | TypeEvent{ EventRender= 1,EventMoved= 2,EventChanged= 3,EventChangedStation= 4, EventAbout2Save= 5,EventAbout2ChangeStation= 6,EventAbout2CloseStation= 7,EventTrajectoryStep= 8 } |
事件类型PluginEvent函数。更多… |
|
|
槽 |
当用户选择按钮/动作寻求帮助时调用。
行定义283的文件pluginexample.cpp.
|
槽 |
当选择信息按钮/动作时调用。
行定义186的文件pluginexample.cpp.
|
槽 |
当机器人驾驶员按钮/动作被选中时调用。
行定义266的文件pluginexample.cpp.
|
槽 |
当机器人驾驶员窗口关闭时调用(由停靠窗口触发的事件)
行定义277的文件pluginexample.cpp.
|
覆盖私人虚拟 |
可以通过RoboDK API传递特定的命令。例如,父应用程序可以依赖于插件进行某些操作(例如,在RoboDK应用程序中创建本机窗口或利用插件中的RoboDK API速度)。使用RoboDK API (PluginCommand(plugin_name, command, value))从外部应用程序向插件发送特定的命令。
命令 | |
价值 |
重新实现从IAppRoboDK.
行定义119的文件pluginexample.cpp.
|
覆盖私人虚拟 |
每当出现新的RoboDK事件(如渲染屏幕、添加/删除项目或更改活动站)时,都会调用此函数。如果event_type是EventRender您可以在这里使用渲染自己的图形IRoboDK: DrawGeometry.
event_type | 事件类型(EventRender, EventMoved, EventChanged) |
显示/渲染3D场景。此时我们可以调用RDK->DrawGeometry来定制显示的场景
qDebug() << "有东西移动了,比如机器人、参考系、对象或工具。这是很有可能的,一个EventRender将在这个事件后立即触发qDebug() << "==== EventMoved ====";qDebug() << "一项已被添加或删除。当前站点:" << RDK->getActiveStation()->Name();如果我们添加了一个新项目(例如,一个参考框架),EventMoved很可能会跟随新添加项目的更新位置。这个事件也会在我们改变活动站和新站获得焦点时触发。检查站点是否更改和加载设置的示例用户请求保存项目和RDK文件将被保存到磁盘。此时建议保存所有特定站点的设置。例如,您可以使用RDK。setParam("ParameterName", "ParameterValue")或RDK。中bytearray setData(“ParameterName”)
用户请求打开一个新的RoboDK站(RDK文件)或者用户正在不同的站之间导航。此事件在当前站点失去焦点之前触发。
用户请求关闭当前打开的RoboDK站(RDK文件)。如果触发用户和相应的事件,可能会保存RDK文件。
重新实现从IAppRoboDK.
行定义132的文件pluginexample.cpp.
每次为一个项目创建一个新的上下文菜单时,都会调用这个函数。
项 | 项目(IItem)点击 |
菜单 | 指向上下文菜单的指针 |
click_type | 点击类型(通常是左键) |
重新实现从IAppRoboDK.
行定义102的文件pluginexample.cpp.
|
覆盖私人虚拟 |
加载插件。这个函数只在插件加载时调用一次(或者用插件启动RoboDK)。
兆瓦 | RoboDK QMainwindow。使用此对象在主窗口中添加菜单。 |
菜单条 | 指向RoboDK的主菜单栏 |
状态栏 | 指向RoboDK的主状态栏 |
状态栏 | 指针RoboDK的接口(实现RoboDK API):IRoboDK和IItem |
设置 | 其他设置(为将来的兼容性保留) |
重新实现从IAppRoboDK.
行定义27的文件pluginexample.cpp.
|
覆盖私人虚拟 |
每次设置工具栏时都会调用此函数。之后至少调用一次这个函数PluginLoad当用户改变视图设置(例如从影院模式改变为普通模式)或改变默认工具栏布局(在工具栏布局中)时,可以调用它。
兆瓦 | 指向RoboDK主窗口的指针。 |
iconsize | 工具栏图标的大小。尺寸可能会根据屏幕的DPI而有所不同。也可以在“工具-选项-显示”菜单中设置。 |
重新实现从IAppRoboDK.
行定义87的文件pluginexample.cpp.
|
覆盖私人虚拟 |
|
私人 |
打开帮助操作。Callback_help是由这个动作触发的。填充工具栏和菜单需要操作,并允许获得回调。
行定义86的文件pluginexample.h.
|
私人 |
信息的行动。此操作触发Callback_information。填充工具栏和菜单需要操作,并允许获得回调。
行定义80的文件pluginexample.h.
|
私人 |
打开机器人驾驶员动作。Callback_robotpilot由这个动作触发。填充工具栏和菜单需要操作,并允许获得回调。
行定义83的文件pluginexample.h.
|
私人 |
指向停靠窗口的指针。
行定义89的文件pluginexample.h.
|
私人 |
指向机器人驾驶员表单的指针。
行定义92的文件pluginexample.h.
QMainWindow *主窗口 |
RoboDK的主窗口指针。
行定义48的文件pluginexample.h.
|
私人 |
指向自定义菜单的指针。
行定义77的文件pluginexample.h.
RoboDK* RDK |
的指针。RoboDK API接口。
行定义54的文件pluginexample.h.
QStatusBar *状态栏 |
RoboDK的主要状态栏指针。
行定义51的文件pluginexample.h.
|
私人 |
指向自定义工具栏的指针。
行定义74的文件pluginexample.h.