MyJaPhoO Changelog

What's new in MyJaPhoO 4.1.6-3

Mar 25, 2019
  • This is a maintenance version with a lot of internal code restructurization. The main goal of this version is to make maintenance easier and to split the application into several modules. This is an ongoing process also for the next versions. Main goal is to separate core code and optional functionality.
  • The source code is divided into three main parts: a core part which is completely independent of gui code, a cli module which ontains a the command line tool, and the actual application.
  • The main change for the user is, that the application does not contain the cli functionality. For this, the separate cli client is needed.

New in MyJaPhoO 4.0.3-15 (Aug 17, 2017)

  • the code will require java 8. No older versions are supported anymore.
  • Simple support for multiple projects. You are now able to create new projects and open existing ones. This is useful if you need to manage multiple collections of photos or movies.
  • internally a lot of the base code has been rewritten to make it more robust and more maintainable, see release 4 for details. A lot of time has been invested into these changes and refactorings, also in implementing more unit test cases.
  • Startup and feedback is faster for big projects.
  • path substitutions have been removed from the core application. Plugins could implement replacements for this functionality.

New in MyJaPhoO 3.13-0 0 0 (Dec 1, 2015)

  • Changes & fixes:
  • several enhancements for groovy scripting to add e.g. own thumb loader, own path substitution logic, etc
  • updated to latest library versions
  • fixed bug with event bus and messages
  • alt-left & alt-right: go history back and forward
  • aggregations possible, e.g. sum of values
  • having clause possible to filter by aggregations

New in MyJaPhoO 3.12-199 (Mar 24, 2015)

  • works now properly on Java 8
  • fixed some groovy scripting issues
  • fixed vlc thumbnail provider issues
  • new feature to use lists of groupings

New in MyJaPhoO 3.11-198 (Nov 20, 2014)

  • improved Filterlanguage: Simple searches for words are now possible without any syntax knowledge
  • Filter: matched text occurrences are now highlighted in the Tree-Table and in the Properties Panel
  • Filte shortcuts for regex searches, e.g. tag?myregexsearch, see documentation
  • integrated Exif Attribute View into the Properties Panel
  • a view bug fixes and optimizations

New in MyJaPhoO 3.10-197 (Sep 9, 2014)

  • This version fixes small bugs and has slightly reworked user interface for dealing with properties:
  • The Attribute Property Editor has changed and uses now a more convenient user interface using a tree table
  • the Look and Feel has changed. Myjaphoo uses now Substantial. All other Plafs are removed
  • internal code has been cleaned up, e.g. the Gpars Actor library gets now used instead of own code. This will be also the base to make more improvements for more parallel optimisations in the future
  • several small bug fixes
  • Import of files works now also to import all file types or files with a special file type (e.g. could be used to import PDF files)
  • shell mode to work without gui: has command to import files in shell or useage in scripts
  • groovysh mode to work with commands (import of files interactively in command mode)

New in MyJaPhoO 3.9-158 (May 8, 2014)

  • Merge with default
  • fix: export has not copied bookmark menu path
  • fix: exporting scripts and attributes
  • fix: using base class
  • set prefered size to not let it grow to endless with in case of many attributes —
  • do not overcrowd the context menu with silly tag assignment menus as this really slows down the menu creation for a big number of tags; use the tag assignemnt dialog as option instead;
  • remove useless cache initialisation for thumbs
  • another version of faster file substitution, doing the caching in the background
  • added method to define common script actions
  • add scripted metatag actions to metatag popup menu — lang / detail
  • append common script actions to the file menu
  • optional disabling of the tag assignment menus in the context menus (faster for dbs with many tags, and often not needed)
  • refactoring: use same context popup menu both for movie tree and also for thumb panel
  • support for scripted movie entry context based actions
  • fixed groovy/java class problem
  • common script actions (without context)
  • Merge
  • user defined tag actions appear now also on thumb popup menu for all tags indirectly selected by their assigned movies
  • changed to groovy class
  • Added tag v3-9-157 for changeset 63354833de41

