home *** CD-ROM | disk | FTP | other *** search
- | Actions defined when the panel shows a zip archive.
- |
- (panel.pattern panel.type cutfirst drop panel.type&)zipname!
- |
- (panel.pattern".zip"cutfirst swap drop dirpart dup
- length dup 1>(2 swap substring)(drop drop "")ifelse
- )zipdirname!
- |
- ( current.isdir
- ( panel.pattern dirpart
- current.name ".." =
- (dup length 1- 1 swap substring dirpart)
- (current.name&)
- ifelse
- panel.pattern filepart makename
- panel.pattern!
- )
- if
- )cur_action.zip!
- |
- ( panel.pattern dirpart
- dup length 1- 1 swap substring dirpart
- panel.pattern filepart makename
- panel.pattern!
- )go_up.zip!
- |
- ( tmp_dir"tmp.$$$"& tmp_filename!
- ( zipdirname swap&nl&tmp_filename write)foreachselected
- "pkzip -d -b" tmp_dir unit_and_name drop& " "&zipname&
- " @"tmp_filename&&execute"del "tmp_filename&exec
- )delete.zip!
- |
- ( tmp_dir"tmp.$$$"& tmp_filename!"pkunzip -c -d "zipname&" "&zipdirname
- current.name&&">"tmp_filename&&(exec)with_nomagic
- tmp_filename pager tmp_filename unlink
- )browse.zip!
-