SzakiLaci

Forum Replies Created

Viewing 20 posts - 61 through 80 (of 149 total)
  • Author
    Posts
  • in reply to: Upgrade from v2015.12 to v2018.06 #58447
    SzakiLaci
    Participant

    Can you please put back .FocusedColor property of TsBitBtn from

    public >> to published ?

    It's invisible now in Object inspector and the old projects can not load either.

    (Version: 2018.10.0x 14.03 beta)

    in reply to: Upgrade from v2015.12 to v2018.06 #58314
    SzakiLaci
    Participant
    'Support' wrote:

    Or try to replace the TsTreeView component by the TsTreeViewEx component (items are drawn by AlphaControls engine there).

    It has made NO difference! Drawing images exacly the same (ugly) way πŸ˜€

    'Support' wrote:

    …just add 'XPMan' in the 'uses' clause.

    Results:

    1.) Both TsTreeView and TsTreeViewEx images became beautiful … but:

    2.) ALL TsPanel backgrounds with “CustomColor=True” became TRANSPARENT ! πŸ™

    3.) ALL TsBitBtn background placed on those TsPanels became TRANSPARENT too! πŸ™

    4.) If Skin is OFF >> [background=yellow]”custom colored”[/background] TsPanels do NOT get redrawed >> causing a total chaos.

    [attachment=8876:CustomColorPanels_not_drawing.png]

    'Support' wrote:

    … change the TsVirtualImageList.StdHandleUsed property to False.

    After doing this >> ALL sBitBtn images disappeared!

    'Support' wrote:

    The TsAlphaImageList keeps format of glyphs unchanged.

    You are right. I could not reproduce this with the current version.

    And the .DFM storage is no problem, because after compiling >> it gets the orginal PNG size back.

    in reply to: Upgrade from v2015.12 to v2018.06 #58295
    SzakiLaci
    Participant

    I've just tested todays newest release: 13.19 Stable.

    I see many improvements, but it's still not complete:

    TsTreeView is still not properly drawing images.

    [attachment=8862:stretch_test2.png]

    ______________

    Setting AlphaImageList + VirtList Height or Width still takes several thousands of milliseconds!

    Which is totally unnecessary, since it's only a “virtual size” !!

    The only thing should happen during size-changing is:

    – clear prev. cached images

    – inform components using this (virt)imageList to “redraw” if visible. ( .invalidate is enough)

    What it should NOT do:

    – do not start any stretching operation!

    – do not redraw Images having “Stretched = True”

    I would solve all of these problems by creating and managing a List of components attached to each (virt-)ImageList.

    So you would know what needs to be “alerted of any change”. (resizing, picture replace, etc.)

    Code:
    type
    TattachedComponent = packed record
    obj : TsWinControl;
    type: enum … (sBitBtn, sImage, sTreeView …)
    end;

    _______________

    PNG files are stored in .dfm and .exe files still in HEXA format >> taking up 16x more space than the original image.

    in reply to: Upgrade from v2015.12 to v2018.06 #58286
    SzakiLaci
    Participant
    'Support' wrote:

    Hello!

    AC v13.18 has been released at 28.07.2018

    I will think about the FocusedColor property, how to make it better.

    Thank you VERY MUCH !! πŸ™‚

    I've thought the fixes happened AFTER that. I'll test it now.

    in reply to: Upgrade from v2015.12 to v2018.06 #58282
    SzakiLaci
    Participant
    'Support' wrote:

    Hello

    Issues 2 and 3 are solved in the latest version.

    Hi,

    – I guess you mean 1+3 ? (because “2” has been solved at the beginning.) If yes >> that's very GREAT NEWS πŸ˜€ :a3:

    – There is still the 2018.07.08 version available for download only. Is there any new Beta so I could try?

    'Support' wrote:

    I'm thinking about the FocusedColor property, not sure this property will be used by other people.

    Maybe you can use a helper with new property there?

    There are 69 Main + 33 Sub-properties of this component.

    Do you think it would matter to have +1 ? .. even if nobody else would use it?

    If it stays on default color >> it would skip anyway, so nobody would “get hurt by it” πŸ˜†

    Code:
    If skin is turned OFF >> begin
    If FocusedColor = clBlack then begin
    … your code
    end
    else begin
    … // set background color of button instead of clBtnFace
    … // call standard drawing.
    end;
    end
    else begin …

    PS.: Sorry for the late response. I don't get any email alerts on these forum replays πŸ™

    PS2.: sent you a private msg about donation too.

    in reply to: Upgrade from v2015.12 to v2018.06 #58256
    SzakiLaci
    Participant
    'Support' wrote:

    Thank you for projects, I will check them soon.

    Hi,

    Any news on those fixes maybe?

    Laci

    in reply to: Upgrade from v2015.12 to v2018.06 #58204
    SzakiLaci
    Participant
    'Support' wrote:

    1) Can you show a demo for this issue?

    Sorry for the late response, took me a while to prepare 2 test-demos…

    1.) TsImage + TsAlphaImageList/TsVirtualImageList (stretch) problems:

    download source+exe from here… sImageTest.zip (1.1M:cool:

    2.) [Solved] Panel non-skinned paint works fine with: 'N/A' πŸ™‚

    3.) sTreeViewTest.zip DEMO (1.9M:cool:

    (VirtualList icons not showing, alpha not working, too much left-intent)

    4.) [Solved] acntTypes.pas >> TsHackedControl(xyz) πŸ™‚

    5.) [Solved] sSkinManager.ButtonsOptions.ModalButtonsColoring πŸ™‚

    6.) > “TsBitBtn control has the OnPaint…”

    That would be a very complicated and slow approach. :36:

    – I have 1000+ BitBtns in my APP.

    – only 1 running OnPaint makes debugging nearly impossible too, not to mention 20-50 on every form.

    – every (60+) forms are already prepared with OnCreate(), like:

    Code:
    for i := 0 to f.ComponentCount-1 do begin
    if f.Components is TsBitBtn then
    TsBitBtn(f.Components).FocusedColor := clLime; // or clBlue on some forms…
    end;

    It would be a REALLY REALLY big help, if you could enhance TsBitBtn with “FocusedColor” property yourself,

    with the code I've already presented. PLEASE! :a8:

    (it won't hurt anyone else either, maybe they would benefit also…)

    Edit3: sTreeViewTest DEMO added.

    in reply to: Upgrade from v2015.12 to v2018.06 #58160
    SzakiLaci
    Participant

    I've just tried to send you a Donation via Skrill (Moneybookers) but it said:

    “Transaction Failed

    Recipient can not receive transactions at this time.

    Please contact the recipient for more information.

    ff8095b8-5869-4eaa-88e1-7a0dd4e1bc5d “

    Did you cancel that account?

    Can you try to re-login? (I had to renew my password via “forgotten psw” button)

    in reply to: Upgrade from v2015.12 to v2018.06 #58159
    SzakiLaci
    Participant

    6.) Finally the most important:

    Since 2012 I'm enhancing every version of sBitBtn with a “FocusedColor” property.

    (To show focus for users in NON-skinned state too).

    But I don't know how to implement this into the new version. πŸ™

    It became too complicated for me now.

    [attachment=8831:FocusedColor_of_TsBitBtn_non_Skinned.png]

    The previous code I've always used was this:

    Code:
    unit sBitBtn;

    TsBitBtn = class(TBitBtn)

    private
    FFocusedColor: TColor; // by Laci 2012.08

    public
    property FocusedColor : TColor read FFocusedColor write FFocusedColor default clLime; // by Laci 2012.08

    procedure TsBitBtn.StdDrawItem(const DrawItemStruct: TDrawItemStruct);

    if acThemesEnabled then begin

    else
    begin
    Flags := DFCS_BUTTONPUSH or DFCS_ADJUSTRECT;
    if IsDown then
    Flags := Flags or DFCS_PUSHED;

    if DrawItemStruct.itemState and ODS_DISABLED 0 then
    Flags := Flags or DFCS_INACTIVE;
    // DrawFrameControl doesn't allow for drawing a button as the default button, so it must be done here
    if IsFocused or IsDefault then begin
    Canvas.Pen.Color := clWindowFrame;
    Canvas.Pen.Width := 1;
    Canvas.Brush.Style := bsClear;
    Canvas.Brush.Color := FocusedColor; // by Laci 2012.08
    Canvas.Rectangle(R.Left, R.Top, R.Right, R.Bottom);
    // DrawFrameControl must draw within this border
    InflateRect(R, -1, -1);
    end;
    // DrawFrameControl does not draw a pressed button correctly
    if IsDown then begin
    Canvas.Pen.Color := clBtnShadow;
    Canvas.Pen.Width := 1;
    Canvas.Brush.Color := FocusedColor;//clBtnFace; // by Laci 2012.08
    Canvas.Rectangle(R.Left, R.Top, R.Right, R.Bottom);
    InflateRect(R, -1, -1);
    end
    else
    DrawFrameControl(DrawItemStruct.hDC, R, DFC_BUTTON, Flags);

    if IsFocused then begin
    R := ClientRect;
    InflateRect(R, -1, -1);
    end;
    Canvas.Font := Self.Font;
    if IsDown then
    OffsetRect(R, 1, 1);

    if IsFocused and IsDefault and ((SkinData.SkinManager = nil) or SkinData.SkinManager.ButtonsOptions.ShowFocusRect) then begin
    Canvas.Pen.Color := clWindowFrame; // Laci >>
    Canvas.Brush.Color := FocusedColor;//clBtnFace; // by Laci 2012.08
    InflateRect(R, -2, -2);
    Canvas.Rectangle(R); // << Laci
    R := ClientRect;
    InflateRect(R, -4, -4);
    Canvas.Pen.Color := clWindowFrame;
    Canvas.Brush.Color := clBtnFace;
    DrawFocusRect(Canvas.Handle, R);
    end;
    end;
    DrawCaption(Canvas);
    DrawBtnGlyph(Self, Canvas);

    Canvas.Handle := 0;
    Canvas.Free;
    end;
    end;

    in reply to: Upgrade from v2015.12 to v2018.06 #58158
    SzakiLaci
    Participant

    5.) How do I turn OFF globally this new “auto-bitmap-coloring” on Cancel/Default buttons, etc…

    Searched both at sSkinManager and sSkinProvider, but did not find any property for it.

    Old (OK) / New (BAD):

    [attachment=8829:Cancel_color_old.png] [attachment=8830:Cancel_color_override.png]

    in reply to: Upgrade from v2015.12 to v2018.06 #58157
    SzakiLaci
    Participant

    4.) cConst.pas contained this before:

    Code:
    TsHackedControl = class(TControl)
    public
    property AutoSize;
    property ParentColor;
    property Color;
    property ParentFont;
    property PopupMenu;
    property Font;
    end;

    (You've wrote it, and helped me once with it… no time to search for that old topic now.)

    Old version (OK):

    [attachment=8828:Redish_bitBtn.png]

    At your (previous) recommendation I was able to color the background of a TsBitBtn with this code:

    Code:
    TsHackedControl(bbtn_orderAlert).Color := clRed;

    This is not available any more.

    Why did you delete it ? Is there any better way to do it?

    in reply to: Upgrade from v2015.12 to v2018.06 #58156
    SzakiLaci
    Participant

    3.) TsTreeView does not show any more icons, only if selected.

    (associated with a TsVirtualImageList)

    Code:
    var nod : TTreeNode;

    nod.ImageIndex := 27;
    nod.SelectedIndex := nod.ImageIndex;
    nod.StateIndex := nod.ImageIndex;

    Old version (OK) / New version (BAD):

    [attachment=8826:TreeV_ikon_old.png] [attachment=8827:TreeV_ikon_new_no_icons.png]

    in reply to: Upgrade from v2015.12 to v2018.06 #58155
    SzakiLaci
    Participant

    2.) Creating non-skinned Panels worked before.

    Now it's trying to skin them always, no matter what I set:

    This was happening at 2015 version only in cases, when I've changed skins during runtime.

    Old version OK / New version BAD:

    [attachment=8825:Panels_old.png] [attachment=8824:Panels_new.png]

    Code:
    var
    P: TsPanel;
    begin
    P := TsPanel.Create(Foform);
    P.Parent := Holder_Panel; // this is a skinned panel
    P.SkinData.CustomColor := True;
    P.ParentFont := False;
    P.SkinData.CustomFont := True;
    //P.SkinData.SkinSection := ''; // old version worked by uncommenting this line
    P.Font.Color := $0092B4DC; // halvΓ‘ny barna

    in reply to: Upgrade from v2015.12 to v2018.06 #58154
    SzakiLaci
    Participant

    1.) First of all, MANY thanks for fixing TsImage problem πŸ™‚

    (That's why I'm upgrading now.)

    The new version finally shows ALL pictures, not just some πŸ™‚

    Before (old version BAD) / After (current version OK):

    [attachment=8821:TsImage_old.png] [attachment=8823:TsImage_new.png]

    BUT! A stretching problem still exist:

    – it should NOT load already cached/streched image and resize it!

    – it should get the ORIGINAL image (even if VirtualList is added)

    – I recommend to enhance the GetBitmap function with +1 parameter

    – EXCEPT:

    Code:
    ((Stretched=True) & (Proportional=False) & (“VirtList.Size” = “Self.Size”)) or (AutoSize=TRUE)

    (if the showing-size is the same as the Imagelist-size, than it can use the already cashed+streched image)

    BAD STRETCH:

    [attachment=8822:TsImage_Stretch.png]

    in reply to: [solved] Replying to MainMenu text invisible #53797
    SzakiLaci
    Participant
    'Support' wrote:

    Also, may be you can give me a remote access to your project via the TeamViewer tool.

    Thanks for the “remote help”. You may change the title of the topic to:

    “[solved] Replying to MainMenu text invisible “

    in reply to: [solved] Replying to MainMenu text invisible #53796
    SzakiLaci
    Participant

    [Solution:]

    After changing visibility of sub-menu-items, a refresh has to be called manually:

    Code:
    sSkinProvider1.RepaintMenu;
    in reply to: [solved] Replying to MainMenu text invisible #53771
    SzakiLaci
    Participant
    'Support' wrote:

    I have the problem with reproducing this problem. Can you help me repeat it? Maybe you can give a demo with sources?

    I was afraid You'll ask for a “demo” sadly I can not just “cut out” that part. I will try to reproduce it by myself. In between, if you have any idea where should be the problem / what property should I set to and test it, please share with me πŸ˜‰

    in reply to: [solved] Replying to MainMenu text invisible #53769
    SzakiLaci
    Participant

    I've tried now everything possible:

    – setting MainForm.Enabled := True; at loading

    – sSkinprovider1.MakeSkinMenu := True / False;

    I've turned off everything possible…

    object sSkinProvider1: TsSkinProvider

    AllowAnimation = False

    AllowExtBorders = False

    AllowBlendOnMoving = False

    AllowSkin3rdParty = False

    MakeSkinMenu = True

    ScreenSnap = True

    UseGlobalColor = False

    AddedTitle.Font.Charset = EASTEUROPE_CHARSET

    AddedTitle.Font.Color = clNone

    AddedTitle.Font.Height = -11

    AddedTitle.Font.Name = 'Arial'

    AddedTitle.Font.Style = []

    FormHeader.AdditionalHeight = 0

    SkinData.SkinSection = 'FORM'

    TitleButtons =

    Left = 446

    Top = 24

    end

    object sSkinManager1: TsSkinManager

    AnimEffects.DialogShow.Active = False

    AnimEffects.FormShow.Active = False

    AnimEffects.FormHide.Active = False

    AnimEffects.DialogHide.Active = False

    AnimEffects.Minimizing.Active = False

    AnimEffects.PageChange.Active = False

    AnimEffects.SkinChanging.Active = False

    MenuSupport.IcoLineSkin = 'ICOLINE'

    MenuSupport.ExtraLineFont.Charset = EASTEUROPE_CHARSET

    MenuSupport.ExtraLineFont.Color = clWindowText

    MenuSupport.ExtraLineFont.Height = -13

    MenuSupport.ExtraLineFont.Name = 'Arial'

    MenuSupport.ExtraLineFont.Style = [fsBold]

    SkinDirectory = '..kepekSkins'

    SkinName = 'Sz'#252'rke b'#337'r (DarkGlass)'

    SkinInfo = 'N/A'

    SkinningRules = [srStdForms, srStdDialogs]

    ThirdParty.ThirdEdits = ' '#13#10

    in reply to: [solved] Replying to MainMenu text invisible #53767
    SzakiLaci
    Participant

    DrawNonClientArea = False; (or skin is inactive) >> works “fine” (Except the form-border looks ugly)

    [attachment=7235:NonSkinnedMainMenu.png]

    But If DrawNonClientArea = True :

    [attachment=7236:SkinnedMainMenu_notVisible.png]

    If Form is getting inactive >> repaint redraws

    SzakiLaci
    Participant

    Dear Serge,

    You can Delete this topic.

    Probably the problem was that first had to add the path to search-path before build.

    An other problem was that one of my Units included sHintManager.

Viewing 20 posts - 61 through 80 (of 149 total)