gazebosim/gz-gui

Tutorial with guidelines and tips for creating new widgets

オープン

#339 opened on 2021/12/20

 (0 件のコメント) (1 件のリアクション) (0 人の担当者)C++ (68 件のフォーク)auto 404
OOBE 📦✨documentationenhancementhelp wanted

Repository metrics

Stars
 (103 個のスター)
PR merge metrics
 (PR metrics pending)

説明

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)

コントリビューターガイド