SVN__RevisionLogBrowser.st
author fm
Mon, 19 Oct 2009 14:21:45 +0200
changeset 391 9bfc9809f0da
parent 358 f9a8d00b85d1
child 730 a28533c1174a
permissions -rw-r--r--
*** empty log message ***

"{ Package: 'stx:libsvn' }"

"{ NameSpace: SVN }"

Browser subclass:#RevisionLogBrowser
	instanceVariableNames:''
	classVariableNames:''
	poolDictionaries:''
	category:'SVN-UI-Browsers'
!

Browser subclass:#Entry
	instanceVariableNames:''
	classVariableNames:''
	poolDictionaries:''
	privateIn:RevisionLogBrowser
!


!RevisionLogBrowser class methodsFor:'interface specs'!

windowSpec
    "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::RevisionLogBrowser andSelector:#windowSpec
     SVN::RevisionLogBrowser new openInterface:#windowSpec
     SVN::RevisionLogBrowser open
    "

    <resource: #canvas>

    ^ 
     #(FullSpec
        name: windowSpec
        window: 
       (WindowSpec
          label: 'Revision log browser'
          name: 'Revision log browser'
          min: (Point 10 10)
          bounds: (Rectangle 0 0 800 600)
        )
        component: 
       (SpecCollection
          collection: (
           (VariableVerticalPanelSpec
              name: 'ListAndDetailPanel'
              layout: (LayoutFrame 0 0 0 0 0 1 0 1)
              showHandle: true
              snapMode: both
              component: 
             (SpecCollection
                collection: (
                 (DataSetSpec
                    name: 'RevisionList'
                    model: selectionHolder
                    hasHorizontalScrollBar: true
                    hasVerticalScrollBar: true
                    dataList: revisionLogEntriesAspect
                    useIndex: false
                    columnHolder: tableColumns
                  )
                 (SubCanvasSpec
                    name: 'Entry'
                    hasHorizontalScrollBar: false
                    hasVerticalScrollBar: false
                    majorKey: #'SVN::RevisionLogBrowser::Entry'
                    subAspectHolders: 
                   (Array
                      
                     (SubChannelInfoSpec
                        subAspect: model
                        aspect: selectionHolder
                      )
                    )
                    createNewApplication: true
                    createNewBuilder: true
                  )
                 )
               
              )
              handles: (Any 0.5 1.0)
            )
           )
         
        )
      )
! !

!RevisionLogBrowser class methodsFor:'plugIn spec'!

aspectSelectors
    "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."

    "Return a description of exported aspects;
     these can be connected to aspects of an embedding application
     (if this app is embedded in a subCanvas)."

    ^ #(
        #model
        #selectionHolder
      ).

! !

!RevisionLogBrowser class methodsFor:'tableColumns specs'!

tableColumns
    "This resource specification was automatically generated
     by the DataSetBuilder of ST/X."

    "Do not manually edit this!! If it is corrupted,
     the DataSetBuilder may not be able to read the specification."

    "
     DataSetBuilder new openOnClass:SVN::RevisionSelectionDialog andSelector:#tableColumns
    "

    <resource: #tableColumns>

    ^#(
      (DataSetColumnSpec
         label: 'Revision'
         activeHelpKey: ''
         labelButtonType: Button
         printSelector: revision
         canSelect: false
         showRowSeparator: false
         showColSeparator: false
       )
      (DataSetColumnSpec
         label: 'Author'
         activeHelpKey: ''
         labelButtonType: Button
         printSelector: author
         canSelect: false
         showRowSeparator: false
         showColSeparator: false
       )
      (DataSetColumnSpec
         label: 'Date'
         activeHelpKey: ''
         labelButtonType: Button
         printSelector: date
         canSelect: false
         showRowSeparator: false
         showColSeparator: false
       )
      )

    "Created: / 21-05-2008 / 09:22:21 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !

!RevisionLogBrowser methodsFor:'aspects'!

revisionLogEntriesAspect

    ^self model

    "Created: / 21-05-2008 / 09:22:37 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !

!RevisionLogBrowser::Entry class methodsFor:'documentation'!

version_SVN
    ^'§Id: SVN__RevisionLogBrowser.st 98 2009-06-24 14:08:18Z vranyj1 §'
! !

!RevisionLogBrowser::Entry class methodsFor:'interface specs'!

