Commit Graph

364 Commits

Author SHA1 Message Date
wpferguson
b7857c8462 Revert "Library fixes" 2019-12-16 22:30:50 -05:00
wpferguson
2d231806d2 Merge pull request #199 from wpferguson/library_fixes
Library fixes
2019-12-16 21:46:14 -05:00
Bill Ferguson
10b5dee40f Added windows compatibility 2019-12-09 20:08:11 -05:00
Bill Ferguson
be48459092 Converted face_recognition to a module and updated it to use newer library functions. Added tolerance adjustment to settings to fine tune the face detection. 2019-12-08 20:18:07 -05:00
supertobi
cb6199c1a8 Merge pull request #100 from GHswitt/master
Storage plugin for face_recognition
2019-12-07 21:34:38 +01:00
Bill Ferguson
205cbcf05d Checkpoint save 2019-07-03 12:41:58 -04:00
supertobi
8004b96c41 Merge branch 'master' into BzKevin-enfuseAdvanced-refactor 2019-05-07 15:54:12 +02:00
supertobi
7cc58d9fac Merge pull request #164 from BzKevin/BzKevin-HDRMerge
Add HDRMerge
2019-05-07 13:00:40 +02:00
BzKevin
f82ae6c091 Change 'Create Unique Filename' to default 2019-05-06 21:35:41 -04:00
wpferguson
6ab029e692 Merge pull request #178 from BzKevin/BzKevin-AutoGrouper
Add AutoGrouper
2019-05-06 15:38:10 -04:00
BzKevin
2c3536afc9 Changes requestd via PR
1) mod changed to MOD
2) autogroup changed to autogrouper
3) prints "please select at least 2 images" if user attempts to run with fewer than 2 images selected
4) change visible module name to "auto group" (lower case)
5) changed soft max on slider to 60s
         - I also increase the hard max up to a full day, I saw no reason not to
2019-05-06 10:49:30 -04:00
supertobi
f1d397f908 OpenInExplorer
Changed from nautilus to org.freedesktop.FileManager1, so it works with all file manager that support this dbus API.
2019-04-15 23:09:01 +02:00
supertobi
53d6b54de8 Merge branch 'master' into supertobi-patch-1 2019-04-15 21:34:44 +02:00
supertobi
ffd6abbe95 Fixed bugs after Linux testing 2019-04-15 21:28:48 +02:00
supertobi
f08421a48c Update kml_export.lua
Fixed Windows problem
2019-04-15 15:55:22 +02:00
supertobi
a383d1ebf8 Update kml_export.lua
Works with Windows
2019-04-15 15:48:31 +02:00
BzKevin
fcad7a5733 Makte Translatable + others
Made text translatable except for line 499 which kept giving me problems
   Making L499 translatable would throw the following error   lua:499: attempt to call a nil value (upvalue '_')
   Troubleshooting steps taken and results:
        1) Changed the translation function from _() to translate() - this worked, no errors but ugly
        2) Reverted the changes from 1, then changed all "for _, var in table do" to be "for ignore, var in table do" - this did not help

Moved a chunk of code due to anomalous behavior, I suspect previous code was attempting to change the value in the stack widget before it was fully created. Adding in a print statement before trying to change the stack.active would cause things to work fine. Moving it behind the register call also helped.
2019-03-22 12:01:56 -04:00
BzKevin
7ffdf1631c Make text translatable 2019-03-22 09:05:11 -04:00
BzKevin
a5ad5e67f3 Remove executable preferences
The executable choosers have been moved to a box which is now element 4 in the GUI stack. Once the user configures these and presses update they are confirmed good or bad and the GUI changed to normal view if all works out.
2019-03-12 13:04:21 -04:00
BzKevin
4b3b1f7786 Fix bug when updating exe preference
Move the preference.write() call inside the for loop
2019-03-12 12:42:37 -04:00
BzKevin
844e89a652 Use file chooser to set executable path preference
previous commit failed to actually utilize the newly created file chooser to set the path preference
2019-03-12 12:25:37 -04:00
BzKevin
d88af9ffd9 Minor tweaks to last commit 2019-03-12 11:20:04 -04:00
BzKevin
7a3a9ba559 Removed preferences for exe
The GUI is now made of a stack which has two boxes in it. One box contains all the normal GUI elements, the other contains a file chooser button and a normal button to call an update routine. This box is only displayed if an issue is found. I decided to track the install status via a preference boolean, rather than calling df_check_if_bin_exists at startup every time. I do this because on my windows PC I was starting to get slow startups with too many scripts installed and many many flashing CMD windows at startup as well, which was a nuisance.
2019-03-12 11:19:22 -04:00
BzKevin
5d3910da49 Tab to Space 2019-03-05 09:14:28 -05:00
BzKevin
f740d34f1f Tab to Space 2019-03-05 09:12:54 -05:00
BzKevin
ee59540648 Refactored
I was having issue wit this script periodically. The original version of this was real a hack-job of Holger Klemms original. This new version utilizes tables in a manner that I hope will make the code easier to follow and understand, but also allows for certain functions to be re-used throughout (and potentially in different scripts as well). In general:

Each program (align image stack, enfuse, exiftool) how has a table that contains information about that program, this includes a sub-table that contains argument data for the program.
There is a GUI table which contains all gui elements. Those elements are split into sub-tables within GUI based on what aspect of the scrpt behavior they relate to (AIS, ENF, Target File, Presets, etc...)
These two structures (and the similarities between them) have allows me to create loops which populate the arguments from the GUI and vice-versa, this is all done through an intermediary preference, the "active" preference. 
Whenever a change to a GUI element occurs the associated member of hte active preference is updated. then when it becomes time to build an argument string for a program command the active preference is read from and the value contained within is used. This works fine for all GUI elements that have a "changed" or "clicked" callback, as they can remain up-to-date real time. Sliders and Entry boxes do not have this, so at a certain point withing the script the GUI values are read directly for these elements and written to the associated active preference field.

