Author Topic: New MultiView  (Read 866 times)

miker1264

  • Senior Member
  • ****
  • Posts: 327
  • Karma: +12/-1
New MultiView
« on: October 19, 2019, 03:44:02 AM »
This is not another one of my Viewer programs...

Actually, this is Icaros Desktop 64bit Unofficial MultiView.

I enabled Save As to save picture files using picture datatypes.
It can Save As as you can see, but it can't yet Save As IFF. (I'm working on that.)
Now I can use Save As to test the save functions for Picture Datatypes.

Now I will move my BMP, PCX and TGA datatypes to Icaros x86-64 to continue testing.
Now that I have a modified MultiView to test with I can start working on Save ILBM. ;-)

Hopefully, soon MultiView will be able to Save As IFF. How long has AROS waited for this?
« Last Edit: October 19, 2019, 05:46:19 AM by miker1264 »

salvo

  • Member
  • ***
  • Posts: 182
  • Karma: +0/-0
  • Invalid Civil
Re: New MultiView
« Reply #1 on: October 19, 2019, 06:29:46 AM »
really nice miker :D
Icaros on HP Z600 Intel Xeon X5570 3 Ghz, Nvidia 8400gs
Support
https://www.actionaid.it/
https://www.amref.it/

salvo

  • Member
  • ***
  • Posts: 182
  • Karma: +0/-0
  • Invalid Civil
Re: New MultiView
« Reply #2 on: October 19, 2019, 06:55:59 AM »
miker if I compile with the procedure described by paolone it will work in its alpha distribution?
Icaros on HP Z600 Intel Xeon X5570 3 Ghz, Nvidia 8400gs
Support
https://www.actionaid.it/
https://www.amref.it/

miker1264

  • Senior Member
  • ****
  • Posts: 327
  • Karma: +12/-1
Re: New MultiView
« Reply #3 on: October 19, 2019, 07:07:23 PM »
miker if I compile with the procedure described by paolone it will work in its alpha distribution?

How do you mean? Using the VMWare Virtual Machine that is provided for the build system you can build AROS including MultiView.

I haven't committed any changes to MultiView. I'm just using it for testing for the moment but if it works well and people like it maybe it can be part of MultiView in future.

I'm thinking about adding Save As PNG for Picture DataTypes and splitting About Box into About MultiView and Picture Information. I'm also working on Save ILBM for ILBM DataType. All those things should make MultiView better than it is in my opinion. I might change the icon slightly so we know it was modified with some added features.

What I do won't break compatibility because I'm just adding some menu items and one or two new functions such as "DoWriteMethod_PNG" and "Picture_Information". Other than that it's the same as it was. It still works the same.
« Last Edit: October 19, 2019, 07:12:46 PM by miker1264 »

Yanosh

  • Newbie
  • *
  • Posts: 37
  • Karma: +0/-0
Re: New MultiView
« Reply #4 on: October 19, 2019, 08:14:34 PM »
It would be nice if "fit to windows" was the standard way to show the pictures.

miker1264

  • Senior Member
  • ****
  • Posts: 327
  • Karma: +12/-1
Re: New MultiView
« Reply #5 on: October 19, 2019, 09:08:58 PM »
It would be nice if "fit to windows" was the standard way to show the pictures.

That's a good point. Currently I believe if the picture is too big for the viewing area scrollbars are added. Fit to Window with the window being the max viewing size might be better as default. Maybe use MultiView Prefs.

paolone

  • Moderator
  • Senior Member
  • *****
  • Posts: 293
  • Karma: +3/-0
Re: New MultiView
« Reply #6 on: October 21, 2019, 03:29:08 PM »
It would be nice if "fit to windows" was the standard way to show the pictures.


Since Miker already agreed... here's my +2 from me!

miker1264

  • Senior Member
  • ****
  • Posts: 327
  • Karma: +12/-1
Re: New MultiView
« Reply #7 on: October 22, 2019, 02:38:24 AM »
The modification to MultiView works well enough with Fit_To_Window as the default setting. But I have to disable Fit_To_Window now.
However, the way it should work is that if the image is larger than the display area it should be resized. But if it's smaller, don't resize.

Still working on Save As PNG, but it's not as easy as you might think. I'll work on the resize if oversized functionality as well to make it work.
Maybe it would be better to add another menu checkit item "Resize Image" which will resize if oversized. That is the desired effect we want.
Fit_To_Window is actually intended to be used when resizing an image in a window using the resize gadget at the window's lower left corner.

As an added benefit using Save As PNG, I'm hoping that we can resize with Fit_To_Window then save. That is a quick way to resize images!
« Last Edit: October 22, 2019, 03:01:23 AM by miker1264 »

miker1264

  • Senior Member
  • ****
  • Posts: 327
  • Karma: +12/-1
Re: New MultiView
« Reply #8 on: October 22, 2019, 04:37:35 AM »
As far as Save As PNG I'm making progress in that direction. Notice that Clown4.png has 33 bytes.

In the Hex Editor that represents the PNG signature, the IHDR and 4 trailing bytes. The original PNG
image is shown in the Hex Editor below that for comparison. It only has 33 bytes because I only copied
the bmhd data from the MultiView dto (datatype object) to the ndto (new datatype object - png). The
next step is to copy data from the bitplanes of dto bitmap directly to bitplanes of ndto which should
result in adding the IDAT and IEND to the PNG file. Then MultiView will have saved a new PNG file!

Success! Now MultiView can Save 24bit PNG. So next I'll expand it to other bitdepths as well. :-)

Here is the 64bit binary for MultiView that can save PNG. Open 24bit jpeg, pnm, png or bmp file.
Choose Save As PNG then select a location to save and change the file extension to .png to save a file.

Note: It currently only works with 24bit RGB picture files! It won't work yet with other bitdepths.
« Last Edit: October 22, 2019, 08:03:22 AM by miker1264 »

paolone

  • Moderator
  • Senior Member
  • *****
  • Posts: 293
  • Karma: +3/-0
Re: New MultiView
« Reply #9 on: October 22, 2019, 09:35:14 AM »
Great!


Should I add your new binary to Icaros 64, is the current PNG datatype good, or shall I update it as well?

miker1264

  • Senior Member
  • ****
  • Posts: 327
  • Karma: +12/-1
Re: New MultiView
« Reply #10 on: October 22, 2019, 03:16:32 PM »
Great!


Should I add your new binary to hIcaros 64, is the current PNG datatype good, or shall I update it as well?

No. Not yet.
The MultiView 64bit binary is just a sample. It's not done yet. Maybe in a few more days. The png datatype is unchanged. The bmp datatype was modified but it only currently saves bmps on 32bit. It doesn't work on 64bit.

When the save function is finished in a few days what should we call it - "the debut of MultiView2 capable of saving using picture datatypes"?

Rename your 64bit MultiView. Copy this one to its location and try it for saving 24bit png.
« Last Edit: October 22, 2019, 04:28:23 PM by miker1264 »

miker1264

  • Senior Member
  • ****
  • Posts: 327
  • Karma: +12/-1
Re: New MultiView
« Reply #11 on: October 22, 2019, 07:07:16 PM »
@paolone

Some ideas have been presented for "New MultiView" that include Image Resize as default, showing Datatypes List, saving DT List to file, separating About Box and Picture Information in addition to some cosmetic changes as far as how information is displayed. Being able to Save Settings is an added benefit.

I chose to include Save As PNG because most modern graphics programs support PNG but few support ILBM. It also now gives us a quick way to convert between ILBM and PNG, or other types and PNG. That makes it more useful to users.

I haven't yet explored how it interacts with IFF Icons and PNG Icons. But if it can display the icon images for both ilbm and png then we can save both types of icon images quite easily as well.

Being able to Save As PNG opens up an entirely new way of using MultiView!

In a related development as far as Picture Files it has also been proposed to integrate the functionality of picture requester with Wanderer to allow a third view mode called "Tile View" (thumbnails). Using Tile View we can quickly view the shiny new PNG and IFF files that the New MultiView will be producing.
« Last Edit: October 22, 2019, 07:24:56 PM by miker1264 »

Yanosh

  • Newbie
  • *
  • Posts: 37
  • Karma: +0/-0
Re: New MultiView
« Reply #12 on: October 22, 2019, 09:19:18 PM »
I don't know how much work this would need, but it would be nice to have a little gui with few buttons, like "fit to window" or "full size" and "+" and "-" for zoom in and zoom out. Maybe add a keyword for "fit to window"? Is this too much?

miker1264

  • Senior Member
  • ****
  • Posts: 327
  • Karma: +12/-1
Re: New MultiView
« Reply #13 on: October 22, 2019, 09:51:58 PM »
I don't know how much work this would need, but it would be nice to have a little gui with few buttons, like "fit to window" or "full size" and "+" and "-" for zoom in and zoom out. Maybe add a keyword for "fit to window"? Is this too much?

Fit_To_Window is there under Picture Menu. It is for Resizing the window. I'd like to add Resize Image as default when opening oversized images the will be resized to fit.

miker1264

  • Senior Member
  • ****
  • Posts: 327
  • Karma: +12/-1
Re: New MultiView
« Reply #14 on: October 24, 2019, 03:13:23 AM »
MultiView 64bit doesn't show oversized 32bit PNG images well after being resized. But when I use MultiView to Save the 32bit PNG file to RamDisk is appears just fine. (Yes. MultiView can now Save As PNG, 24bit & 32bit).  :-)

The DoScaleMethod works fine for MultiView 32bit, but as you can see it does not display correctly for 64bit. But this same image saves just fine with current size.
« Last Edit: October 24, 2019, 05:04:02 AM by miker1264 »