changedPathsSpec
    "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::RevisionLogBrowser::Entry andSelector:#changedPathsSpec
     SVN::RevisionLogBrowser::Entry new openInterface:#changedPathsSpec
    "

    <resource: #canvas>

    ^ 
     #(FullSpec
        name: changedPathsSpec
        window: 
       (WindowSpec
          label: 'ChangedPaths'
          name: 'ChangedPaths'
          min: (Point 10 10)
          bounds: (Rectangle 0 0 300 300)
        )
        component: 
       (SpecCollection
          collection: (
           (DataSetSpec
              name: 'ChangePathsList'
              layout: (LayoutFrame 0 0 0 0 0 1 0 1)
              hasHorizontalScrollBar: true
              hasVerticalScrollBar: true
              dataList: changedPathsAspect
              useIndex: false
              columnHolder: changedPathListColumns
              showLabels: false
              columns: 
             (Array
                
               (DataSetColumnSpec
                  label: ''
                  labelAlignment: left
                  labelButtonType: Button
                  usePreferredWidth: true
                  printSelector: icon
                  showRowSeparator: false
                  showColSeparator: false
                ) 
               (DataSetColumnSpec
                  label: 'Path'
                  labelButtonType: Button
                  printSelector: path
                  showRowSeparator: false
                  showColSeparator: false
                )
              )
            )
           )
         
        )
      )
!

revisionInfoSpec
    "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::RevisionLogEntryApp andSelector:#revisionInfoSpec
     SVN::RevisionLogEntryApp new openInterface:#revisionInfoSpec
    "

    <resource: #canvas>

    ^ 
     #(FullSpec
        name: revisionInfoSpec
        window: 
       (WindowSpec
          label: 'Revision Log Entry Info '
          name: 'Revision Log Entry Info '
          min: (Point 10 10)
          bounds: (Rectangle 0 0 360 296)
        )
        component: 
       (SpecCollection
          collection: (
           (LabelSpec
              label: 'Revision:'
              name: 'RevisionLabel'
              layout: (LayoutFrame 4 0 0 0 104 0 25 0)
              translateLabel: true
              adjust: left
            )
           (InputFieldSpec
              name: 'RevisionField'
              layout: (LayoutFrame 105 0 0 0 0 1 25 0)
              model: revisionAspect
              isReadOnly: true
              acceptOnReturn: true
              acceptOnTab: true
              acceptOnLostFocus: true
              acceptOnPointerLeave: false
            )
           (LabelSpec
              label: 'Date:'
              name: 'DateLabel'
              layout: (LayoutFrame 4 0 23 0 104 0 48 0)
              translateLabel: true
              adjust: left
            )
           (InputFieldSpec
              name: 'DateField'
              layout: (LayoutFrame 105 0 25 0 0 1 50 0)
              model: dateAspect
              isReadOnly: true
              acceptOnReturn: true
              acceptOnTab: true
              acceptOnLostFocus: true
              acceptOnPointerLeave: false
            )
           (LabelSpec
              label: 'Author:'
              name: 'AuthorLabel'
              layout: (LayoutFrame 4 0 48 0 104 0 73 0)
              translateLabel: true
              adjust: left
            )
           (InputFieldSpec
              name: 'AuthorField'
              layout: (LayoutFrame 105 0 50 0 0 1 75 0)
              model: authorAspect
              isReadOnly: true
              acceptOnReturn: true
              acceptOnTab: true
              acceptOnLostFocus: true
              acceptOnPointerLeave: false
            )
           (LabelSpec
              label: 'Message:'
              name: 'MessageLabel'
              layout: (LayoutFrame 4 0 73 0 104 0 98 0)
              translateLabel: true
              adjust: left
            )
           (TextEditorSpec
              name: 'MessageField'
              layout: (LayoutFrame 105 0 75 0 0 1 0 1)
              model: messageAspect
              hasHorizontalScrollBar: true
              hasVerticalScrollBar: true
              isReadOnly: true
              viewClassName: ''
            )
           )
         
        )
      )

    "Modified: / 19-04-2008 / 12:28:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
!

windowSpec
    "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::RevisionLogBrowser::Entry andSelector:#windowSpec
     SVN::RevisionLogBrowser::Entry new openInterface:#windowSpec
     SVN::RevisionLogBrowser::Entry open
    "

    <resource: #canvas>

    ^ 
     #(FullSpec
        name: windowSpec
        window: 
       (WindowSpec
          label: 'Revision Log Entry'
          name: 'Revision Log Entry'
          min: (Point 10 10)
          bounds: (Rectangle 0 0 300 300)
        )
        component: 
       (SpecCollection
          collection: (
           (NoteBookViewSpec
              name: 'NoteBook'
              layout: (LayoutFrame 0 0 0 0 0 1 0 1)
              menu: tabList
            )
           )
         
        )
      )
! !

!RevisionLogBrowser::Entry class methodsFor:'list specs'!

