Documentation: Improving UI experience for dowloading main tutorial.
This commit is contained in:
parent
65a0e3488d
commit
25598642b3
@ -84,6 +84,43 @@ GrafoscopioBrowser class >> configureSettings [
|
|||||||
]
|
]
|
||||||
]
|
]
|
||||||
|
|
||||||
|
{ #category : #updating }
|
||||||
|
GrafoscopioBrowser class >> downloadTutorial [
|
||||||
|
"I download the interactive tutorial in STON format.
|
||||||
|
I define some metadata associated to the tutorial document.
|
||||||
|
Language is provided according to the ISO 639-1 code convention."
|
||||||
|
|
||||||
|
| doc client |
|
||||||
|
|
||||||
|
doc := Dictionary
|
||||||
|
with: 'type' -> 'tutorial'
|
||||||
|
with: 'language' -> 'ES_CO'
|
||||||
|
with: 'remote' -> 'http://mutabit.com/repos.fossil/grafoscopio/doc/tip/Docs/Es/Tutoriales/tutorial.ston'
|
||||||
|
with: 'local' -> './Docs/Es/Tutoriales/'.
|
||||||
|
((doc at: 'local'), 'tutorial.ston') asFileReference exists
|
||||||
|
ifTrue: [
|
||||||
|
((doc at: 'local'), 'tutorial.temp.ston') asFileReference exists
|
||||||
|
ifTrue: [ ((doc at: 'local'), 'tutorial.temp.ston') asFileReference delete].
|
||||||
|
((doc at: 'local'), 'tutorial.ston') asFileReference renameTo: 'tutorial.temp.ston'
|
||||||
|
].
|
||||||
|
[:bar |
|
||||||
|
bar title: 'Actualizando el tutorial...'.
|
||||||
|
[client := ZnClient new.
|
||||||
|
client
|
||||||
|
get: (doc at: 'remote');
|
||||||
|
signalProgress: true;
|
||||||
|
downloadTo: (doc at: 'local').
|
||||||
|
]
|
||||||
|
on: HTTPProgress
|
||||||
|
do: [ :progress |
|
||||||
|
progress isEmpty ifFalse: [ bar current: progress percentage ].
|
||||||
|
progress resume ].
|
||||||
|
|
||||||
|
] asJob run.
|
||||||
|
client isSuccess
|
||||||
|
ifFalse: [ self inform: 'Algo salió mal. Verifique su conexión a Internet.' ]
|
||||||
|
]
|
||||||
|
|
||||||
{ #category : #'graphical interface' }
|
{ #category : #'graphical interface' }
|
||||||
GrafoscopioBrowser class >> messageAbout [
|
GrafoscopioBrowser class >> messageAbout [
|
||||||
"Shows the author, license, sponsors and main contributors to the project and point to further documentation on the web"
|
"Shows the author, license, sponsors and main contributors to the project and point to further documentation on the web"
|
||||||
@ -310,6 +347,10 @@ GrafoscopioBrowser class >> updateDocumentation [
|
|||||||
with: 'remote' -> 'http://mutabit.com/repos.fossil/grafoscopio/doc/tip/Docs/Es/Tutoriales/tutorial.ston'
|
with: 'remote' -> 'http://mutabit.com/repos.fossil/grafoscopio/doc/tip/Docs/Es/Tutoriales/tutorial.ston'
|
||||||
with: 'local' -> './Docs/Es/Tutoriales/'
|
with: 'local' -> './Docs/Es/Tutoriales/'
|
||||||
).
|
).
|
||||||
|
UIManager default
|
||||||
|
displayProgress: 'Actualizando la documentación'
|
||||||
|
from: 0.0 to: 0.1
|
||||||
|
during: [
|
||||||
docs do: [:each |
|
docs do: [:each |
|
||||||
client := ZnClient new.
|
client := ZnClient new.
|
||||||
client get: (each at: 'remote').
|
client get: (each at: 'remote').
|
||||||
@ -322,7 +363,7 @@ GrafoscopioBrowser class >> updateDocumentation [
|
|||||||
fileLocation asFileReference
|
fileLocation asFileReference
|
||||||
writeStreamDo: [:stream |
|
writeStreamDo: [:stream |
|
||||||
stream write: client contents utf8Decoded asString].
|
stream write: client contents utf8Decoded asString].
|
||||||
].
|
]].
|
||||||
self inform: 'Actualización de la documentación terminada'.
|
self inform: 'Actualización de la documentación terminada'.
|
||||||
]
|
]
|
||||||
].
|
].
|
||||||
@ -508,33 +549,12 @@ GrafoscopioBrowser class >> updateSystem [
|
|||||||
GrafoscopioBrowser class >> updateTutorial [
|
GrafoscopioBrowser class >> updateTutorial [
|
||||||
"I Update main tutorial from official repository"
|
"I Update main tutorial from official repository"
|
||||||
|
|
||||||
| update filePath fileLocation client docs |
|
| update |
|
||||||
update := (UIManager default
|
update := (UIManager default
|
||||||
confirm: '¿Desea actualizar la documentación?'
|
confirm: '¿Desea actualizar el tutorial?'
|
||||||
label: 'Actualizar el tutorial').
|
label: 'Actualizar el tutorial').
|
||||||
update
|
update
|
||||||
ifTrue: [
|
ifTrue: [self downloadTutorial]
|
||||||
docs := Dictionary
|
|
||||||
with: 'tutorial' -> (Dictionary
|
|
||||||
with: 'remote' -> 'http://mutabit.com/repos.fossil/grafoscopio/doc/tip/Docs/Es/Tutoriales/tutorial.ston'
|
|
||||||
with: 'local' -> './Docs/Es/Tutoriales/'
|
|
||||||
).
|
|
||||||
docs do: [:each |
|
|
||||||
client := ZnClient new.
|
|
||||||
client get: (each at: 'remote').
|
|
||||||
client isSuccess
|
|
||||||
ifFalse: [ self inform: 'Algo salió mal. Verifique su conexión a Internet.' ]
|
|
||||||
ifTrue: [
|
|
||||||
filePath := each at: 'local'.
|
|
||||||
filePath asFileReference ensureCreateDirectory.
|
|
||||||
fileLocation := filePath, ((each at: 'remote') splitOn: '/') last.
|
|
||||||
fileLocation asFileReference
|
|
||||||
writeStreamDo: [:stream |
|
|
||||||
stream write: client contents utf8Decoded asString].
|
|
||||||
].
|
|
||||||
self inform: 'Actualización del tutorial terminada'.
|
|
||||||
]
|
|
||||||
].
|
|
||||||
]
|
]
|
||||||
|
|
||||||
{ #category : #updating }
|
{ #category : #updating }
|
||||||
|
Loading…
Reference in New Issue
Block a user