- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Qt Creator 的向导和配置设置支持variable expansion ,包括 JavaScript 表达式的求值,例如C++ class wizard file template包含:
%{JS: Cpp.openNamespaces('%{Class}')}
Cpp
似乎是一个全局对象。这些定义在 Qt Creator 源代码中的什么位置,以及哪些内容可用?
这些没有记录在任何地方。
最佳答案
JavaScript 变量扩展由 JsExpander
执行在核心插件中。扩展器可以注册QObject
实例并将它们公开为全局JS对象的属性。
要查找所有这些全局对象,请搜索 registerQObjectForJs
方法调用。请参阅github search results for this method .
从 Qt Creator 4.2.1 开始,直到至少 4.6,以下是唯一注册的对象:
Util
- 公开Internal::UtilsJsExtension
,Cpp
- 公开 CppTools::Internal::CppToolsJsExtension
,建模
- 公开ModelEditor::Internal::JsExtension
,QtSupport
- 公开QtSupport::CodeGenerator
,Vcs
- 公开 VcsBase::Internal::VcsJsExtension
.方法参数类型通过QJSEngine
映射到JavaScript类型。例如。要获取 Qt 包含文件,可以进行以下替换:
%{JS: QtSupport.qtIncludes([ '%{Base}' ], [ '%{Base}' ])}
给出签名
QString qtIncludes(const QStringList &qt4, const QStringList &qt5)
方法列表如下。
QString toNativeSeparators(const QString &in) const;
QString fromNativeSeparators(const QString &in) const;
QString baseName(const QString &in) const;
QString fileName(const QString &in) const;
QString completeBaseName(const QString &in) const;
QString suffix(const QString &in) const;
QString completeSuffix(const QString &in) const;
QString path(const QString &in) const;
QString absoluteFilePath(const QString &in) const;
QString relativeFilePath(const QString &path, const QString &base) const;
// File checks:
bool exists(const QString &in) const;
bool isDirectory(const QString &in) const;
bool isFile(const QString &in) const;
// MimeDB:
QString preferredSuffix(const QString &mimetype) const;
// Generate filename:
QString fileName(const QString &path,
const QString &extension) const;
// Generate temporary file:
QString mktemp(const QString &pattern) const;
// Generate a ascii-only string:
QString asciify(const QString &input) const;
// Generate header guard:
QString headerGuard(const QString &in) const;
// Fix the filename casing as configured in C++/File Naming:
QString fileName(const QString &path, const QString &extension) const;
// Work with classes:
QStringList namespaces(const QString &klass) const;
QString className(const QString &klass) const;
QString classToFileName(const QString &klass,
const QString &extension) const;
QString classToHeaderGuard(const QString &klass, const QString &extension) const;
QString openNamespaces(const QString &klass) const;
QString closeNamespaces(const QString &klass) const;
QString fileNameToElementName(const QString &file);
QString elementNameToFileName(const QString &element);
// Ui file related:
// Change the class name in a UI XML form
QString changeUiClassName(const QString &uiXml, const QString &newUiClassName);
QString uiClassName(const QString &uiXml);
// Generic Qt:
QString qtIncludes(const QStringList &qt4, const QStringList &qt5);
bool isConfigured(const QString &vcsId) const;
QString displayName(const QString &vcsId) const;
关于qt - Qt Creator JS 中有哪些 JS 对象可用 : variable expansion?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43763488/
我为一个项目创建了一个基于 Java 的 tic-tac-toe 游戏。该游戏有一个带有 Jbutton 的 Jframe 显示,可通过事件监听器响应鼠标点击。 GUI 显示可通过拖动边缘来扩展。但是
我知道 mat-expansion-panel-headers 是一个按钮。单击该按钮上的任意位置可切换扩展的打开/关闭。但我不想让用户单击标题上的任何位置并打开它。应该有一个小按钮。单击该按钮将打开
我想做一些图像预处理,但有一个步骤我不确定最好的方法。 我有带有注释的有趣区域的 MRI 图像,我检测轮廓并裁剪图像: 我将在此处发布我的代码,以便您了解我如何完成前面的步骤以及我们拥有的数据 low
我无法以编程方式添加 mat-expansion-panel。我想在用户通过单击按钮调用函数时添加它们。根据需要多次添加扩展面板。 我尝试为 mat-expansion 添加 HTML 标签,这是一种
这个问题在这里已经有了答案: Dynamic variable names in Bash (17 个回答) 5年前关闭。 我能够批量执行以下操作,但是在我的一生中,我无法弄清楚如何在 bash 中执
在 makefile 中,我使用 define 指令定义一个变量。该变量将保存我想要执行的可配置命令列表。 我希望此变量获取文件列表(例如 .foo 文件)。这些文件是在 makefile 执行期间创
Cantor expansion自然数n的是 n = ak * k!+a(k − 1) *(k −1)!+.... + a2 * 2!+a1 *1! 其中所有的ai(数字)满足0≤ai≤i 我知道它
有什么办法可以关闭这里文档中的参数扩展吗? shell 命令: $ cat > analyze.sh tmp awk -F '(' '{print $NF}' asr.log | awk '{pr
这个问题在这里已经有了答案: 关闭 11 年前。 Possible Duplicate: Why i am not getting the expected output in the follow
默认情况下,当用户单击标题中的任意位置时,Angular 扩展面板会展开。但是我想更新此功能,以便只有右侧箭头按钮应该触发扩展事件。有人可以帮助我实现这一目标吗?下面是一个示例代码。 https://
我有一个 formArray与多个 formGroups .每个formGroup位于扩展面板内。现在当我点击 "Check what's missing"按钮,表单验证运行并显示无效表单字段的错误。
我正在尝试使用 *ngFor 在 Mat-accordian 中显示多个 Mat-expansion-panel。我需要点击一个我能够做到的按钮来添加一个新的垫子扩展面板。我还需要在单击按钮时展开(打
“变量扩展”是什么意思?它的意思只是“变量定义”,还是其他什么意思? 当我说setLocal EnableDelayedExpansion时会发生什么? Google 并不清楚。 最佳答案 变量扩展表
参见 this Stackblitz . Angular 材mat-expansion-panel允许 lazy rendering , This is the expansion t
这个问题在这里已经有了答案: Explanation of colon operator in ": ${foo=value}" (2 个答案) 关闭 7 年前。 试图理解用 bash 编写的 do
我想知道是否有办法为已禁用的 Mat-Expansion-Panel 设置样式。我在标题中有按钮并与它们交互会切换面板,所以我相信最好只用按钮切换面板并禁用面板本身。 但是,当我禁用面板时,面板内的所
Bash 具有称为历史扩展的功能,您可以使用快捷方式扩展到您之前在 bash 中键入的内容。 示例:!! - 扩展为之前的命令 $> rm -f /var/log/access.log rm: /va
我正在编写 CSS 来更改焦点和悬停时文本和箭头指示器的颜色。然而,指示器箭头单独起作用。当您将鼠标悬停在整个面板上时,我希望它发生变化。目前箭头指示器只有当你直接悬停在它上面时才会改 rebase
我添加了 Angular material mat-expansion-panel 到 select option ,当我点击选择菜单时,mat-expansion-panel 自动打开,任何人都知道
问题: 是否可以让一个函数接收一个既有百分号又有感叹号的参数? 问题: 我在 FOR/D 中以这种方式处理目录: FOR /D %%d IN ("%~1\*") DO ( CALL :proc
我是一名优秀的程序员,十分优秀!