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 mad skills in:

yastui yast c++

This project is part of:

Hack Week 14

Activity

  • over 3 years ago: locilka liked Edit Widget Properties in YDialogSpy
  • over 3 years ago: shundhammer disliked Edit Widget Properties in YDialogSpy
  • over 3 years ago: shundhammer added keyword "c++" to Edit Widget Properties in YDialogSpy
  • over 3 years ago: shundhammer added keyword "yast" to Edit Widget Properties in YDialogSpy
  • over 3 years ago: shundhammer added keyword "yastui" to Edit Widget Properties in YDialogSpy
  • Show History

    Comments

    • lslezak
      over 3 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

    Ricochet: Anonymous P2P instant messaging (janitorial work / maintenance) by wfrisch

    > [Ricochet](https://github.com/ricochet-im/ric...


    HelenOS of the <future> by jjindrak

    I have previously implemented a major portion o...


    Controlling and Testing the YaST UI Remotely (for Integration Tests, openQA) by lslezak

    Hackweek 18 Update

    What Has Been Done ...


    [Windows Subsystem for Linux] Build newest WSL-DistroLauncher in OBS by lkocman

    This is a task to update current WSL-Launcher ...


    [Windows Subsystem for Linux] Build newest WSL-DistroLauncher in OBS by lkocman

    This is a task to update current WSL-Launcher ...