Hi

So I started looking at converting the WinBits WB_* defines in

  include/tools/wintypes.hxx

to an 'enum class', and after a few changes and discovering that there are lots of WB_ macros scattered around that simply define a new WB_ value as pointing to an existing one e.g. in

  include/svtools/ivctrl.hxx
  #define WB_ICON         WB_RECTSTYLE
  #define WB_SMALLICON    WB_SMALLSTYLE

, I think that this whole thing needs a rethink.

Specifically, I think that

(*) we need to push these style things down to the subclass-specific level where each one applies, instead of multiplexing them into a single field at the root level

(*) we need to convert to using setter methods to turn them on and off

Further, I would suggest that

(*) the setter methods have the style

        MyWindowSubclass& MyWindowSubClass::SetFoo(bool b = true)

    so to make the code easier to write when setting multiple style flags i.e. 
we can then write

        MyWindowSubclass x();
        x.SetFoo().setBar();


If there is agreement on this, I will create an EasyHack for this.

Regards, Noel.

Disclaimer: http://www.peralex.com/disclaimer.html


_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice

Reply via email to