Better styling and reuse for GrafoscopioDocumentation, which allow to define
better and more modular documentation for several packages.
This commit is contained in:
parent
a75174451a
commit
8b29956392
@ -15,37 +15,6 @@ Class {
|
|||||||
#category : #'Grafoscopio-Utils'
|
#category : #'Grafoscopio-Utils'
|
||||||
}
|
}
|
||||||
|
|
||||||
{ #category : #queries }
|
|
||||||
GrafoscopioDocumentation class >> current [
|
|
||||||
"I model the important documents that belong to the Grafoscopio documentation.
|
|
||||||
When more documents become more mature and usable, I will include them."
|
|
||||||
|
|
||||||
| gfcDocumentation |
|
|
||||||
gfcDocumentation := self new.
|
|
||||||
gfcDocumentation repository: (FossilRepo new remote: 'http://mutabit.com/repos.fossil/grafoscopio').
|
|
||||||
gfcDocumentation documents
|
|
||||||
add: 'Docs/Es/Tutoriales/tutorial.ston';
|
|
||||||
add: 'Docs/En/Books/Manual/manual.ston';
|
|
||||||
add: 'Docs/En/dev-notes.ston';
|
|
||||||
add: 'Docs/En/Books/Manual/manual.pdf'.
|
|
||||||
gfcDocumentation localPlace.
|
|
||||||
^ gfcDocumentation
|
|
||||||
]
|
|
||||||
|
|
||||||
{ #category : #operation }
|
|
||||||
GrafoscopioDocumentation class >> dataviz [
|
|
||||||
"I model the important documents that belong to the Grafoscopio documentation.
|
|
||||||
When more documents become more mature and usable, I will include them."
|
|
||||||
|
|
||||||
| gfcDocumentation |
|
|
||||||
gfcDocumentation := self new.
|
|
||||||
gfcDocumentation repository: (FossilRepo new remote: 'http://mutabit.com/repos.fossil/grafoscopio').
|
|
||||||
gfcDocumentation documents
|
|
||||||
add: 'Packages/Dataviz/dataviz.ston'.
|
|
||||||
gfcDocumentation localPlace.
|
|
||||||
^ gfcDocumentation
|
|
||||||
]
|
|
||||||
|
|
||||||
{ #category : #updating }
|
{ #category : #updating }
|
||||||
GrafoscopioDocumentation class >> initialize [
|
GrafoscopioDocumentation class >> initialize [
|
||||||
self
|
self
|
||||||
@ -53,84 +22,6 @@ GrafoscopioDocumentation class >> initialize [
|
|||||||
update: 'dataviz'
|
update: 'dataviz'
|
||||||
]
|
]
|
||||||
|
|
||||||
{ #category : #updating }
|
|
||||||
GrafoscopioDocumentation class >> listOutdatedDocsIn: aDocumentsListName [
|
|
||||||
"I return the list of all documentent where the local copy and the remote copy doesn't match"
|
|
||||||
aDocumentsListName ifNil: [ ^ self ].
|
|
||||||
aDocumentsListName ifEmpty: [ ^ self ].
|
|
||||||
^ (self perform: aDocumentsListName asSymbol) documents reject: [ :doc | (self isFileUpdatedFor: doc) ]
|
|
||||||
]
|
|
||||||
|
|
||||||
{ #category : #updating }
|
|
||||||
GrafoscopioDocumentation class >> listOutdatedIn: aGrafoscopioDocumentation [
|
|
||||||
"I return the list of all documentent where the local copy and the remote copy doesn't match"
|
|
||||||
self listOutdatedDocsIn: (self perform: aGrafoscopioDocumentation) documents
|
|
||||||
]
|
|
||||||
|
|
||||||
{ #category : #operation }
|
|
||||||
GrafoscopioDocumentation class >> openDatavizIntro [
|
|
||||||
self openNotebookFrom: 'dataviz' At: 1
|
|
||||||
]
|
|
||||||
|
|
||||||
{ #category : #operation }
|
|
||||||
GrafoscopioDocumentation class >> openDevNotes [
|
|
||||||
self openNotebookFrom: 'current' At: 3
|
|
||||||
]
|
|
||||||
|
|
||||||
{ #category : #operation }
|
|
||||||
GrafoscopioDocumentation class >> openManual [
|
|
||||||
"I open the proper notebook in the adecuate documentation."
|
|
||||||
self openNotebookFrom: 'current' At: 2
|
|
||||||
]
|
|
||||||
|
|
||||||
{ #category : #operation }
|
|
||||||
GrafoscopioDocumentation class >> openNotebookFrom: aDocumentation At: index [
|
|
||||||
"I open a notebook included with the documentation, located at a given index"
|
|
||||||
| notebookTemp gfcDocs |
|
|
||||||
gfcDocs := self perform: aDocumentation asSymbol.
|
|
||||||
(index between: 1 and: gfcDocs documents size)
|
|
||||||
ifFalse: [ ^ self ]
|
|
||||||
ifTrue: [
|
|
||||||
notebookTemp := (gfcDocs localPlace fullName, '/', (gfcDocs documents at: index)) asFileReference.
|
|
||||||
notebookTemp exists
|
|
||||||
ifTrue: [GrafoscopioNotebook new openFromFile: notebookTemp]
|
|
||||||
ifFalse: [ self updateUIFor: aDocumentation ]]
|
|
||||||
]
|
|
||||||
|
|
||||||
{ #category : #operation }
|
|
||||||
GrafoscopioDocumentation class >> openPDFManual [
|
|
||||||
"I open the documentation in PDF format. I only work on Unix right now, but in the future my creator hopes to be able
|
|
||||||
to have truly multiplatform support"
|
|
||||||
| pdfManual docs |
|
|
||||||
docs := self current.
|
|
||||||
pdfManual := docs documents at: 4.
|
|
||||||
WebBrowser openOn: (docs localPlace / pdfManual) fullName.
|
|
||||||
]
|
|
||||||
|
|
||||||
{ #category : #operation }
|
|
||||||
GrafoscopioDocumentation class >> openTutorial [
|
|
||||||
"I open the proper notebook in the adecuate documentation."
|
|
||||||
self openNotebookFrom: 'current' At: 1
|
|
||||||
]
|
|
||||||
|
|
||||||
{ #category : #updating }
|
|
||||||
GrafoscopioDocumentation class >> update: aDocumentationName [
|
|
||||||
(self listOutdatedDocsIn: aDocumentationName)
|
|
||||||
ifEmpty: [
|
|
||||||
self inform: 'All documents in the ', aDocumentationName,' collection are already updated'.
|
|
||||||
^ self ]
|
|
||||||
ifNotEmpty: [:outdatedDocs |
|
|
||||||
outdatedDocs do: [ :eachDoc | self download: eachDoc].
|
|
||||||
self inform: 'Updating of ', aDocumentationName,' documentation finished.' ]
|
|
||||||
]
|
|
||||||
|
|
||||||
{ #category : #operation }
|
|
||||||
GrafoscopioDocumentation class >> updateAll [
|
|
||||||
self
|
|
||||||
update: 'current';
|
|
||||||
update: 'dataviz'
|
|
||||||
]
|
|
||||||
|
|
||||||
{ #category : #updating }
|
{ #category : #updating }
|
||||||
GrafoscopioDocumentation class >> updateAllUI [
|
GrafoscopioDocumentation class >> updateAllUI [
|
||||||
"Updates documentation (manual, tutorials) from the official repository for a given documentation."
|
"Updates documentation (manual, tutorials) from the official repository for a given documentation."
|
||||||
@ -176,7 +67,7 @@ GrafoscopioDocumentation >> download: fileNameWithRelativePath [
|
|||||||
relativePathFolders do: [ :folder | newPath := newPath / folder ].
|
relativePathFolders do: [ :folder | newPath := newPath / folder ].
|
||||||
parentFolder := newPath asFileReference.
|
parentFolder := newPath asFileReference.
|
||||||
parentFolder exists ifFalse: [ parentFolder ensureCreateDirectory ].
|
parentFolder exists ifFalse: [ parentFolder ensureCreateDirectory ].
|
||||||
GrafoscopioUtils
|
GrafoscopioGenUtils
|
||||||
downloadingFrom: self repository remote asString, '/doc/tip/', fileNameWithRelativePath
|
downloadingFrom: self repository remote asString, '/doc/tip/', fileNameWithRelativePath
|
||||||
withMessage: 'Downloading ', fileName
|
withMessage: 'Downloading ', fileName
|
||||||
into: parentFolder
|
into: parentFolder
|
||||||
|
@ -1,15 +1,15 @@
|
|||||||
"
|
"
|
||||||
I contain simple functionality used by Grafoscopio, Datavis or other
|
I contain simple general functionality used by Grafoscopio, Dataviz
|
||||||
related projects.
|
or other related projects.
|
||||||
"
|
"
|
||||||
Class {
|
Class {
|
||||||
#name : #GrafoscopioUtils,
|
#name : #GrafoscopioGenUtils,
|
||||||
#superclass : #Object,
|
#superclass : #Object,
|
||||||
#category : #'Grafoscopio-Utils'
|
#category : #'Grafoscopio-Utils'
|
||||||
}
|
}
|
||||||
|
|
||||||
{ #category : #'graphical interface' }
|
{ #category : #'graphical interface' }
|
||||||
GrafoscopioUtils class >> downloadingFrom: downloadUrl withMessage: aString into: location [
|
GrafoscopioGenUtils class >> downloadingFrom: downloadUrl withMessage: aString into: location [
|
||||||
| fileName |
|
| fileName |
|
||||||
fileName := (downloadUrl splitOn: $/) last.
|
fileName := (downloadUrl splitOn: $/) last.
|
||||||
(location / fileName) exists ifTrue: [ (location / fileName) ensureDelete ].
|
(location / fileName) exists ifTrue: [ (location / fileName) ensureDelete ].
|
Loading…
Reference in New Issue
Block a user