"{ Package: 'stx:libsvn' }"
"{ NameSpace: SVN }"
Dialog subclass:#RepositoryConfigurationDialog
instanceVariableNames:'packageHolder urlHolder'
classVariableNames:''
poolDictionaries:''
category:'SVN-UI-Dialogs'
!
!RepositoryConfigurationDialog class methodsFor:'help specs'!
helpSpec
"This resource specification was automatically generated
by the UIHelpTool of ST/X."
"Do not manually edit this!! If it is corrupted,
the UIHelpTool may not be able to read the specification."
"
UIHelpTool openOnClass:SVN::RepositoryConfigurationDialog
"
<resource: #help>
^ super helpSpec addPairsFrom:#(
#Package
'Package name may contain wild cards: \ * matches any text\ # matches any character\ [...] matches set of characters'
#URL
'Repository url. Following variables are expanded\ %p - full package name (ex: ''stx/goodies/libsvn'')'
)
! !
!RepositoryConfigurationDialog class methodsFor:'interface specs'!
contentSpec
"This resource specification was automatically generated
by the UIPainter of ST/X."
"Do not manually edit this!! If it is corrupted,
the UIPainter may not be able to read the specification."
"
UIPainter new openOnClass:SVN::RepositoryConfigurationDialog andSelector:#contentSpec
SVN::RepositoryConfigurationDialog new openInterface:#contentSpec
"
<resource: #canvas>
^
#(FullSpec
name: contentSpec
window:
(WindowSpec
label: 'Repository configuration'
name: 'Repository configuration'
min: (Point 10 10)
bounds: (Rectangle 0 0 647 345)
)
component:
(SpecCollection
collection: (
(TransparentBoxSpec
name: 'Content'
layout: (LayoutFrame 0 0 -30 0.5 0 1 30 0.5)
component:
(SpecCollection
collection: (
(LabelSpec
label: 'Package:'
name: 'PackageLabel'
layout: (LayoutFrame 0 0 15 0 120 0 35 0)
translateLabel: true
adjust: right
)
(InputFieldSpec
name: 'Package'
layout: (LayoutFrame 122 0 5 0 -2 1 30 0)
activeHelpKey: Package
enableChannel: svnEnabledAspect
model: packageHolder
immediateAccept: false
acceptOnReturn: true
acceptOnTab: true
acceptOnLostFocus: true
modifiedChannel: modifiedChannel
acceptOnPointerLeave: true
valueChangeCallBackSelector: validate
)
(LabelSpec
label: 'Repository URL:'
name: 'URLLabel'
layout: (LayoutFrame 0 0 47 0 120 0 62 0)
translateLabel: true
adjust: right
)
(InputFieldSpec
name: 'URL'
layout: (LayoutFrame 122 0 37 0 0 1 62 0)
activeHelpKey: URL
enableChannel: svnEnabledAspect
model: urlHolder
immediateAccept: false
acceptOnReturn: true
acceptOnTab: true
acceptOnLostFocus: true
modifiedChannel: modifiedChannel
acceptOnPointerLeave: true
valueChangeCallBackSelector: validate
)
)
)
)
)
)
)
! !
!RepositoryConfigurationDialog methodsFor:'accessing'!
answerValueSelector
^#model
"Modified: / 16-08-2009 / 11:54:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
!
package
^self packageHolder value
"Created: / 16-08-2009 / 17:19:39 / Jan Vrany <vranyj1@fel.cvut.cz>"
!
url
^self urlHolder value
"Created: / 16-08-2009 / 17:02:01 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !
!RepositoryConfigurationDialog methodsFor:'accessing - defaults'!
defaultModel
^RepositoryConfiguration new
"Created: / 16-08-2009 / 16:02:43 / Jan Vrany <vranyj1@fel.cvut.cz>"
!
defaultTitle
^'Repository configuration'
"Created: / 03-10-2008 / 13:58:40 / Jan Vrany <vranyj1@fel.cvut.cz>"
"Modified: / 16-08-2009 / 16:12:12 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !
!RepositoryConfigurationDialog methodsFor:'actions'!
doAccept
self canDoAccept ifFalse:[^self].
self model
package: self package;
url: self url.
super doAccept.
"Created: / 16-08-2009 / 17:02:49 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !
!RepositoryConfigurationDialog methodsFor:'aspects'!
packageHolder
<resource: #uiAspect>
"automatically generated by UIPainter ..."
"*** the code below creates a default model when invoked."
"*** (which may not be the one you wanted)"
"*** Please change as required and accept it in the browser."
"*** (and replace this comment by something more useful ;-)"
packageHolder isNil ifTrue:[
packageHolder := ValueHolder new.
"/ if your app needs to be notified of changes, uncomment one of the lines below:
"/ packageHolder addDependent:self.
"/ packageHolder onChangeSend:#packageHolderChanged to:self.
].
^ packageHolder.
!
urlHolder
<resource: #uiAspect>
"automatically generated by UIPainter ..."
"*** the code below creates a default model when invoked."
"*** (which may not be the one you wanted)"
"*** Please change as required and accept it in the browser."
"*** (and replace this comment by something more useful ;-)"
urlHolder isNil ifTrue:[
urlHolder := ValueHolder new.
"/ if your app needs to be notified of changes, uncomment one of the lines below:
"/ urlHolder addDependent:self.
"/ urlHolder onChangeSend:#urlHolderChanged to:self.
].
^ urlHolder.
! !
!RepositoryConfigurationDialog methodsFor:'validation'!
validate
| url |
[url := self url.
url
ifNil:
[^self canDoAccept: false]
ifNotNil:
[url := url asURL.
url isValidSvnRepositoryUrl
ifFalse:[^self canDoAccept: false]
ifTrue:[self urlHolder setValue: url printString]].
self canDoAccept: true.
] on: SvnError do:
[self canDoAccept: false].
"Created: / 16-08-2009 / 16:25:55 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !
!RepositoryConfigurationDialog class methodsFor:'documentation'!
version
^ '$Header$'
!
version_CVS
^ '$Header$'
!
version_SVN
^'§Id: SVN__RepositoryConfigurationDialog.st 107 2009-08-16 17:21:27Z vranyj1 §'
! !