New in MyJaPhoO 3.9-157 (Mar 19, 2014)

  • New Features:
  • User defined properties for Media entries, tags and metatags: you are now able to define your own properties/attributes for these entities and define values for them in the properties panel
  • bookmarks and scripts could have a path to group them in the menus. You can use “/” within the name of a bookmark or script to structure it in submenus in the UI
  • better groovy integration for filtering and grouping. You could put initialization groovy code into the application to define your own menu points, filter functions, grouping functions, etc. This customization will be improved over the next versions
  • several small bug fixes and performance improvements
  • Please note, that the application assumes a 64 bit java runtime, now as the start script increases the max memory to 3GB
  • Changelog:
  • Merge with default: preparation for release of 3.9
  • increased mem preferences
  • MJ-47 file substitutions; faster version for gui usage
  • added context variable map
  • optimization: fetch queries to get tags + assigned entries and metatags + assigned tags; speeds up loading of large dbs a lot
  • made relative path substitutions dialog nicer
  • added simple test cases
  • fixed import strategy: save a entry first, when checksum got calculated (otherwise a race condition etc. could lead to entries which have no checksum, due to parallel imports)
  • removed unused code
  • removed unused code
  • small optimization: thumb loading does not load the movie entry
  • removed unused code
  • fixed type
  • fix tag proposal: full word match has not used “_” as a non-word char.
  • fix: changed script logging logger name
  • use defined scripted actions for tag context menu
  • added methods to define actions
  • actionentries to add actions via script;
  • Added tag v3-9-RC01 for changeset 8cf29af0f0ea
  • showing user defined attributes in the tree structures for tags, metatags, entries and movie lists
  • showing user defined attributes in the tree structures for tags, metatags, entries
  • upgrade to groovy 2.2.1; upgrade also the groovy maven compiler
  • provide completions about user defined groovy methods: only the defined ones, not standard methods
  • provide completions about user defined groovy methods
  • some methods in the script base class to save/load/create script objects
  • fix: do not log stacktrace on missing config on config by convention
  • update script menu on script changes in the script table
  • update events on change of bookmarks or scripts
  • derived own class from observable list with helper function for object updates
  • saved scripts have now a menu path to structure them in menus (same way like bookmarks)
  • new icons for bookmarks/folders; using them in the menu structurizer classes
  • new icons for bookmarks and bookmark folders
  • bookmarks have now an attribute “menu path”.
  • Setting a path could be used to show the menus structured by that path in the UI (menus, toolbar); “/” could be used as separator to make multiple groupings in the path
  • bookmarks have now an attribute “menu path”.
  • Setting a path could be used to show the menus structured by that path in the UI (menus, toolbar); “/” could be used as separator to make multiple groupings in the path
  • using jdesktop bsaf instead of appframework: not really more up to date, but at least we get the source code via maven
  • introduced object type to wrap groovy return types
  • fix: increased max length of script lob
  • draft: groovy functions could be called within filter language with “$” prefix.
  • at the moment the return type is simply TEXT, nothing other allowed at the moment.
  • user defined groovy functions could used this way in the filter/grouping langauge
  • getter for script
  • execution context holds a groovy filter base class for usage of groovy methods within the filter language
  • respective java type for a expression type
  • executing init scripts on startup of application
  • with ExpandoMetaClass definitions on GroovyFilterBaseClass in scripts, a user could define user defined functions for filtering and grouping (usage only in groovy mode at the moment)
  • fix: preselecting the value in the combo cell editor for properties (otherwise it would always select the first hint in the combobox model)
  • fix: save reminder on closing groovy console for db scripts
  • show scripts saved in database in the script menu
  • db saved scripts are displayed in a table in the UI. editing via groovy console possible
  • groovy console has a additional menu to save back the script in the database
  • groovy script entity to save groovy scripts in the database
  • fix: scripts which are in userdir + /macros/scripts/ are shown in the menu
  • fix: swing appframework getActionMap() mess up the groovy consoles backspace action mapping;
  • the only solution so far: do not use the appframeworks action map method….
  • moving MJConsole to groovy resources; direct usage as groovy class
  • better error handling when using groovy for filtering/grouping
  • removed unused code
  • set version to 3.9
  • Merge
  • some helper functions defined for easier property access when filtering or grouping with groovy
  • removed senseless groovy demo macros
  • Merge with groovyFilter
  • first simple solution to group via groovy in the grouping editor;
  • grouping works by beginning with the marker word “groovy” followed by a call to the method group() which gets a list of closures for each group level.
  • each closure gets called per each joined data row and needs to return a string (the grouping value)
  • groovy filtering works now by typing a first marker word “groovy” in the editor and then followed by groovy script to filter a joined data row.
  • a script which gets called for each joined data row, and which needs to return a boolean)
  • some groovy shorthand props to access entry, tag, metatag
  • shift return in filter editor to create new line; return to update filtering
  • shift return in filter editor to create new line; return to update filtering
  • Merge with default
  • fix: alternative byte size formatting which does not round the size
  • updated some lib versions
  • fixed concurrent modification problem
  • some null attribute value checks
  • Merge with default
  • new filter function split
  • fixed problem with wrong parsing of special symbols within quotes
  • Merge with attributes
  • tag parent ident: prevent NPE
  • filter bricks also for tag attrs and metatag attrs
  • adding attributes to the filter brick toolbar
  • removed weird test case
  • fixed testcase
  • Merge with default
  • Merge with attributes
  • limit short syntax for function call to one argument
  • this makes more sense in most use cases, when e.g. nesting in other function calls, etc.
  • making dataview currentseldir at max 4040 chars
  • sort attribute list in tooltip
  • sort attribute list in attribute editor
  • removed unnecessary attach strategy
  • compacting the tooltips for the thumb renderers if attribute values are too long
  • removed stupid macro
  • width of tooltip limited
  • fixed npe on attributes editing
  • added not working out-commented test cases to the test case
  • short form for attribute filtering via functions: e.g. entryattr#attrname
  • short form for attribute filtering via functions: e.g. entryattr#attrname
  • simple test case for filtering attributes
  • show attributes as html table in tooltips; added some simple table styles
  • show attributes as html table in tooltips
  • common lexer parsing of two character symbols
  • fixed testcase
  • updated vlcj version to 2.4.1
  • updated vlcj version to 2.4.1
  • updated vlcj version to 2.4.1
  • properties: add popup menu with menus for all existing attr names from the same entity class
  • introduced function to embed groovy scripts into filter expressions.
  • not sure if this is useful for the end user or more a internal developer feature
  • property editor has autocompletion with hints from existing attribute values (per attribute)
  • fixed layout of property panel a bit
  • first draft version of property panel showing all nested elements of property entity
  • properties panel shows infos about the last selected object, either a movie/pic entry, a tag or a meta tag
  • functions to access tag and metatag attributes
  • cleaned up code
  • attributes also for tags and metatags
  • first simple working connection to the properties panel
  • fix: scanning also inherited methods for annotations
  • basic prop editor panel (not yet connected)
  • interface for entities which have attributes
  • returning JXPanels instead of JPanels
  • fix: better error logging on configuration error
  • simple function to access the entry attributes
  • started attributes branch
  • movie entry has map with attributes.
  • attributes get joined fetch loaded when creating the internal cache