<!DOCTYPE author [ <!ENTITY non_empty_re "qr/./" > ]> <machine id="VCP::Source::cvs" xmlns="http://slaysys.com/StateML/1.0"> <!-- ================ TRANSITIONS =================== --> <state id="source_cvs_cvsroot_prompt" class-ids="prompt_class"> <name>Source CVSROOT</name> <description> The CVSROOT to read revisions from. Defaults to the CVSROOT environment variable. </description> <entry-handler> if ( $ui->in_edit_mode ) { $default = $ui->source->repo_server; $is_current_value = 1; } else { $default = empty( $ENV{CVSROOT} ) ? undef : $ENV{CVSROOT}; } </entry-handler> <arc from="source_type_prompt" guard="'cvs'" > <description>CVS</description> <handler> $ui->new_source( $answer ); </handler> </arc> <arc to="source_cvs_filespec_prompt" guard="&non_empty_re;"> <description>cvsroot spec</description> <handler> $ui->source->repo_server( $answer ) unless empty $answer; </handler> </arc> </state> <state id="source_cvs_filespec_prompt" class-ids="prompt_class"> <name>Source CVS filespec</name> <description> Enter the cvs filespec of the file(s) to copy. This must start with a CVS module name and end in a filename, directory name, or "..." wildcard: module/... module/file module/path/to/subdir/... module/path/to/subdir/file </description> <entry-handler> if ( $ui->in_edit_mode ) { $default = $ui->source->repo_filespec; $is_current_value = 1; } </entry-handler> <arc to="source_cvs_working_directory_prompt" guard="&non_empty_re;"> <description>module/filepath/...</description> <handler> $ui->source->repo_filespec( $answer ); </handler> </arc> </state> <state id="source_cvs_working_directory_prompt" class-ids="prompt_class"> <name>Source CVS working directory</name> <description> Enter the CVS working directory (Optional). VCP::Source::cvs will cd to this directory before calling cvs and won't initialize a CVS workspace of its own. Leave blank to allow VCP to use a temporary directory. </description> <entry-handler> if ( $ui->in_edit_mode ) { $default = $ui->source->{CVS_WORK_DIR} ; $is_current_value = 1; } </entry-handler> <arc to="source_cvs_binary_checkout_prompt"> <handler> $ui->source->ui_set_cvs_work_dir( $answer ) unless empty $answer; </handler> </arc> </state> <state id="source_cvs_binary_checkout_prompt" class-ids="prompt_class"> <name>Force binary checkout</name> <description> Pass the -kb option to cvs, to force a binary checkout. This is useful when you want a text file to be checked out with Unix linends, or if you know that some files in the repository are not flagged as binary files and should be. </description> <entry-handler> if ( $ui->in_edit_mode ) { $default = $ui->source->{CVS_K_OPTION} =~ /b/ ? "yes" : "no" ; $is_current_value = 1; } else { $default = "no"; } </entry-handler> <arc to="source_cvs_use_cvs_prompt" guard="'yes'"> <description>yes</description> <handler>$ui->source->{CVS_K_OPTION} = "b";</handler> </arc> <arc to="source_cvs_use_cvs_prompt" guard="'no'"> <description>no</description> </arc> </state> <state id="source_cvs_use_cvs_prompt" class-ids="prompt_class"> <name>Use cvs executable</name> <description> This forces VCP to use the cvs executable rather than read local CVSROOT directories directly. This is slower, but may be used to work around any limitations that might crop up in VCP's RCS file parser. </description> <entry-handler> if ( $ui->in_edit_mode ) { $default = $ui->source->{CVS_USE_CVS} ? "yes" : "no" ; $is_current_value = 1; } else { $default = "no"; } </entry-handler> <arc to="dest_id_prompt" guard="'yes'"> <description>yes</description> <handler>$ui->source->{CVS_USE_CVS} = 1;</handler> </arc> <arc to="dest_id_prompt" guard="'no'"> <description>no</description> <handler>$ui->source->{CVS_USE_CVS} = 0;</handler> </arc> </state> <!-- REMOVED FOR NOW, the -r and -d options are not supported in raw RCS file scans and are problematic within the context of doing a conversion, plus we want to keep the newbie UI simple. <state id="source_cvs_revision_prompt" class-ids="prompt_class"> <name>Source cvs revision specification</name> <description> Passed to "cvs log" as a "-r" revision specification. This corresponds to the "-r" option for the rlog command, not either of the "-r" options for the cvs command. See rlog(1) man page for the format. </description> <entry-handler> if ( $ui->in_edit_mode ) { $default = $ui->source->rev_spec; $is_current_value = 1; } </entry-handler> <arc to="source_cvs_date_spec_prompt"> <handler> unless( empty $answer ) { $ui->source->rev_spec( $answer ); $ui->source->force_missing( defined $ui->source->rev_spec ); } </handler> </arc> </state> <state id="source_cvs_date_spec_prompt" class-ids="prompt_class"> <name>Source cvs date specification</name> <description> Passed to 'cvs log' as a "-d" date specification. See rlog(1) man page for the format. </description> <entry-handler> if ( $ui->in_edit_mode ) { $default = $ui->source->date_spec; $is_current_value = 1; } </entry-handler> <arc to="dest_id_prompt"> <handler> $ui->source->date_spec( $answer ) unless empty $answer; </handler> </arc> </state> --> </machine>
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#1 | 6119 | Dimitry Andric | Create branch from //public/revml, changelist 5088, since I originally started making changes to this version. | ||
//guest/perforce_software/revml/ui_machines/VCP-Source-cvs.stml | |||||
#21 | 4581 | Barrie Slaymaker | - user prompts have been improved, but not tested | ||
#20 | 4064 | Barrie Slaymaker |
- RevML is no longer offered in the UI - Sources and dests are given an id in the UI - The .vcp file name defaulting now works |
||
#19 | 4002 | Barrie Slaymaker | - Interactive UI no longer prompts for CVS -r and -d options | ||
#18 | 3859 | Barrie Slaymaker | - New UI files | ||
#17 | 3675 | Barrie Slaymaker | - More of a .vcp file is now editable | ||
#16 | 3667 | Barrie Slaymaker |
- VCP-Source-vss.stml now has atomic questions instead of asking for a command-line-like vss: spec |
||
#15 | 3647 | Barrie Slaymaker |
- All UI prompts & descriptions rewritten. - Minor tweak to VCP::Dest::p4 P4USER defaulting |
||
#14 | 3640 | Barrie Slaymaker |
- xmllint no longer require to build UI - UI now offers multiple choices where appropriate |
||
#13 | 3547 | John Fetkovich | Added defaults to yes/no questions (no in all cases) | ||
#12 | 3523 | John Fetkovich | more ui defaults and checks added | ||
#11 | 3521 | John Fetkovich | default cvsroot from $ENV{CVSROOT} | ||
#10 | 3502 | John Fetkovich | removed obsolete commented out (source,dest)->init calls in stml files | ||
#9 | 3486 | John Fetkovich | moved (source or dest)->init calls to bin/vcp | ||
#8 | 3403 | John Fetkovich |
options given on all multiple choice prompts, and most free-form prompts where it makes sense |
||
#7 | 3399 | John Fetkovich | ui fixes | ||
#6 | 3395 | John Fetkovich | various ui refinements | ||
#5 | 3390 | John Fetkovich | handlers for cvs ui | ||
#4 | 3306 | Barrie Slaymaker | Add StateML namespace support | ||
#3 | 3260 | John Fetkovich | Improve some help texts | ||
#2 | 3254 | Barrie Slaymaker | Redo machine naminf convention. | ||
#1 | 3248 | John Fetkovich |
Created VCP-Source-cvs.stml. Small changes VCP-Source-p4.stml. |