From 1d8276d4f4e50baccf2239a9019855bed4794ebe Mon Sep 17 00:00:00 2001 From: SantiagoBragagnolo Date: Thu, 26 Mar 2020 13:27:00 +0000 Subject: [PATCH] Changes on the menu --- src/Grafoscopio/GfWorldMenu.class.st | 12 ++++++------ src/Grafoscopio/GrafoscopioNewTextModel.class.st | 14 ++++++++++++-- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/src/Grafoscopio/GfWorldMenu.class.st b/src/Grafoscopio/GfWorldMenu.class.st index 262a778..d726954 100644 --- a/src/Grafoscopio/GfWorldMenu.class.st +++ b/src/Grafoscopio/GfWorldMenu.class.st @@ -13,12 +13,12 @@ Class { { #category : #'world menu' } GfWorldMenu class >> helpMenuOn: aBuilder [ - + (aBuilder item: #GfManual) label: 'Manual'; order: 1; parent: #GfHelpAndDocs; - action: [ GrafoscopioNewNotebook open: GrafoscopioDocs manual ]. + action: [ GrafoscopioNotebook open: GrafoscopioDocs manual ]. (aBuilder item: #GfManualPDF) label: 'Manual (PDF)'; order: 2; @@ -28,12 +28,12 @@ GfWorldMenu class >> helpMenuOn: aBuilder [ label: 'Dataviz'; order: 3; parent: #GfHelpAndDocs; - action: [ GrafoscopioNewNotebook open: DatavizDocs introNotebook ]. + action: [ GrafoscopioNotebook open: DatavizDocs introNotebook ]. (aBuilder item: #GfHelpDevNotes) label: 'Devs''s notes'; order: 4; parent: #GfHelpAndDocs; - action: [ GrafoscopioNewNotebook open: GrafoscopioDocs devNotes ]. + action: [ GrafoscopioNotebook open: GrafoscopioDocs devNotes ]. (aBuilder item: #GfHelpAbout) label: 'About Grafoscopio'; order: 5; @@ -122,13 +122,13 @@ GfWorldMenu class >> mainMenuItemsOn: aBuilder [ GfWorldMenu class >> openRecentMenu: aBuilder [ - GrafoscopioNewNotebook recents + GrafoscopioNotebook recents do: [ :f | (aBuilder item: #'Open', f basename ) label: 'Open ', f basename; order: 1; parent: #GfLaunchOpenRecent; - action: [ GrafoscopioNewNotebook open: f ] ] + action: [ GrafoscopioNotebook open: f ] ] ] { #category : #'world menu' } diff --git a/src/Grafoscopio/GrafoscopioNewTextModel.class.st b/src/Grafoscopio/GrafoscopioNewTextModel.class.st index f946c43..fcc4e63 100644 --- a/src/Grafoscopio/GrafoscopioNewTextModel.class.st +++ b/src/Grafoscopio/GrafoscopioNewTextModel.class.st @@ -5,13 +5,15 @@ Class { 'up', 'down', 'delete', - 'editionMode' + 'editionMode', + 'lastHeightUsed' ], #category : #'Grafoscopio-New-UI' } { #category : #initialization } GrafoscopioNewTextModel >> createLayoutFor: aGrafoscopioNodeContent [ + lastHeightUsed := (self heightFor: aGrafoscopioNodeContent). ^ editionMode ifTrue: [ self editionLayoutFor: aGrafoscopioNodeContent ] ifFalse: [ self normalLayoutFor: aGrafoscopioNodeContent ] @@ -50,7 +52,7 @@ GrafoscopioNewTextModel >> initializeWidgets [ { #category : #initialization } GrafoscopioNewTextModel >> newTextComponent [ ^ self newText - whenTextChangedDo: [ model text: body text ]; + whenTextChangedDo: [ self textChanged ]; autoAccept: true; yourself ] @@ -62,6 +64,14 @@ GrafoscopioNewTextModel >> normalLayoutFor: aGrafoscopioNodeContent [ height: (self heightFor: aGrafoscopioNodeContent) ] +{ #category : #initialization } +GrafoscopioNewTextModel >> textChanged [ + model text: body text. + (lastHeightUsed - (self heightFor: model text )) abs + > (lastHeightUsed * 0.1) + ifTrue: [ self modelChanged ] +] + { #category : #initialization } GrafoscopioNewTextModel >> toogleEditionMode [ editionMode := editionMode not.