Idea Plugin Dev-03-02-Popup 组件 优化消息提醒
2. 介绍一下 ui 组件 Popups
Popups(弹出窗口)是用户界面中常用的组件,用于在屏幕上方或下方显示临时的信息、菜单或用户界面。它们通常是短暂的、模态或非模态的,并提供了一种在用户界面上方或下方显示内容的方式,而不中断当前操作或转移焦点。
Popups 可以用于多种场景,例如:
Tooltips(工具提示):当用户将鼠标悬停在组件上时,显示一个短暂的、带有...
2017-10-13 02:24:52 |
Java
Idea Plugin Dev-03-01-User Interface Components
User Interface Components
IntelliJ 平台包含大量自定义 Swing 组件。
在您的插件中使用这些组件将确保您的插件的外观和工作与 IDE 其余部分的 UI 一致,并且与使用默认的 Swing 组件相比通常可以减少代码大小。
值得注意的部分
ps: 这部分没必要全部按照文档来,直接大概学习,使用时遇到问题再参考文档。
The following co...
2017-10-13 02:24:52 |
Java
Idea Plugin Dev-02-04-IDE Infrastructure IDE基础架构
Logging
IntelliJ 平台使用 Logger 抽象类来屏蔽底层日志记录实现和配置。
插件应该获得一个专用实例:
import com.intellij.openapi.diagnostic.Logger;
public class MyPluginClass {
private static final Logger LOG = Logger.getInstance...
2017-10-13 02:24:52 |
Java
Idea Plugin Dev-04-Messaging Infrastructure 消息基础设施
目的
本文档的目的是向开发人员和插件编写者介绍 IntelliJ 平台中可用的消息传递基础结构。
它旨在回答为什么、何时以及如何使用它。
理由
那么,什么是 IntelliJ 平台中的消息传递,我们为什么需要它?
基本上,它的发布者订阅者模式的实现提供了额外的特性,比如在层次结构上广播和特殊的嵌套事件处理(这里的嵌套事件是指从另一个事件的回调中(直接或间接)触发新事件的情况)。
...
2017-10-13 02:24:52 |
Java
Idea Plugin Dev-03-threading 多线程
Read-Write Lock
通常,IntelliJ 平台中与代码相关的数据结构由单个读取器/写入器锁覆盖。
您不得在以下子系统的读取或写入操作之外访问模型:
程序结构接口 (PSI)
虚拟文件系统 (VFS)
项目根模型。
读取权限 Read Access
允许从任何线程读取数据。
从 UI 线程读取数据不需要任何特别的努力。
但是,从任何其他线程执行的读取操作需要包装...
2017-10-13 02:24:52 |
Java
Idea Plugin Dev-02-插件资源销毁 Disposer and Disposable
Disposer and Disposable
IntelliJ 平台的 Disposer 有助于资源清理。
如果子系统保持一组资源与父对象的生命周期一致,则子系统的资源应该在父对象之前或同时向处理器注册以释放。
Disposer 管理的最常见的资源类型是侦听器,但还有其他可能的类型:
文件句柄和数据库连接,
缓存和其他重要的数据结构。
Disposer 是管理 Disposab...
2017-10-13 02:24:52 |
Java
Idea Plugin Dev-01-插件结构 plugin struct
Plugin Content
插件的分发将使用Gradle或Plugin DevKit构建。
插件的.jar文件必须包含以下内容:
配置文件(META-INF/plugin.xml)(插件配置文件)
实现插件功能的类
推荐:插件标志文件(META-INF/pluginIcon*.svg)(插件标志)
请参阅有关优化插件分发文件的重要步骤的“分发大小”。
无法将插件分发定位到特定...
2017-10-13 02:24:52 |
Java
MySQL 中的时间字段
mysql 中的时间字段用什么数据类型
Mysql中用来存储日期的数据类型有三种:Date、Datetime、Timestamp
Date
Date数据类型:用来存储没有时间的日期。Mysql获取和显示这个类型的格式为“YYYY-MM-DD”。
按照标准的SQL,不允许其他格式。在UPDATE表达式以及SELECT语句的WHERE子句中应使用该格式。例如:
mysql> SE...
2017-10-13 01:40:27 |
Mysql