RoboDK插件接口
类参考

PluginExample类展示了RoboDK插件的结构。RoboDK插件必须实现IAppRoboDK和QObject类。更多…

# include <pluginexample.h>

PluginExample的继承图
IAppRoboDK

公共槽

无效 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))从外部应用程序向插件发送特定的命令。更多…
虚拟空 PluginEventTypeEventevent_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函数。更多…

详细描述

PluginExample类展示了RoboDK插件的结构。RoboDK插件必须实现IAppRoboDK和QObject类。

行定义26的文件pluginexample.h

成员功能文档

callback_help

空白callback_help

当用户选择按钮/动作寻求帮助时调用。

行定义283的文件pluginexample.cpp

callback_information

空白callback_information

当选择信息按钮/动作时调用。

行定义186的文件pluginexample.cpp

callback_robotpilot

空白callback_robotpilot

当机器人驾驶员按钮/动作被选中时调用。

行定义266的文件pluginexample.cpp

callback_robotpilot_closed

空白callback_robotpilot_closed

当机器人驾驶员窗口关闭时调用(由停靠窗口触发的事件)

行定义277的文件pluginexample.cpp

PluginCommand ()

QString PluginCommand QString & 命令
QString & 价值
覆盖私人虚拟

可以通过RoboDK API传递特定的命令。例如,父应用程序可以依赖于插件进行某些操作(例如,在RoboDK应用程序中创建本机窗口或利用插件中的RoboDK API速度)。使用RoboDK API (PluginCommand(plugin_name, command, value))从外部应用程序向插件发送特定的命令。

参数
命令
价值
返回

重新实现从IAppRoboDK

行定义119的文件pluginexample.cpp

PluginEvent ()

空白PluginEvent TypeEvent event_type
覆盖私人虚拟

每当出现新的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

PluginItemClick ()

bool PluginItemClick
QMenu * 菜单
TypeClick click_type
覆盖私人虚拟

每次为一个项目创建一个新的上下文菜单时,都会调用这个函数。

参数
项目(IItem)点击
菜单 指向上下文菜单的指针
click_type 点击类型(通常是左键)
返回

重新实现从IAppRoboDK

行定义102的文件pluginexample.cpp

PluginLoad ()

QString PluginLoad QMainWindow * 兆瓦
QMenuBar * 菜单条
QStatusBar * 状态栏
RoboDK rdk
QString & 设置=”“
覆盖私人虚拟

加载插件。这个函数只在插件加载时调用一次(或者用插件启动RoboDK)。

参数
兆瓦 RoboDK QMainwindow。使用此对象在主窗口中添加菜单。
菜单条 指向RoboDK的主菜单栏
状态栏 指向RoboDK的主状态栏
状态栏 指针RoboDK的接口(实现RoboDK API):IRoboDKIItem
设置 其他设置(为将来的兼容性保留)

重新实现从IAppRoboDK

行定义27的文件pluginexample.cpp

PluginLoadToolbar ()

空白PluginLoadToolbar QMainWindow * 兆瓦
int iconsize
覆盖私人虚拟

每次设置工具栏时都会调用此函数。之后至少调用一次这个函数PluginLoad当用户改变视图设置(例如从影院模式改变为普通模式)或改变默认工具栏布局(在工具栏布局中)时,可以调用它。

参数
兆瓦 指向RoboDK主窗口的指针。
iconsize 工具栏图标的大小。尺寸可能会根据屏幕的DPI而有所不同。也可以在“工具-选项-显示”菜单中设置。

重新实现从IAppRoboDK

行定义87的文件pluginexample.cpp

PluginUnload ()

空白PluginUnload
覆盖私人虚拟

这个函数只在卸载插件时调用一次。

重新实现从IAppRoboDK

行定义66的文件pluginexample.cpp

成员数据文档

action_help

QAction * action_help
私人

打开帮助操作。Callback_help是由这个动作触发的。填充工具栏和菜单需要操作,并允许获得回调。

行定义86的文件pluginexample.h

action_information

QAction * action_information
私人

信息的行动。此操作触发Callback_information。填充工具栏和菜单需要操作,并允许获得回调。

行定义80的文件pluginexample.h

action_robotpilot

QAction * action_robotpilot
私人

打开机器人驾驶员动作。Callback_robotpilot由这个动作触发。填充工具栏和菜单需要操作,并允许获得回调。

行定义83的文件pluginexample.h

dock_robotpilot

QDockWidget * dock_robotpilot
私人

指向停靠窗口的指针。

行定义89的文件pluginexample.h

form_robotpilot

FormRobotPilot* form_robotpilot
私人

指向机器人驾驶员表单的指针。

行定义92的文件pluginexample.h

主窗口

QMainWindow *主窗口

RoboDK的主窗口指针。

行定义48的文件pluginexample.h

menu1

QMenu * menu1
私人

指向自定义菜单的指针。

行定义77的文件pluginexample.h

RDK

RoboDK* RDK

的指针。RoboDK API接口。

行定义54的文件pluginexample.h

状态栏

QStatusBar *状态栏

RoboDK的主要状态栏指针。

行定义51的文件pluginexample.h

toolbar1

QToolBar * toolbar1
私人

指向自定义工具栏的指针。

行定义74的文件pluginexample.h


该类的文档是从以下文件生成的: