History log of /haiku/src/apps/showimage/ShowImageApp.cpp
Revision Date Author Comments
# be63ec85 07-Apr-2015 Janus <janus2@ymail.com>

Showimage: Wait for loader threads on exit.

* Uses find_thread to wait for loader threads.
(better solutions are welcome)
* As suggested by Axel the cache isn't static anymore.
* Fixes 8902.


# 537a273c 24-Jun-2012 Humdinger <humdingerb@gmail.com>

Coding style changes, no functional change.
Hope all's OK, Filter.h is still mostly untouched as it's quite messy with
many exessive commenting.


# 541ff51a 15-Apr-2012 Oliver Tappe <zooey@hirschkaefer.de>

Cleanup BCatalogAddOn.

* rename BCatalogAddOn to BCatalogData, since it doesn't represent an
add-on, but rather the catalog data provided by an add-on
* move BCatalogData out of Catalog.{h,cpp} into its own header and
implementation file
* drop BCatalogData::MarkForTranslation() methods, they're not needed
* drop BCatalog::GetNoAutoCollectString() methods, they're not being
used anywhere
* cleanup the B_TRANSLATE_... macros somewhat
* add versions of the B_TRANSLATE_MARK_... macros that are meant to be
used in void context (when the string isn't being used by the program,
just meant to be picked up by collectcatkeys).
* adjust several apps to use B_TRANSLATE_MARK_..._VOID where needed
* adjust users of BCatalogAddOn accordingly


# 11c7ff53 25-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Removing most About windows and menu items as discussed here
http://www.freelists.org/post/haiku-commits/r40968-in-haikutrunksrcapps-activitymonitor-bootmanager-charactermap-codycam-deskbar,3
Leaving them for now in replicants, and in Terminal, according to (my interpretation of) the instructions here
http://dev.haiku-os.org/browser/haiku/trunk/src/apps/terminal/README.GPL_to_OBOS#L70
Some sporadic cleanup.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41108 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 560ff447 25-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Use resource definition files instead of DoCatalogs rule. Rename B_TRANSLATE_APP_NAME and related macros to the more generic B_TRANSLATE_SYSTEM_NAME, to also fits add-ons, folders, etc, and make 'System name' its standard context. Change CodyCam and PoorMan's app signatures to match the overall x-vnd.Haiku-App pattern. Some clean-up. Make SlideShowSaver build again.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41103 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 71302e7c 16-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Further localization. Making use of B_TRANSLATE_APP_NAME, AboutWindow. Cleanups. Please review/test changes in Terminal.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40973 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9473d287 20-Feb-2011 Stephan Aßmus <superstippi@gmx.de>

* Added functionality for initializing and retrieving future tool bar
icons.
* Imported a few of zuMi's awesome tool bar icons as C code. Doing
it this way imposes the least start up panalty (10ms on my Core 2 Duo,
which is imperceptable when usually opening some largish image).
* The init code is run, but there is no tool bar yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40588 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5b76e505 19-Feb-2011 Stephan Aßmus <superstippi@gmx.de>

Two unrelated features mangled into one commit:
* Added a Rating menu to the ShowImage window, to easily
give the current image a rating (uses same attribute as other
types of media, i.e. MediaPlayer).
* ShowImage no longer tries to adapt the window size of newly
opened windows to the image that is loaded into them. I've found
that the most annoying ShowImage misbehavior. I don't know why
this was thought to be a good idea, maybe it was useful in
BeOS presentations when you select 20 images in a folder and
make them pop up all at once. I however use ShowImage mainly
to view at fotos, all of which are larger than my screen, so
ShowImage would basically _aÃlways_cover up everything, even
though there is the fullscreen mode for that. Now, ShowImage
remembers the last used window position, new windows will open
at an offset. In another words, you can now have a Tracker
folder of images open, view one, close the window, view another,
ShowImage will open at the previous location, all very convenient
and expected.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40556 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3b693801 19-Feb-2011 Stephan Aßmus <superstippi@gmx.de>

Small cleanups, no functional change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40555 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e2069723 14-Nov-2010 Axel Dörfler <axeld@pinc-software.de>

* Removed the "shrink to window" option. Instead, there is now a "Fit to window"
menu item that just does that. Additionally, the image is always fit to the
window size when first shown, or if the full screen mode switches.
That also fixes #6765, and #6810.
* The ImageCache now also passes a referenced BitmapOwner object, and bitmaps
are now actually freed when it's allowed to.
* Pressing the zoom button will cause ShowImage to enter full screen again. For
some reason this has been removed as part of r19540.
* The progress window is now visible again, although not that often, as you will
only see it for images that were not in the queue already. The window is now
known to the ShowImageWindow instead of the ShowImageView.
* Moved most constants out of ShowImageConstants.h to where they belong.
* Dropping an image now opens it in another window.
* Removed EntryMenuItem as it's no longer used anywhere.
* Minor other cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39431 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ba3217ee 03-Nov-2010 Axel Dörfler <axeld@pinc-software.de>

* Moved the Tracker navigation logic into its own class, TrackerNavigation.
* Added a new class FolderNavigation that implements the same for folders
without a Tracker window.
* ImageFileNavigator is now using either one depending on whether it got a
valid tracker messenger.
* Removed some unused/unneeded methods.
* Made entry_ref a reference at some more methods, as it's not really optional.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39292 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 745226bd 03-Nov-2010 Axel Dörfler <axeld@pinc-software.de>

* Got rid of the useless fTrackerMessenger field.
* Ordered the methods in declaration order. Ordered BWindow hooks in "run"
order.
* Renamed private methods to have the '_' prefix.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39286 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 47a694d3 15-Jul-2010 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Fix warnings


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37525 a95241bf-73f2-0310-859d-f6bbb57e9c96


# be8fa2fb 02-Jul-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

* Update all applications in tree to use the new localizing system
* Remove the old one from the locale librairy, with some cleanup
Known regressions :
* readonlybootprompt will no longer update the locale settings : the
method used messed with internal undocumented things
* external localized apps (webpositive for example) will not run
anymore.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37336 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5ab8434c 12-Jun-2010 Stephan Aßmus <superstippi@gmx.de>

* Fixed storage of image data in the system clipboard. According to the
comments in the code, different programs do it differently. However, I
believe we should follow the BeBook documentation. This is the method which
WonderBrush uses as well, and that one had been tested with other apps like
Refraction. Potentially, copy&paste could work across GoBe Productive now
also, but I didn't test.
* Handle the case where the selection bitmap that gets restored from the
clipboard has a bounds rectangle with an offset. Use this offset as an
alternative to the "be:location" hack.
* Fix the drag bitmap to be semi-transparent on Haiku. B_OP_SELECT does not
affect the alpha channel on Haiku like it apparently did on BeOS, though
I am not inclined to change that behavior.
* Fixed some coding style violations, but tried to mix as little cleanup as
possible.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37118 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d0a2818e 10-Jun-2010 Stephan Aßmus <superstippi@gmx.de>

* Do not use the Scaler anymore for asynchronous bilinear filtering, but pass
B_FILTER_BITMAP_BILINEAR to DrawBitmap(). There is virtually no delay at all.
* Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37080 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4eb0cbb0 07-May-2010 Matt Madia <mattmadia@gmail.com>

Updated TR_CONTEXT to be B_TRANSLATE_CONTEXT, relating to #5408.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36733 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 905c8c8c 06-May-2010 Matt Madia <mattmadia@gmail.com>

Updated to use B_TRANSLATE* macros. relates to #5408.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36673 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1ed4535f 22-Mar-2010 Stephan Aßmus <superstippi@gmx.de>

Patch by mt. Localization and conversion to use the layout API with coding style
fixes along the way. Thanks a lot! Fixes #5563.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35929 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8c1ad886 13-Aug-2009 Ryan Leavengood <leavengood@gmail.com>

- Cleanup to match coding guidelines. The header cleanup might have been
overkill.
- Updating some copyright years.
- ResizerWindow.h was not self-contained.

Some of the other files were skipped due to complexity and planned code changes.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32296 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e615cc51 19-Jan-2008 Jérôme Duval <korli@users.berlios.de>

minor cleanup


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23631 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2660d61a 12-Jun-2007 Ryan Leavengood <leavengood@gmail.com>

As I said I would:

1. Deleted headers/shared/
2. Added a Jamfile to src/shared to build it into a static library libshared.a.
3. Removed my changes in the build/jam directory.
4. Have ShowImage include libshared.a.

I forgot to add AboutWindow.h to headers/private/shared. I will do that next.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21402 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5a1210fb 11-Jun-2007 Ryan Leavengood <leavengood@gmail.com>

Moved the BAboutWindow implementation to the shared source directory, which
despite being talked about repeatedly, does not currently exist.

Adding this required adding some new Jam rules to deal with this shared source
directory and headers. I had some fun figuring this out. Despite writing
articles about Jam in the Haiku newsletter a few years ago I still find Jam to
be a PITA at times.

But my solution seems to work pretty well. Basically you just call the rule
UseSharedSource and pass the name of the shared source file you want to use.
This rule sets up the header directories and the right Jam variables for the
source file. You then add the source file to the source list in the Application
rule like any other source file.

I also made the authors list sent to the about window constructor null
terminated instead of passing the size of the array, as suggested by Hugo.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21391 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a8a83855 10-Jun-2007 Ryan Leavengood <leavengood@gmail.com>

Initial implementation of the common BAboutWindow class. Of course I just
realized that calling it a window may not be strictly correct since it isn't a
decendent of BWindow, but just uses a BAlert. Oh well, it can be changed if
need be.

I'm also checking in the first use of it, in ShowImage. Since ShowImage can
still be compiled for R5 I've added a #ifdef around the new BAboutWindow
related code.

I'm open for suggestions for the interface for this class, well mostly the
constructor. I'm not a big fan of having to specify the number of authors.

For now I'm making the header private, but I don't think it would be a big deal
to expose it publically.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21389 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3daebb3e 28-Jan-2007 Ryan Leavengood <leavengood@gmail.com>

Changed the application QuitRequested as per Axel's advice.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19995 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 880be331 28-Jan-2007 Ryan Leavengood <leavengood@gmail.com>

General changes:
- Fixed some formatting in the recently added resizing code.
- Changed the operation name for rotating counterclockwise to use that name
instead of anticlockwise. This makes the code consistent with the GUI.
- Reformatted the constants header to use an enum. Also removed the empty
constants cpp file.
- The QuitRequested handler in the app did not ask the windows to close, which
could cause modified images to be closed without prompting the user. Now it
does, which makes ShowImage more user friendly.

Changes to the image view:
- Added a member for keeping track of the type of image. This is mostly used in
properly updating the window's status bar when the image is changed (flipped,
rotated, etc.) This removes some hacky code I added before :)
- Removed the status parameter in the Notify method since it was only used for
the above image type status updating.
- Removed a redundant if in the mouse up handler.
- The key down handlers for moving to the next and previous image did not
properly prompt the user if the image had changed. I fixed this by sending a
message to the window where the prompting code resides. When adding this I
also created a few helper methods for sending messages to the window, which
removed some (small) repeated code through-out the class.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19994 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1f8b22ef 22-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

Fixed some more application signatures and version info, and made them all consistent.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19091 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5e09d5db 25-Apr-2006 Ryan Leavengood <leavengood@gmail.com>

1. Added myself to About box.
2. Fixed bug 537.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17234 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a932a97b 07-Feb-2006 Axel Dörfler <axeld@pinc-software.de>

* Mabye I should do better testing of what I "fix"; absolute paths didn't work
anymore from the command line all of a sudden...
* Made the caption background slightly less translucent to allow the text to
be read even with very checkered images.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16280 a95241bf-73f2-0310-859d-f6bbb57e9c96


# efa8b4f3 06-Feb-2006 Axel Dörfler <axeld@pinc-software.de>

Fixed various issues:
* ArgvReceived() did not work with relative paths.
* Simplified quitting (no more CanQuit() and overriding BWindow::Quit()).
* Updated signature.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16260 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 08130f16 13-Oct-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Fix About Box project name.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9315 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 134d6076 20-Jan-2004 Michael Pfeiffer <michael.w.pfeiffer@gmail.com>

Use Tracker Scripting to find next/previous image.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6203 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a5509541 27-Nov-2003 Michael Pfeiffer <michael.w.pfeiffer@gmail.com>

- Fixed bug in conversion from image coordinates to view coordinates are vice versa.
- Change the size of the image being dragged to size of the selection in the view coordinate system.
- Experimental: delay start of filtering thread(s) for some tenth of a second. This allows faster update during resizing.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5491 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a8fc7138 25-Nov-2003 Michael Pfeiffer <michael.w.pfeiffer@gmail.com>

- Implemented Floyd Steinberg dithering algorithm.
- Remembers "orientation" state (rotated, mirrored or inverted) in file attribute of image.
- Update recent documents menu every time the menu is opened.
- Bug fix and optimization in Filter.cpp.
- Moved image manipulation code from ShowImageView.cpp to Filter.cpp. So it can take advantage of multiple CPUs.
- Experimental: Write/remove thumbnail to/from file icons.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5480 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d3046f7d 19-Nov-2003 Michael Pfeiffer <michael.w.pfeiffer@gmail.com>

- Made some settings persistent: Slide Show Delay, Scale Bilinear, Shrink/Zoom to Window, Show Caption in Full Screen Mode and PrintOptions persistent.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5415 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 402c09e5 18-Nov-2003 Matthew Wilber <mwilber@nowhere.fake>

Added code to enable / disable the Edit->Paste menu item when the contents of the clipboard change


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5413 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d10d5947 09-Nov-2003 Michael Pfeiffer <michael.w.pfeiffer@gmail.com>

- added recent documents sub menu
- added resize window to image size when file is opened
- added drag and drop selection
- added copy selection to clipboard


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5288 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ad13f387 06-Nov-2003 Michael Pfeiffer <michael.w.pfeiffer@gmail.com>

- added full screen mode
- added dia show
- added rotate image clockwise, anti-clockwise, mirror image vertical or -horiztonal and invert image
- added myself to about dialog and copyright holders


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5270 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7eca0987 04-Nov-2003 Michael Pfeiffer <michael.w.pfeiffer@gmail.com>

- added option resize image to window size
- added show next/previous file using Command + Cursor Up/Down key
- rewrote selection code
- added marching ants
- renamed member variables to start with capital letter after field prefix


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5255 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 03839579 02-Aug-2003 Matthew Wilber <mwilber@nowhere.fake>

Added multi-page support (as in OBOS TIFFTranslator). Made many changes to the way the app, window and view objects interface with each other. Still could use some polish.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4216 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cdb89ebb 02-Aug-2003 Matthew Wilber <mwilber@nowhere.fake>

Change to have a more consistent coding style, eliminated unused / unessecary code, added MIT license notice, prevented image window from closing when a save panel is open, prevented the user from opening multiple save panels for a single image window, etc.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4214 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 07caaa8e 02-Aug-2003 Matthew Wilber <mwilber@nowhere.fake>

Simplified / cleaned up code, fixed close window behavior, changed status view text to show identify string


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4212 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 13afa642 22-Jul-2002 Phil Greenway <sikosis@gmail.com>

Initial Checkin. Coded by Fernando Francisco de Oliveira.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@388 a95241bf-73f2-0310-859d-f6bbb57e9c96


# be63ec85a81119bc21734d0c4dc7f2b150433ed3 07-Apr-2015 Janus <janus2@ymail.com>

Showimage: Wait for loader threads on exit.

* Uses find_thread to wait for loader threads.
(better solutions are welcome)
* As suggested by Axel the cache isn't static anymore.
* Fixes 8902.


# 537a273cced14e2da799ae1e4c3474a9fd74d663 24-Jun-2012 Humdinger <humdingerb@gmail.com>

Coding style changes, no functional change.
Hope all's OK, Filter.h is still mostly untouched as it's quite messy with
many exessive commenting.


# 541ff51a6ef4c47f8ab105ba6ff895cdbba83aca 15-Apr-2012 Oliver Tappe <zooey@hirschkaefer.de>

Cleanup BCatalogAddOn.

* rename BCatalogAddOn to BCatalogData, since it doesn't represent an
add-on, but rather the catalog data provided by an add-on
* move BCatalogData out of Catalog.{h,cpp} into its own header and
implementation file
* drop BCatalogData::MarkForTranslation() methods, they're not needed
* drop BCatalog::GetNoAutoCollectString() methods, they're not being
used anywhere
* cleanup the B_TRANSLATE_... macros somewhat
* add versions of the B_TRANSLATE_MARK_... macros that are meant to be
used in void context (when the string isn't being used by the program,
just meant to be picked up by collectcatkeys).
* adjust several apps to use B_TRANSLATE_MARK_..._VOID where needed
* adjust users of BCatalogAddOn accordingly


# 11c7ff531a01b64773d8a8f0e02c1c7c9f27ca29 25-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Removing most About windows and menu items as discussed here
http://www.freelists.org/post/haiku-commits/r40968-in-haikutrunksrcapps-activitymonitor-bootmanager-charactermap-codycam-deskbar,3
Leaving them for now in replicants, and in Terminal, according to (my interpretation of) the instructions here
http://dev.haiku-os.org/browser/haiku/trunk/src/apps/terminal/README.GPL_to_OBOS#L70
Some sporadic cleanup.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41108 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 560ff4478d5c85455ea3e5ed5e392ef93132d545 25-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Use resource definition files instead of DoCatalogs rule. Rename B_TRANSLATE_APP_NAME and related macros to the more generic B_TRANSLATE_SYSTEM_NAME, to also fits add-ons, folders, etc, and make 'System name' its standard context. Change CodyCam and PoorMan's app signatures to match the overall x-vnd.Haiku-App pattern. Some clean-up. Make SlideShowSaver build again.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41103 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 71302e7c6dbf98040eb000175a2545d0de63fdc8 16-Mar-2011 Jonas Sundström <jonas@kirilla.com>

Further localization. Making use of B_TRANSLATE_APP_NAME, AboutWindow. Cleanups. Please review/test changes in Terminal.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40973 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9473d287b353ca8dfe0e01d387f73f08ec4841da 20-Feb-2011 Stephan Aßmus <superstippi@gmx.de>

* Added functionality for initializing and retrieving future tool bar
icons.
* Imported a few of zuMi's awesome tool bar icons as C code. Doing
it this way imposes the least start up panalty (10ms on my Core 2 Duo,
which is imperceptable when usually opening some largish image).
* The init code is run, but there is no tool bar yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40588 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5b76e505e566ce5eeff43dea561e94f787a230e6 19-Feb-2011 Stephan Aßmus <superstippi@gmx.de>

Two unrelated features mangled into one commit:
* Added a Rating menu to the ShowImage window, to easily
give the current image a rating (uses same attribute as other
types of media, i.e. MediaPlayer).
* ShowImage no longer tries to adapt the window size of newly
opened windows to the image that is loaded into them. I've found
that the most annoying ShowImage misbehavior. I don't know why
this was thought to be a good idea, maybe it was useful in
BeOS presentations when you select 20 images in a folder and
make them pop up all at once. I however use ShowImage mainly
to view at fotos, all of which are larger than my screen, so
ShowImage would basically _aÃlways_cover up everything, even
though there is the fullscreen mode for that. Now, ShowImage
remembers the last used window position, new windows will open
at an offset. In another words, you can now have a Tracker
folder of images open, view one, close the window, view another,
ShowImage will open at the previous location, all very convenient
and expected.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40556 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3b693801a9221564c8780c9823cc3289b266030f 19-Feb-2011 Stephan Aßmus <superstippi@gmx.de>

Small cleanups, no functional change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40555 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e2069723097dcded429323414605cd250207d2c0 14-Nov-2010 Axel Dörfler <axeld@pinc-software.de>

* Removed the "shrink to window" option. Instead, there is now a "Fit to window"
menu item that just does that. Additionally, the image is always fit to the
window size when first shown, or if the full screen mode switches.
That also fixes #6765, and #6810.
* The ImageCache now also passes a referenced BitmapOwner object, and bitmaps
are now actually freed when it's allowed to.
* Pressing the zoom button will cause ShowImage to enter full screen again. For
some reason this has been removed as part of r19540.
* The progress window is now visible again, although not that often, as you will
only see it for images that were not in the queue already. The window is now
known to the ShowImageWindow instead of the ShowImageView.
* Moved most constants out of ShowImageConstants.h to where they belong.
* Dropping an image now opens it in another window.
* Removed EntryMenuItem as it's no longer used anywhere.
* Minor other cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39431 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ba3217eee8fd8e9db38d873d8c0d0225917d681f 03-Nov-2010 Axel Dörfler <axeld@pinc-software.de>

* Moved the Tracker navigation logic into its own class, TrackerNavigation.
* Added a new class FolderNavigation that implements the same for folders
without a Tracker window.
* ImageFileNavigator is now using either one depending on whether it got a
valid tracker messenger.
* Removed some unused/unneeded methods.
* Made entry_ref a reference at some more methods, as it's not really optional.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39292 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 745226bd2f8e0ac95bccec67eff6476c3d2ed060 03-Nov-2010 Axel Dörfler <axeld@pinc-software.de>

* Got rid of the useless fTrackerMessenger field.
* Ordered the methods in declaration order. Ordered BWindow hooks in "run"
order.
* Renamed private methods to have the '_' prefix.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39286 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 47a694d36745a1b9d78a35ede20dde013a4b9d14 15-Jul-2010 Stefano Ceccherini <stefano.ceccherini@gmail.com>

Fix warnings


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37525 a95241bf-73f2-0310-859d-f6bbb57e9c96


# be8fa2fb3088ab1921612b60f352dd9334b40b3d 02-Jul-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

* Update all applications in tree to use the new localizing system
* Remove the old one from the locale librairy, with some cleanup
Known regressions :
* readonlybootprompt will no longer update the locale settings : the
method used messed with internal undocumented things
* external localized apps (webpositive for example) will not run
anymore.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37336 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5ab8434cae09854012ca95e01c058179d044c141 12-Jun-2010 Stephan Aßmus <superstippi@gmx.de>

* Fixed storage of image data in the system clipboard. According to the
comments in the code, different programs do it differently. However, I
believe we should follow the BeBook documentation. This is the method which
WonderBrush uses as well, and that one had been tested with other apps like
Refraction. Potentially, copy&paste could work across GoBe Productive now
also, but I didn't test.
* Handle the case where the selection bitmap that gets restored from the
clipboard has a bounds rectangle with an offset. Use this offset as an
alternative to the "be:location" hack.
* Fix the drag bitmap to be semi-transparent on Haiku. B_OP_SELECT does not
affect the alpha channel on Haiku like it apparently did on BeOS, though
I am not inclined to change that behavior.
* Fixed some coding style violations, but tried to mix as little cleanup as
possible.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37118 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d0a2818e88442f18640738e39b537ebbd5a2fafa 10-Jun-2010 Stephan Aßmus <superstippi@gmx.de>

* Do not use the Scaler anymore for asynchronous bilinear filtering, but pass
B_FILTER_BITMAP_BILINEAR to DrawBitmap(). There is virtually no delay at all.
* Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37080 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4eb0cbb044cf538f18c0d252934a5bcaa33bfd34 07-May-2010 Matt Madia <mattmadia@gmail.com>

Updated TR_CONTEXT to be B_TRANSLATE_CONTEXT, relating to #5408.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36733 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 905c8c8c8accfb3a4cffced18f34f0d219a37d59 06-May-2010 Matt Madia <mattmadia@gmail.com>

Updated to use B_TRANSLATE* macros. relates to #5408.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36673 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1ed4535f34076e9bba9ac8d3be534a96371def58 22-Mar-2010 Stephan Aßmus <superstippi@gmx.de>

Patch by mt. Localization and conversion to use the layout API with coding style
fixes along the way. Thanks a lot! Fixes #5563.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35929 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8c1ad886ee4b203883119c567543a653a8d86627 13-Aug-2009 Ryan Leavengood <leavengood@gmail.com>

- Cleanup to match coding guidelines. The header cleanup might have been
overkill.
- Updating some copyright years.
- ResizerWindow.h was not self-contained.

Some of the other files were skipped due to complexity and planned code changes.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32296 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e615cc513a05b98b8afce2c0407dcaf64660410f 19-Jan-2008 Jérôme Duval <korli@users.berlios.de>

minor cleanup


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23631 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2660d61ad6ba8b7165a589046de77a435845db38 12-Jun-2007 Ryan Leavengood <leavengood@gmail.com>

As I said I would:

1. Deleted headers/shared/
2. Added a Jamfile to src/shared to build it into a static library libshared.a.
3. Removed my changes in the build/jam directory.
4. Have ShowImage include libshared.a.

I forgot to add AboutWindow.h to headers/private/shared. I will do that next.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21402 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5a1210fbeffef1010c67193dc7faff4d34369b71 11-Jun-2007 Ryan Leavengood <leavengood@gmail.com>

Moved the BAboutWindow implementation to the shared source directory, which
despite being talked about repeatedly, does not currently exist.

Adding this required adding some new Jam rules to deal with this shared source
directory and headers. I had some fun figuring this out. Despite writing
articles about Jam in the Haiku newsletter a few years ago I still find Jam to
be a PITA at times.

But my solution seems to work pretty well. Basically you just call the rule
UseSharedSource and pass the name of the shared source file you want to use.
This rule sets up the header directories and the right Jam variables for the
source file. You then add the source file to the source list in the Application
rule like any other source file.

I also made the authors list sent to the about window constructor null
terminated instead of passing the size of the array, as suggested by Hugo.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21391 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a8a83855b0627f6a2d588885764803ed32ba1313 10-Jun-2007 Ryan Leavengood <leavengood@gmail.com>

Initial implementation of the common BAboutWindow class. Of course I just
realized that calling it a window may not be strictly correct since it isn't a
decendent of BWindow, but just uses a BAlert. Oh well, it can be changed if
need be.

I'm also checking in the first use of it, in ShowImage. Since ShowImage can
still be compiled for R5 I've added a #ifdef around the new BAboutWindow
related code.

I'm open for suggestions for the interface for this class, well mostly the
constructor. I'm not a big fan of having to specify the number of authors.

For now I'm making the header private, but I don't think it would be a big deal
to expose it publically.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21389 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3daebb3ee0f5aa6438f816696d09ed5a99369a40 28-Jan-2007 Ryan Leavengood <leavengood@gmail.com>

Changed the application QuitRequested as per Axel's advice.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19995 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 880be3310db507c2aa34f93c86a450d590044638 28-Jan-2007 Ryan Leavengood <leavengood@gmail.com>

General changes:
- Fixed some formatting in the recently added resizing code.
- Changed the operation name for rotating counterclockwise to use that name
instead of anticlockwise. This makes the code consistent with the GUI.
- Reformatted the constants header to use an enum. Also removed the empty
constants cpp file.
- The QuitRequested handler in the app did not ask the windows to close, which
could cause modified images to be closed without prompting the user. Now it
does, which makes ShowImage more user friendly.

Changes to the image view:
- Added a member for keeping track of the type of image. This is mostly used in
properly updating the window's status bar when the image is changed (flipped,
rotated, etc.) This removes some hacky code I added before :)
- Removed the status parameter in the Notify method since it was only used for
the above image type status updating.
- Removed a redundant if in the mouse up handler.
- The key down handlers for moving to the next and previous image did not
properly prompt the user if the image had changed. I fixed this by sending a
message to the window where the prompting code resides. When adding this I
also created a few helper methods for sending messages to the window, which
removed some (small) repeated code through-out the class.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19994 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1f8b22ef227c0ee004bdfc60e5a753e48e716258 22-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

Fixed some more application signatures and version info, and made them all consistent.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19091 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5e09d5dbe5f6567e3324521a2b0e818e6827f5eb 25-Apr-2006 Ryan Leavengood <leavengood@gmail.com>

1. Added myself to About box.
2. Fixed bug 537.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17234 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a932a97b525655cad82a123eebc3542d0372d27f 07-Feb-2006 Axel Dörfler <axeld@pinc-software.de>

* Mabye I should do better testing of what I "fix"; absolute paths didn't work
anymore from the command line all of a sudden...
* Made the caption background slightly less translucent to allow the text to
be read even with very checkered images.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16280 a95241bf-73f2-0310-859d-f6bbb57e9c96


# efa8b4f3922f0ff26c80078e6d51ebe52cba9735 06-Feb-2006 Axel Dörfler <axeld@pinc-software.de>

Fixed various issues:
* ArgvReceived() did not work with relative paths.
* Simplified quitting (no more CanQuit() and overriding BWindow::Quit()).
* Updated signature.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16260 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 08130f16cec023f341c86b69ea1bd16676512fee 13-Oct-2004 Philippe Houdoin <philippe.houdoin@gmail.com>

Fix About Box project name.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9315 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 134d60764764350d5bf693fcbbc49b190426a4ca 20-Jan-2004 Michael Pfeiffer <michael.w.pfeiffer@gmail.com>

Use Tracker Scripting to find next/previous image.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6203 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a55095419c99078dacb318cb33cccb3349edb2cd 27-Nov-2003 Michael Pfeiffer <michael.w.pfeiffer@gmail.com>

- Fixed bug in conversion from image coordinates to view coordinates are vice versa.
- Change the size of the image being dragged to size of the selection in the view coordinate system.
- Experimental: delay start of filtering thread(s) for some tenth of a second. This allows faster update during resizing.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5491 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a8fc713847bb28899eca54d19c581895ec324edd 25-Nov-2003 Michael Pfeiffer <michael.w.pfeiffer@gmail.com>

- Implemented Floyd Steinberg dithering algorithm.
- Remembers "orientation" state (rotated, mirrored or inverted) in file attribute of image.
- Update recent documents menu every time the menu is opened.
- Bug fix and optimization in Filter.cpp.
- Moved image manipulation code from ShowImageView.cpp to Filter.cpp. So it can take advantage of multiple CPUs.
- Experimental: Write/remove thumbnail to/from file icons.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5480 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d3046f7d46f0a7e9ceb022b01d62975abfea2b5d 19-Nov-2003 Michael Pfeiffer <michael.w.pfeiffer@gmail.com>

- Made some settings persistent: Slide Show Delay, Scale Bilinear, Shrink/Zoom to Window, Show Caption in Full Screen Mode and PrintOptions persistent.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5415 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 402c09e582a3ffb8e1e51cebc473f3e02256ea2f 18-Nov-2003 Matthew Wilber <mwilber@nowhere.fake>

Added code to enable / disable the Edit->Paste menu item when the contents of the clipboard change


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5413 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d10d59475c9216c2d639424014cefcf98bde7271 09-Nov-2003 Michael Pfeiffer <michael.w.pfeiffer@gmail.com>

- added recent documents sub menu
- added resize window to image size when file is opened
- added drag and drop selection
- added copy selection to clipboard


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5288 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ad13f387f9a6989fa4ef067983a51b2d6af8f6e1 06-Nov-2003 Michael Pfeiffer <michael.w.pfeiffer@gmail.com>

- added full screen mode
- added dia show
- added rotate image clockwise, anti-clockwise, mirror image vertical or -horiztonal and invert image
- added myself to about dialog and copyright holders


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5270 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7eca09874bd34b14ac63e3f28ec455fab810cc77 04-Nov-2003 Michael Pfeiffer <michael.w.pfeiffer@gmail.com>

- added option resize image to window size
- added show next/previous file using Command + Cursor Up/Down key
- rewrote selection code
- added marching ants
- renamed member variables to start with capital letter after field prefix


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5255 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 03839579020b2f3c91671fbaa4abf7d260624935 02-Aug-2003 Matthew Wilber <mwilber@nowhere.fake>

Added multi-page support (as in OBOS TIFFTranslator). Made many changes to the way the app, window and view objects interface with each other. Still could use some polish.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4216 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cdb89ebbeb5e8a69e54dee9b3daad63f77d9f782 02-Aug-2003 Matthew Wilber <mwilber@nowhere.fake>

Change to have a more consistent coding style, eliminated unused / unessecary code, added MIT license notice, prevented image window from closing when a save panel is open, prevented the user from opening multiple save panels for a single image window, etc.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4214 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 07caaa8e88f971a4d184d6b1bf1c14768821e8bb 02-Aug-2003 Matthew Wilber <mwilber@nowhere.fake>

Simplified / cleaned up code, fixed close window behavior, changed status view text to show identify string


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4212 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 13afa64231695bfa50edd375d99fa850ece3a156 22-Jul-2002 Phil Greenway <sikosis@gmail.com>

Initial Checkin. Coded by Fernando Francisco de Oliveira.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@388 a95241bf-73f2-0310-859d-f6bbb57e9c96