jonesa

Forum Replies Created

Viewing 2 posts - 1 through 2 (of 2 total)
  • Author
    Posts
  • in reply to: VCL Component Incompatibilities #41363
    jonesa
    Participant

    Thanks for the workarounds. I just wanted to let you know about various things I am running into while converting my application… I really prefer to use the Ts components so I can see the appearance better in design mode, so I still think it would be valuable to have a TsLabeledEdit.

    As for TsPanel, I ended up patching the code to look for BevelInner=bvNone and BevelOuter=bvNone and just set border max width to 0 (instead of calling SkinBorderMaxWidth), this works for me, and seems like a reasonable thing to do for increased compatibility with VCL.

    After all, the FAQ does say “All items in the package are based on standard items, that is they possess absolutely identical properties and methods. Therefore there is no need of code change.”

    I really think you did an outstanding job on these components, I am just trying to suggest ways to improve them.

    in reply to: Modify skin at runtime? #41355
    jonesa
    Participant

    Yes, so assume that I have the skins configured such that changing the color will actually work.

    Is there a clean way to create a skin section at runtime with modified properties? CommonSections seems to let me create a section, but does not really explain how to modify it (nor make it inherit)… Would I need to create a new section each time I change the color? How do I specify that the new section inherits from FORMTITLE?

    I have gotten this to work with this test code, but I do not think I am supposed to be modifying gd:

    CODE
    void __fastcall TForm1::sColorSelect1Change(TObject *Sender)
    {
    int idx = sSkinManager1->GetSkinIndex(s_FormTitle);
    Smaskdata::TsGeneralData &gendata = sSkinManager1->gd[idx];
    gendata.Color = ((TsColorSelect *) Sender)->ColorValue;
    gendata.HotColor = gendata.Color;
    sSkinManager1->RepaintForms();
    }

Viewing 2 posts - 1 through 2 (of 2 total)