Wanderer Icon Exchange

miker1264 · 17984

miker1264

  • Legendary Member
  • *****
    • Posts: 1827
    • Karma: +84/-6
Reply #75 on: December 21, 2021, 05:02:05 PM
Special because until today on AROS One x86 "Wanderer" you couldn't change the icons and you couldn't change the type of icons, AROS One 68k and AROS x86 don't use Dopus Magellan by choice :)

AMIGASYSTEM

Would you like to test this 68k app with some of your DualPNG 32bit Icons? The x86 and x86_64 versions will be available soon.

The top requester ['?'] is for the source icon. The bottom requester is for the dest icon. Copy from source to dest.

The arrow button in the middle is "Exchange". The application will copy images from source to dest while preserving tooltypes, etc from the dest.

It does not feature Drag-n-Drop. Just a simple icon exchange. But I'm working on another app "IconDrop" that WILL have Drag-n-Drop to load icons.


« Last Edit: December 21, 2021, 06:50:51 PM by miker1264 »



AMIGASYSTEM

  • Global Moderator
  • Legendary Member
  • *****
    • Posts: 3740
    • Karma: +69/-2
  • AROS One
    • AROS One
Reply #76 on: December 22, 2021, 06:08:10 AM
Perfect miker first step has been done, IconClone works well on AROS One 68k, I have created DualPNG icons in AROS One and IcarOS style, I attach archive.
 
With IconDrop will be even more convenient in the presence of many icons, the exchange type of Icon if I understand correctly we will have it on Wanderer?

I have to investigate the Arial font because the size "16" gives problems even to IconClone :-\  with the "13" is perfect :)



« Last Edit: December 22, 2021, 05:47:37 PM by AMIGASYSTEM »



miker1264

  • Legendary Member
  • *****
    • Posts: 1827
    • Karma: +84/-6
Reply #77 on: December 22, 2021, 12:22:02 PM
It's working correctly on x68_64 now and x86.

See screenshot.



AMIGASYSTEM

  • Global Moderator
  • Legendary Member
  • *****
    • Posts: 3740
    • Karma: +69/-2
  • AROS One
    • AROS One
Reply #78 on: December 22, 2021, 02:13:00 PM
Perfect, I notice in your screenshot a problem with the box that hosts the icon, that is due to the large font !

Have you downloaded my icons created for IconClone?



miker1264

  • Legendary Member
  • *****
    • Posts: 1827
    • Karma: +84/-6
Reply #79 on: December 22, 2021, 03:35:15 PM
Perfect, I notice in your screenshot a problem with the box that hosts the icon, that is due to the large font !

Have you downloaded my icons created for IconClone?

I noticed that problem also. At first I thought my coordinates for "EraseRectangle" to erase a portion of the RasterPort was wrong. But I realized that these coordinates were correct on AROS 68k and x86. But on x86_64 where the screenshot was from there's a problem with GadTools Layout. Nor sure why.

I will look into that at some point for GadTools Layout on xi6_64. It seems the values for WinBorderTop & WinBorderBottom are correct. But WinBorderLeft & WinBorderRight has issues. But only on 64bit. M68k and 32bit are ok. The display GadTools ok.

I haven't seen your icons for IconClone.
« Last Edit: December 22, 2021, 03:39:41 PM by miker1264 »



AMIGASYSTEM

  • Global Moderator
  • Legendary Member
  • *****
    • Posts: 3740
    • Karma: +69/-2
  • AROS One
    • AROS One
Reply #80 on: December 22, 2021, 03:41:57 PM
The icons are attached in the "post above" click here:

https://ae.amigalife.org/index.php?action=dlattach;topic=814.0;attach=2051



This morning I did some tests and I've ascertained that the problem is caused by the usual Arial font above "13".

To confirm I tried another version of Font Arial found on the Web and the problem has decreased, only the back side, if you use Font Arial "16" native AROS then all sides of the square are involved, see screenshot !


miker1264

  • Legendary Member
  • *****
    • Posts: 1827
    • Karma: +84/-6
Reply #81 on: December 22, 2021, 04:41:30 PM
That's the same problem as on x86_64. But it is ok on 68k & x86.

GadTools can't calculate the correct layout based on font size above a certain range? Interesting problem. Maybe there's a solution somewhere that will fix all these issues? We'll see.

