RAD Studio 10.4 中的新增功能:改进了 GetIt 包管理器

IMG_256

RAD Studio 包括产品附加功能、附加库和组件、演示、VCL 和 FMX 样式下载机制以及轻量级包管理器。 某些内容由 Enabakdero 提供,但社区开发人员和第三方供应商提供了大量内容。

在 Delphi/C++ Builder 的下一个版本”10.4″中,GetIt 包管理器将进行重大更改。 主要的新增功能是,每个条目都会添加发布日期,从技术上讲,时间戳。 这是各种附加功能的基础。

  • 按日期对条目列表进行排序,并向上显示最新条目
  • 对于每个已安装的条目,查看是否有更新版本
  • 如果有更新版本,则可以查看所有已安装的条目

筛选器更新

对于 UI,GetIt 对话框 UI 的筛选器部分已更改。

IMG_256

删除旧的无效筛选器(免费/可购买等),并留下两个选项,并添加两个新选项。

  • [全部] 是所有条目
  • Installed 是当前系统上安装的软件包
  • 订阅仅是 Enbakdero 提供的独家内容的新筛选器,仅限于具有有效更新订阅许可证的客户。
  • 更新针对当前系统上安装的包,并列出新版本可用的内容(比已安装版本的时间戳更新的时间戳包)。

下面是使用新筛选器的示例。

IMG_256

另一个更改是 GetIt 对话框的”排序”部分。 在这里,我们添加了按发布日期(或时间戳)对包进行排序的新选项。

GetIt 条目 UI

GetIt 对话框中显示的每个条目的 UI 也会更改,以显示包的发布日期和安装日期(如果已安装包)。 条目的状态会向 UI 添加新按钮,允许您执行某些操作。 这允许您选择可以执行的操作,例如更新包。 以下是条目的初始状态的标准 UI 和安装后更新可用的 UI。

IMG_256

请注意,第二个屏幕截图中显示的两个日期是最近更新发布日期和已安装的版本的发布日期(已安装的项目的时间戳,而不是已安装的日期)。

RAD Studio 修补程序

10.4 中提供的另一个重要功能是通过 GetIt 提供修补程序的功能。 这包括能够让客户知道修补程序已提供。 现在,我们将向欢迎页面添加新部分,并在提供修补程序且未安装时引导您执行此操作。

IMG_256

IMG_256

安装修补程序后,此显示将消失。 结合欢迎页面提示,GetIt 包管理器为修补程序增加了一个新类别。 但是,这并不是唯一的更改。 从技术角度来看,我们引入了延迟安装模式,以便在 RAD Studio 退出(或重新启动时),其他进程可以安装需要更新 RAD Studio IDE 本身使用的文件的修补程序。 它还支持安装复杂的修补程序,这些修补程序必须首先关闭 RAD Studio。

GetIt 的其他功能

除了上面介绍的功能外,GetIt 包管理器还提供了许多新功能和功能改进。

  • 安装包时,可以记录步骤到常规安装中使用的相同日志文件。 它由目录存储库/调试 RAD Studio 注册表项控制。
  • 在”打开项目”操作中,可以打开项目组。
  • 日志文件存储在 GetIt 安装的文件所在的文件夹中。
  • 如果 GetIt 操作失败,操作名称将与内部数字代码一起显示,以便更轻松地了解错误。

总结

如您所见,在 10.4 中,我们做了大量工作,为 GetIt 包管理器增加价值。 我们希望这为 RAD Studio 用户分发组件和库提供了更好的体验。 许多扩展已在进行中。 敬请期待。

如果您订阅了更新订阅,则可以访问测试版。 您仍然可以参加 10.4 beta 计划,请联系我们。

本文是 RAD Studio 未来版本的预览。 由于产品质量和时间表等原因,我们提供的服务可能会更改。 在产品正式发布之前,不能保证最终功能、规格等。

应用一,表格所有行的颜色保持一致:

默认表格是区分奇偶行颜色的,

因为Grid.SelfOwnMaterial.IsDiffOddAndEvent默认是为True的,

效果如下:

如果要将所有行的颜色统一用白色的,

就需要将Grid.SelfOwnMaterial.RowBackColorMaterial.IsDiffOddAndEven设置为False,

背景色就没有了,这时候,

行的背景色由Grid.SelfOwnMaterial.RowBackColorMaterial.BackColor控制,

把它的IsFill设置为True,FillColor设置为White,

效果如下图所示:

这样,表格行的背景色就统计了

应用二,在运行时自定义行的颜色:

在OnPrepareDrawItem事件中,

根据Item来指定Grid.SelfOwnMaterial.RowBackColorMaterial.BackColor,

比如我们要把”李四”那一行的背景色设置为红色,代码如下:

procedure TFrameItemGrid_CustomRowColor.SkinFMXItemGrid1PrepareDrawItem(

Sender: TObject; ACanvas: TDrawCanvas; AItem: TBaseSkinItem;

AItemDrawRect: TRect);

begin

if TSkinItem(AItem).Caption=’李四’ then

begin

Self.SkinFMXItemGrid1.Material.RowBackColor:=TAlphaColorRec.Red;

end

else

begin

Self.SkinFMXItemGrid1.Material.RowBackColor:=TAlphaColorRec.White;

end;

end;

效果如下:

应用三,设置行选中的背景颜色:

行的背景颜色在Grid.SelfOwnMaterial.RowBackColorMaterial.BackColor,那么选中的颜色是在它的PushedEffect中,我们将选中的颜色设置为灰色:

先在设计时先”王一”那一行设置为选中,Item.Selected设置为True,

将Grid.SelfOwnMaterial.RowBackColorMaterial.BackColor.PushedEffect.FillColor设置为Gray,将BackColor.PushedEffect.EffectTypes中勾选drpetFillColorChange,表示选中的时候要改背景色变为灰色,

示例一,区分奇偶行的背景色

默认是区分厅偶行的背景色的,

Grid.SelfOwnMaterial.RowBackColorMaterial.IsDiffOddAndEven为True,

效果如下:

示例二,更改奇偶行的背景色

奇行背景色在Grid.SelfOwnMaterial.RowBackColorMaterial.OddRowBackColor中设置,

偶行背景色在Grid.SelfOwnMaterial.RowBackColorMaterial.EvenRowBackColor中设置,

我们把奇行背景色设置为绿色,偶行背景色设置为红色,

效果如下:

示例一,表格的行分隔线

默认是区分偶行的背景色的,所以没有加分隔线

先把区分奇偶行的背景色去掉,

Grid.SelfOwnMaterial.RowBackColorMaterial.IsDiffOddAndEven设置为False,

表格的分隔线在Grid.SelfOwnMaterial.DrawGridCellDevideMatrial中设置的,

IsDrawRowLine控制行分隔线是否显示,

DrawRowLineParam控制行分隔线的颜色,

IsDrawRowBeginLine用于控制行开始分隔线的显示

IsDrawRowEndLine用于控制行结束分隔线的显示

都设置为True,效果如下:

示例二,表格的列分隔线

表格的分隔线在Grid.SelfOwnMaterial.DrawGridCellDevideMatrial中设置的,

IsDrawColLine用于设置表格的列分隔线,

效果如下:

IsDrawColBeginLine用于控制列开始分隔线的显示

IsDrawColEndLine用于控制列结束分隔线的显示

效果如下: