的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" | PluginLoad(QMainWindow *mw, QMenuBar *menubar, QStatusBar *statusbar,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() << "有东西移动了,比如机器人、参考系、对象或工具。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.