Maybe a possible solution is to use "struct TextAttr *ng_TextAttr" to set a font for the gadget to use independent of screen font.

I downloaded the icons. I like the blue one size 48. It's similar to one I'm using now.
« Last Edit: December 22, 2021, 05:10:41 PM by miker1264 »



miker1264

  • Legendary Member
  • *****
    • Posts: 1827
    • Karma: +84/-6
Reply #82 on: December 23, 2021, 12:22:09 AM
AMIGASYSTEM

I believe I solved part of the mystery...it doesn't depend on the screen font size!

I noticed that the shifted GUI affects the Bevel Boxes but the Buttons are correct.

The Bevel Boxes use Absolute Coordinates from the outer left corner of the window frame. Notice the difference between
the frame thickness for x86_64 on the left & x86 on the right. In pixel values the difference is 4 pixels for x86_64 vs. 9 pixels for x86.
So using basic math if the outer group box is at 15 pixels from the outer edge that means it is 15-9=6 vs 15-4=11 which is 5 pixels
too much. So with a window border thickness of 4 the Bevel Boxes are shifted right by 5 pixels causing the visual distortion.

So GadTools is doing the Layout correctly. But to correct the offset I must now use leftoffset = scr->WBorLeft + 4. That means
instead of DrawBevelBox(win->RPort, 26... I must use DrawBevelBox(win->RPort, leftoffset + 13... which will place it in the correct
offset from the inside left window border. Then the offsets will all look correct. But it also affects my coordinated for EraseRect.

« Last Edit: December 23, 2021, 12:44:43 AM by miker1264 »



AMIGASYSTEM

  • Global Moderator
  • Legendary Member
  • *****
    • Posts: 3740
    • Karma: +69/-2
  • AROS One
    • AROS One
Reply #83 on: December 23, 2021, 12:52:35 AM
So this would also solve the problem on DTConvertGUI !


miker1264

  • Legendary Member
  • *****
    • Posts: 1827
    • Karma: +84/-6
Reply #84 on: December 23, 2021, 12:53:36 AM
So this would also solve the problem on DTConvertGUI !

Most likely. I will look at that next and make adjustments for the GUI.

I must first correct the coordinates for EraseRectangle that I use to "erase" part of the RasterPort for
each Raised Panel used for Icon Image Display. I must erase after each display in case an image is larger.

Notice the white lines to the left side of each Raised Panel on the bottom image. Notice the lines on top.
In the top image you can see that the left side of each Raised Panel has been "Erased" by bad coordinates.
« Last Edit: December 23, 2021, 01:00:29 AM by miker1264 »



miker1264

  • Legendary Member
  • *****
    • Posts: 1827
    • Karma: +84/-6
Reply #85 on: December 23, 2021, 02:12:19 AM
Ok. After making several adjustments the new version is working on AROS m68k & AROS x86 & AROS x86_64.

Here are all the release versions in one zip file. See screenshot for Before & After Corrections on AROS One x86.

The top view is before making corrections to the GUI Offsets. The bottom view is after the GUI Offset corrections.



OlafS3

  • Legendary Member
  • *****
    • Posts: 544
    • Karma: +50/-8
Reply #86 on: December 23, 2021, 03:13:56 AM
thank you very much Miker



AMIGASYSTEM

  • Global Moderator
  • Legendary Member
  • *****
    • Posts: 3740
    • Karma: +69/-2
  • AROS One
    • AROS One
Reply #87 on: December 23, 2021, 04:51:46 AM
Perfect miker, it works well even on AROS One x86, finally you can replace the icons on Wanderer x86, remains the problem Fonts "Ariel", with value 13 perfect no problem, with 15 problem on one side, with value 16 problem on two sides.

N.B. the Blue icons are folder icons of the new version of AROS One, I see that you use a very old version of AROS One :)


Amiwell

  • Legendary Member
  • *****
    • Posts: 2616
    • Karma: +35/-4
  • Peace
Reply #88 on: December 23, 2021, 06:13:38 AM
is the final release miker



miker1264

  • Legendary Member
  • *****
    • Posts: 1827
    • Karma: +84/-6
Reply #89 on: December 23, 2021, 08:30:32 AM
is the final release miker

Yes. This is the final release.