As you will see about 50% of this code is simply building all the GUI elements and making sure that the initialization value for that element is valid (via the InRange() function). The actual heart of the program and it's functions really only takes up about 300 lines (starting at 180 and going through 476). That is broken down into multiple fairly concise functions. Hopefully this makes maintenance, feature enhancement, and troubleshooting much easier in the future.

I also made a few UI tweaks. This script use to create such a massive list of GUI elements that it was a nuisance when actually using it. They are now grouped into three containers for AIS options, Enfuse options, and target options. Only one of these options containers is displayed at a time. Additionally, I removed all the registered preferences I had before, so now I only register 3 options to enable user to point towards the program binaries.
2019-03-04 13:13:49 -05:00
BzKevin
9e97b8f5a1 Added comments, made the gap inclusive
Added comments throughout
Change the gap comparison to be inclusive ( from '<' to '<=')
2019-03-04 12:47:52 -05:00
BzKevin
95968c3d95 Add AutoGrouper
Adds AutoGrouper script which allows the user to select multiple images (or an entire collection) and automatically group them based on timestamp. The separation between groups is user defined via a slider.
2019-03-04 12:20:55 -05:00
BzKevin
85c242ff0e Comments added, minor updates
I have added comments throughout, mainly to the functions
I improved the performance of the CleanSpaces() function
Improved communication to user via dt.print()
2019-03-04 09:45:05 -05:00
supertobi
18783e7ea5 kml_export fixed typo 2019-03-04 15:12:04 +01:00
BzKevin
7bc4846c0a Refactored
After experiencing some issues after upgrading to dt2.6 I decided it would be worthwhile to refactor the code for more reliable performance. Specifically the script would crash dt when attempting to apply a style on import and sometimes just fail to run. I have refactored this in a manor that should make it more logical for future users to add/maintain as applicable. 

Refactored script has only been tested on Windows 10 w/ dt2.6. Hopefullt all cross-platform aspects have been maintained.
2019-03-03 15:48:08 -05:00
supertobi
49c4406bb4 Update video_mencoder.lua
fix linebrakes
2019-03-03 17:41:04 +01:00
supertobi
2e5e2e9f0d OpenInExplorer added Nautilus support 2019-03-01 23:30:58 +01:00
supertobi
fa25ec4a26 OpenInExplorer Tap to Space 2019-03-01 23:27:26 +01:00
supertobi
0ef9f5fc6c kml_export df.mkdir(df.sanitize_filename())
df.mkdir(df.sanitize_filename(xportDirectory..PS..imageFoldername))
2019-03-01 14:22:35 +01:00
BzKevin
bd3a74954c gettext incorrectly pointed to "gimp" 2019-02-28 15:08:57 -05:00
supertobi
287d9e94cf video_ffmpeg
I forgot the argument
2019-02-28 13:22:10 +01:00
supertobi
24862a26f2 viedeo_ffmpeg df.sanitize_filename()
viedeo_ffmpeg df.sanitize_filename() for mkdir and rmdir
2019-02-28 11:41:56 +01:00
supertobi
5a6ee174af kml_export sanitize_filename()
dsys.launch_default_app(df.sanitize_filename(path))
2019-02-27 10:05:59 +01:00
supertobi
9183beeed4 video_ffmpeg add df.sanitize_filename()
I'm not 100% sure, but I think we need the df.sanitize_filename() here.
2019-02-27 09:57:36 +01:00
wpferguson
e5537fdff0 Merge pull request #162 from BzKevin/BzKevin-CollectHelper
Add CollectHelper
2019-02-26 17:02:13 -05:00
BzKevin
9e0490d371 Add gettext, check for color label
Add translate-ability. Also adds a check that the selected image has an active color label and displays a message if it does not
2019-02-26 14:30:11 -05:00
supertobi
9440085169 kml_export: use more utility functions
kml_export: use more utility functions as suggested by @wpferguson
2019-02-26 14:02:16 +01:00
supertobi
5c24077a30 kml_export
the command "convert" is deprecated and replaced by "magick"
2019-02-25 17:06:34 +01:00
supertobi
68a8eabbbb kml_export added preference for path to convert
kml_export added preference for path to convert as windows programs are not by default in the PATH
2019-02-25 16:31:22 +01:00
supertobi
a038333cce make kml_export multi OS
replaced mkdir, xdg-open, xdg-user-dir
2019-02-25 10:37:16 +01:00
supertobi
a5304fe74c First step to make kml_export.lua windows friendly
Replaced "/" with PS like in other scripts
2019-02-25 09:48:50 +01:00
wpferguson
aaf564b35c Merge pull request #168 from wpferguson/compatibility_updates
Compatibility updates
2019-02-24 17:28:56 -05:00
Bill Ferguson
de087f743f Fixed compatibility issues. Added new version check to scripts. Renamed lib/dtutils/file/rm() to lib/dtutils/file/rmdir since removing a file in windows with rmdir /q/s results in an error. Fixed os.tmpname() issued in enfuse. Under windows os.tmpname() doesn't put the file in a temporary directory, so fixed it to use darktable.configuration.tmp_dir. Cleaned up documentation in lib/dtutils/system.lua. 2019-02-24 15:19:37 -05:00
supertobi
21a8e441d2 Merge pull request #167 from wpferguson/deprecate_video_mencoder
deprecate video_mencoder
2019-02-22 09:42:06 +01:00