当前位置: 首页 > article >正文

kicad源代码研究:参照Candence实现工程管理

创建工程:

创建工程和打开工程触发事件:

KICAD_MANAGER_ACTIONS::newProject
KICAD_MANAGER_ACTIONS::openProject

newProject和OpenProject事件响应具体实现,在KICAD_MANAGER_CONTROL类中实现:

 Go( &KICAD_MANAGER_CONTROL::NewProject,         KICAD_MANAGER_ACTIONS::newProject.MakeEvent() );

KICAD_MANAGER_CONTROL::NewProject中的具体实现中调用了KICAD_MANAGER_FRAME的CreateNewProject和LoadProject。

KICAD_MANAGER_FRAME* m_frame;
 m_frame->CreateNewProject( pro );
    m_frame->LoadProject( pro );

ProjectTree页面创建

创建ProjectTree在kiaca/kicad_manager_frame.cpp中是实现,

m_leftWin = new PROJECT_TREE_PANE( this );

btdabs/PROJECT_TREE_PANEZ

void PROJECT_TREE_PANE::ReCreateTreePrj()

FlowManager

/kicad/FLOW_MANAGER_MODEL类:

void FLOW_MANAGER_MODEL::RebuildFlow()
{
CreateFlowNode( wxID_ANY, _("Create"), "", false, parentNode, &KICAD_MANAGER_ACTIONS::createSch );
KICAD_MANAGER_ACTIONS::createSch 

createSch事件的响应函数:

 Go( &KICAD_MANAGER_CONTROL::CreateSch, KICAD_MANAGER_ACTIONS::createSch.MakeEvent() );

http://www.kler.cn/news/156562.html

相关文章:

  • 【恋上数据结构】哈夫曼树学习笔记
  • 全新仿某度文库网站源码/在线文库源码/文档分享平台网站源码/仿某度文库PHP源码
  • 在java中如何解决in unnamed module @0x602ff1d9得问题
  • vGPU_unlock实现消费级显卡虚拟化
  • 分享76个节日PPT,总有一款适合您
  • n皇后问题的最优解及优化
  • 国内的几款强大的AI智能—AI语言模型
  • ES6 generator Symbol yield
  • SpringBoot application.yml配置文件写法
  • homeassistant 随笔
  • java开发之个微机器人的实现
  • 面试题:MySQL为什么选择B+树作为索引结构
  • 135. 分发糖果
  • Linux结束程序运行的命令
  • GPIO的使用--存储系统与位带操作理解
  • 免费AI洗稿软件【2023最新】
  • 【JavaEE】多线程 (2) --线程安全
  • Elasticsearch 相似度评分模型介绍
  • JVM 运行时内存篇
  • ubuntu使用SSH服务远程登录另一台设备
  • 并发编程笔记
  • qiankun: 关于ElementUI字体图标加载不出来的问题
  • C++ Easyx 让圆球跟随鼠标移动
  • 【Node.js】解决npm报错:RequestError: unable to verify the first certificate
  • 手动安装配置dapr环境
  • 人工智能发展史
  • 算法leetcode|91. 解码方法(rust重拳出击)
  • 网易区块链,网易区块链赋能赣州脐橙数字藏品,数字指纹解决方案
  • 【Altera】Cyclone10 FPGA DDR3使用
  • 预约系统源码解析:打造智能定制化预约服务的技术奇迹