Commit graph

27 commits

Author SHA1 Message Date
Leon Mika f65c5778a9
issue-50: fixed package name (#52)
Changed package name from github.com/lmika/audax to github.com/lmika/dynamo-browse
2023-04-17 08:31:03 +10:00
Leon Mika c89b09447c
Initial version of scripting (#40)
* scripting: added service and controller for scripting

* scripting: have got prompts working

Scripts are now running in a separate go-routine.  When a prompt is encountered, the
script is paused and the user is prompted for input.  This means that the script no
longer needs to worry about synchronisation issues.

* scripting: started working on the session methods

* scripting: added methods to get items and attributes

* scripting: have got loading of scripts working

These act more like plugins and allow defining new commands.

* scripting: have got script scheduling working

Scripts are now executed on a dedicated goroutine and only one script can run at any one time.

* scripting: added session.set_result_set(rs)

* scripting: upgraded tamarin to 0.14

* scripting: started working on set_value

* tamarin: replaced ad-hoc path with query expressions

* scripting: changed value() and set_value() to attr() and set_attr()

Also added 'delete_attr()'

* scripting: added os.exec()

This method is controlled by permissions which govern whether shellouts are allowed
Also fixed a resizing bug with the status window which was not properly handling status messages with newlines

* scripting: added the session.current_item() method

* scripting: added placeholders to query expressions

* scripting: added support for setting and deleteing items with placeholders

Also refactored the dot AST type so that it support placeholders.  Placeholders are not yet supported
for subrefs yet, they need to be identifiers.

* scripting: made setting the result-set push the current result-set to the backstack

* scripting: started working on byte encoding of attribute values

* scripting: finished attrcodec

* scripting: integrated codec into expression

* scripting: added equals and hashcode to queryexpr

This finally finishes the work required to store queries in the backstack

* scripting: fixed some bugs with the back-stack

* scripting: upgraded Tamarin

* scripting: removed some commented out code
2023-01-10 22:27:13 +11:00
Leon Mika 79692302af
Issue 23: Added progress indicators and cancellation (#34)
- Wrapped all table operations in a new foreground job context, which mediates foreground tasks.
- Added cancellation support and partial results for table read operations.
- Added the "mark" command, which can mark, unmark & toggle marked items
- Added support for alias arguments.
- Removed the "unmark" command, and replaced it as an alias to the "marked" command
- Fixed seg faults raised when there is no table shown in the result set.
2022-10-10 10:15:25 +11:00
Leon Mika 982d3a9ca7
Issue 18: Added a popup to modify table columns (#31)
Added a new popup to modify the columns of the table. With this new popup, the user can:

- Show and hide columns
- Move columns around
- Add new columns which are derived from the value of an expression
- Delete columns

Also got the overlay mechanisms working.
2022-10-04 22:23:48 +11:00
Leon Mika 93ec519127
Issue 24: Added read-only mode (#27)
- Added settings to workspace, and added the read-only mode
- Added the `-ro` field which will launch Dynamo-Browse in read-only mode
- Added the `set ro` to enable read-only mode, and `set rw` to enable read-write mode
2022-09-29 22:10:18 +10:00
Leon Mika d9c9e5d845 issue-9: added clearing of existing bindings for keys 2022-08-25 22:31:33 +10:00
Leon Mika a8dd264983 Changed package from awstools to audax 2022-07-28 21:36:16 +10:00
Leon Mika 77f84449f3 A few small changes made while writing the documentation 2022-07-24 09:54:24 +10:00
Leon Mika cc7ead496f awstools: Fixed some bugs with the item view UI model
- The item view model is now being updated when the item itself is being updated
- Fixed a NPE when the item view model receives a nil item
2022-07-18 08:04:03 +10:00
Leon Mika eadf8d1720 Fixed styling of the other tools 2022-06-27 16:05:59 +10:00
Leon Mika 809f9adfea Added mode line
Also rescanning will maintain the current query
2022-06-22 11:57:12 +10:00
Leon Mika 41af399215 A few various changes
- Fixed the '-local' flag to accept host and port
- Added a '-debug' flag to accept a file to write debug log messages
- Added some logic which will force the dark background flag on if MacOS is in dark mode
2022-06-16 22:00:25 +10:00
Leon Mika e5a7b82a63 Prompt user for primary and secondary key for new items 2022-06-09 20:33:19 +10:00
Leon Mika d660608626 Some more work trying to get the contrast of the field types right 2022-06-04 08:39:05 +10:00
Leon Mika 0fb641cdfd Added some colours 2022-06-02 22:39:47 +10:00
Leon Mika 9204947d5e Added renderers for the other types 2022-06-02 21:43:14 +10:00
Leon Mika 16cb6bdc6b put-items: added a command to put a dirty item 2022-05-26 10:17:21 +10:00
Leon Mika 174bab36c3 put-items: started adding some basic commands for putting items 2022-05-26 09:01:39 +10:00
Leon Mika 1b8518b6e4 ssm-browse: header styling 2022-03-30 22:52:26 +11:00
Leon Mika 798150a403 ssm-browse: added mark, filtering and delete items 2022-03-30 21:55:16 +11:00
Leon Mika c49f3913a8 ssm-browse: added mark and delete in dynamo-browse 2022-03-30 21:04:30 +11:00
Leon Mika d3f6475070 ssm-browse: fixed the views of dynamo-browse 2022-03-29 15:46:18 +11:00
Leon Mika 9709e6aed1 table-select: cleanup 2022-03-28 21:36:47 +11:00
Leon Mika aa828df3ae Most of the new models have been reimplemented 2022-03-27 23:19:38 +00:00
Leon Mika 6ab8a3ef44 Rejigged the frames a little 2022-03-27 21:58:41 +00:00
Leon Mika c3d19d5891 Have got the item view working 2022-03-27 21:43:53 +00:00
Leon Mika 2638597f42 Have got the table view working again 2022-03-27 21:21:52 +00:00