tabList
    "This resource specification was automatically generated
     by the TabListEditor of ST/X."

    "Do not manually edit this!! If it is corrupted,
     the TabListEditor may not be able to read the specification."

    "
     TabListEditor new openOnClass: self andSelector:#tabList
    "

    <resource: #tabList>

    ^     #(
       (TabItem
          label: 'Revision info'
          minorKey: revisionInfoSpec
          createNewBuilder: false
        )
       (TabItem
          label: 'Changed paths'
          minorKey: changedPathsSpec
          createNewBuilder: false
        )
       )
     
      collect:[:aTab| TabItem new fromLiteralArrayEncoding:aTab ]

    "Modified: / 24-06-2009 / 15:21:07 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !

!RevisionLogBrowser::Entry class methodsFor:'plugIn spec'!

aspectSelectors
    "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."

    "Return a description of exported aspects;
     these can be connected to aspects of an embedding application
     (if this app is embedded in a subCanvas)."

    ^ #(
        #model
      ).

! !

!RevisionLogBrowser::Entry class methodsFor:'tableColumns specs'!

changedPathListColumns
    "This resource specification was automatically generated
     by the DataSetBuilder of ST/X."

    "Do not manually edit this!! If it is corrupted,
     the DataSetBuilder may not be able to read the specification."

    "
     DataSetBuilder new openOnClass:SVN::RevisionLogBrowser::Entry andSelector:#changedPathListColumns
    "

    <resource: #tableColumns>

    ^#(
      (DataSetColumnSpec
         label: ''
         labelButtonType: Button
         usePreferredWidth: true
         width: 20
         minWidth: 20
         printSelector: icon
         canSelect: false
         showRowSeparator: false
         showColSeparator: false
       )
      (DataSetColumnSpec
         label: 'Column 2'
         labelButtonType: Button
         printSelector: path
         canSelect: false
         showRowSeparator: false
         showColSeparator: false
       )
      )
    
! !

!RevisionLogBrowser::Entry methodsFor:'aspects'!

authorAspect

    |holder|

    (holder := builder bindingAt:#authorAspect) isNil ifTrue:[
        holder := (AspectAdaptor forAspect:#author)
                    subjectChannel:self modelHolder;
                    yourself.
        builder aspectAt:#authorAspect put:holder.
    ].
    ^ holder.

    "Created: / 19-04-2008 / 12:01:44 / Jan Vrany <vranyj1@fel.cvut.cz>"
!

changedPathsAspect

    |holder|

    (holder := builder bindingAt:#changedPathsAspect) isNil ifTrue:[
        holder := (AspectAdaptor forAspect:#changedPaths)
                    subjectChannel:self modelHolder;
                    yourself.
        builder aspectAt:#changedPathsAspect put:holder.
    ].
    ^ holder.

    "Created: / 24-06-2009 / 15:11:16 / Jan Vrany <vranyj1@fel.cvut.cz>"
!

dateAspect

    |holder|

    (holder := builder bindingAt:#dateAspect) isNil ifTrue:[
        holder := (AspectAdaptor forAspect:#date)
                    subjectChannel:self modelHolder;
                    yourself.
        builder aspectAt:#dateAspect put:holder.
    ].
    ^ holder.

    "Created: / 19-04-2008 / 12:01:28 / Jan Vrany <vranyj1@fel.cvut.cz>"
!

messageAspect

    |holder|

    (holder := builder bindingAt:#messageAspect) isNil ifTrue:[
        holder := (AspectAdaptor forAspect:#message)
                    subjectChannel:self modelHolder;
                    yourself.
        builder aspectAt:#messageAspect put:holder.
    ].
    ^ holder.

    "Created: / 19-04-2008 / 12:02:02 / Jan Vrany <vranyj1@fel.cvut.cz>"
!

revisionAspect

    |holder|

    (holder := builder bindingAt:#revisionAspect) isNil ifTrue:[
        holder := (AspectAdaptor forAspect:#revision)
                    subjectChannel:self modelHolder;
                    yourself.
        builder aspectAt:#revisionAspect put:holder.
    ].
    ^ holder.

    "Created: / 19-04-2008 / 12:00:06 / Jan Vrany <vranyj1@fel.cvut.cz>"
!

tabList
    "Generated by the TabListEditor"

    |list|

    (list := builder bindingAt:#tabList) isNil ifTrue:[
        builder aspectAt:#tabList put:(list := self class tabList).
    ].
    ^ list

    "Created: / 19-04-2008 / 11:47:46 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !

!RevisionLogBrowser class methodsFor:'documentation'!

version
    ^ '$Header$'
!

version_CVS
    ^ '$Header$'
!

version_SVN
    ^'§Id: SVN__RevisionLogBrowser.st 98 2009-06-24 14:08:18Z vranyj1 §'
! !