Summary

The YaST UI has introspection on the widget level: In any YaST dialog, hit Ctrl-Shift-Alt-Y (Qt UI) to open the YDialogSpy. Use the widget tree that pops up to highlight the corresponding widget in the dialog. Hit the "Properties" button to see the widget's properties (current value, layout stretch factors, layout weights, ...).

Status

Superseded by project YaST Dialog Editor (UI "Designer")

To Do

!! superseded !!

What was missing is a way to edit any of those properties; that would be very useful for fine-tuning dialogs and their resize behaviour. But that's done now in that other project.

Screenshots

https://en.opensuse.org/images/2/28/DialogSpy-01.png

https://en.opensuse.org/images/b/bf/DialogSpy-02-prop.png

Reference

https://en.opensuse.org/openSUSE:YaSTdevelopmentMisc_YDialogSpy

Relevant Source Code

https://github.com/libyui/libyui

In particular:

Implementation Hints

  • Widget properties are defined in a very generic way in the YWidget base class (see YWidget.h and YWidget.cc)

  • A property has a name and a type on that generic level

  • YWidget subclasses add their own properties to the ones inherited from the base class

  • Keep it simple: Only support simple data types for now like string, int, bool

Related Project

YaST Dialog Editor (UI "Designer")

This YDialogSpy property editor extension might be a simple step towards that higher goal of that dialog editor.

Looking for hackers with the skills:

yastui yast c++

This project is part of:

Hack Week 14

Activity

  • over 8 years ago: locilka liked this project.
  • over 8 years ago: shundhammer disliked this project.
  • over 8 years ago: shundhammer added keyword "yastui" to this project.
  • over 8 years ago: shundhammer added keyword "yast" to this project.
  • over 8 years ago: shundhammer added keyword "c++" to this project.
  • over 8 years ago: shundhammer liked this project.
  • over 8 years ago: shundhammer originated this project.

  • Comments

    • lslezak
      over 8 years ago by lslezak | Reply

      The properties editor has been already implemented in https://github.com/libyui/libyui/compare/experimentaluieditor?expand=1 branch as part of the https://hackweek.suse.com/14/projects/1522 project.

    Similar Projects

    Port some classic game to Linux by MDoucha

    Let's pick some old classic game, reverse engin...