gazebosim/gz-gui

Tutorial with guidelines and tips for creating new widgets

开放

#339 创建于 2021年12月20日

 (0 条评论) (1 个反应) (0 位负责人)C++ (68 个派生)auto 404
OOBE 📦✨documentationenhancementhelp wanted

仓库指标

星标
 (103 个星标)
PR 合并指标
 (平均合并 8小时 31分钟) (30 天内合并 3 个 PR)

描述

For the GUI to have a uniform look and feel, it's important that developers use the same styling when creating new widgets. Ignition uses material as a design system, so we can refer to that documentation when looking for guidelines for the visual look of the application. The part that needs documenting is how to apply that when developing Ignition.

Desired behavior

When a new developer doesn't know what QtQuick controls to use, or how to position widgets on a plugin, they can look into that tutorial as a reference.

Alternatives considered

We could have more examples.

Implementation suggestion

Some of the things that I think should be documented:

  • Sharing properties between QML and C++
  • Adding images to a plugin
  • Using material colors instead of custom hardcoded colors
  • Creating responsive layouts that adapt to the window size
  • Leveraging unicode symbols instead of creating new icons
  • Using appropriate widgets according to data type (i.e. spins for numbers, text fields for strings...)
  • Always displaying units
  • Using custom Ignition widgets when needed (i.e. IgnSpinBox instead of SpinBox)

贡献者指南