Skip to content

Commit 5aac655

Browse files
authored
Merge pull request #61 from hpi-swa-teaching/master
PowerSqueak v0.3
2 parents 3e0dd91 + 5e64748 commit 5aac655

File tree

183 files changed

+936
-121
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

183 files changed

+936
-121
lines changed

README.md

Lines changed: 57 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# PowerSqueak [![Build Status](https://travis-ci.org/hpi-swa-teaching/SWT18-Project-09.svg?branch=master)](https://travis-ci.org/hpi-swa-teaching/SWT18-Project-09)[![Coverage Status](https://coveralls.io/repos/github/hpi-swa-teaching/SWT18-Project-09/badge.svg?branch=master)](https://coveralls.io/github/hpi-swa-teaching/SWT18-Project-09?branch=master)
1+
# PowerSqueak [![Build Status](https://travis-ci.org/hpi-swa-teaching/SWT18-Project-09.svg?branch=release)](https://travis-ci.org/hpi-swa-teaching/SWT18-Project-09)[![Coverage Status](https://coveralls.io/repos/github/hpi-swa-teaching/SWT18-Project-09/badge.svg?branch=release)](https://coveralls.io/github/hpi-swa-teaching/SWT18-Project-09?branch=release)
22

33
A presentation tool for the Squeak development platform
44

@@ -10,19 +10,72 @@ Please check [Travis-ci](https://travis-ci.org/hpi-swa-teaching/SWT18-Project-09
1010

1111
Squeak 5.0 is officially unsupported (see [Travis-ci](https://travis-ci.org/hpi-swa-teaching/SWT18-Project-09)).
1212

13+
## Overview
14+
* [Overview](https://github.com/hpi-swa-teaching/SWT18-Project-09#overview)
15+
* [Installation Instructions](https://github.com/hpi-swa-teaching/SWT18-Project-09#installation-instructions)
16+
* [Build status](https://github.com/hpi-swa-teaching/SWT18-Project-09#build-status)
17+
* [Using PowerSqueak](https://github.com/hpi-swa-teaching/SWT18-Project-09#using-powersqueak)
18+
* [Edit mode](https://github.com/hpi-swa-teaching/SWT18-Project-09#edit-mode)
19+
* [Presentation mode](https://github.com/hpi-swa-teaching/SWT18-Project-09#presentation-mode)
20+
* [Interactive/Non-Interactive mode](https://github.com/hpi-swa-teaching/SWT18-Project-09#interactivenon-interactive-mode)
21+
* [saving and loading](https://github.com/hpi-swa-teaching/SWT18-Project-09#saving-and-loading)
22+
1323
## Installation Instructions
1424
For easy installation, please first install [Metacello](https://github.com/Metacello/metacello).
1525

1626
Then run the following code in your Squeak 5.1/6.0(trunk) image:
1727
``` smalltalk
1828
Metacello new
1929
baseline: 'Presenter';
20-
repository: 'github://hpi-swa-teaching/SWT18-Project-09:master/packages';
30+
repository: 'github://hpi-swa-teaching/SWT18-Project-09:release/packages';
2131
load.
2232
```
2333

34+
## Build status
35+
| [Release](https://github.com/hpi-swa-teaching/SWT18-Project-09/releases/latest) | master
36+
| ------------------------- | ------------------- |
37+
| [![Build Status](https://travis-ci.org/hpi-swa-teaching/SWT18-Project-09.svg?branch=release)](https://travis-ci.org/hpi-swa-teaching/SWT18-Project-09) | [![Build Status](https://travis-ci.org/hpi-swa-teaching/SWT18-Project-09.svg?branch=master)](https://travis-ci.org/hpi-swa-teaching/SWT18-Project-09) |
38+
| [![Coverage Status](https://coveralls.io/repos/github/hpi-swa-teaching/SWT18-Project-09/badge.svg?branch=release)](https://coveralls.io/github/hpi-swa-teaching/SWT18-Project-09?branch=release) | [![Coverage Status](https://coveralls.io/repos/github/hpi-swa-teaching/SWT18-Project-09/badge.svg?branch=master)](https://coveralls.io/github/hpi-swa-teaching/SWT18-Project-09?branch=master) |
39+
2440
## Using PowerSqueak
25-
To open PowerSqueak run: ``` PSPresentationTool open. ```
41+
To open PowerSqueak either
42+
* run: ``` PSPresentationTool open. ```
43+
* click PowerSqueak in the "Apps" drop-down-menu<br><img src="/pictures/apps-drawer.png" alt="Open PowerSqueak in the Apps menu" width="250">
2644

27-
You can then use the buttons at the top to create, delete and navigate slides and to create different slide elements (like text boxes, and images) and drop them onto the slide.
45+
### Edit mode
46+
During edit mode, you can use the buttons at the top to create, delete and navigate slides and to create different slide elements (like text boxes, and images) and drop them onto the slide.
2847
You may also drop in other Morphs, but be aware, that some features of those Morphs might not work as expected.
48+
49+
For advanced features like deleting morphs or resizing text, right-click the morph.
50+
<br><img src="/pictures/right-click.png" alt="Right-click example" width="400">
51+
52+
### Presentation mode
53+
To enter presentation mode, click the "Present" button.
54+
55+
To control your presentation during presentation mode, use:
56+
57+
| Key | Action |
58+
| ------- | ------- |
59+
| Esc | Leave presentation mode |
60+
| right arrow/page down | next slide |
61+
| left arrow/page up | previous slide |
62+
| Number keys | Jump to a slide number |
63+
| i | (de-)activate interactivity and (un-)hide cursor |
64+
#### Interactive/Non-Interactive mode
65+
By pressing "i" during presentation mode, you can disable/enable interactivity and hide/unhide the cursor.
66+
This mode is added to avoid the visual clutter of the cursor and to keep text on slides from grabbing the keyboard input, which prevents you from changing slides.
67+
68+
Leaving presentation mode also enables interactivity and unhides the cursor.
69+
70+
### Saving and loading
71+
PowerSqueak can save and load presentations to/from the file system.
72+
73+
Use the corresponding save/load buttons to save/load the presentation.
74+
If you want to view the saved files, go to the PSPresentation folder in your Squeak VMs folder.
75+
You can share presentations by copying any presentation in the PSPresentation folder into the PSPresentations folder of another image.
76+
In the other image you can then load the presentation as usual in PowerSqueak.
77+
78+
``` diff
79+
- Warning: some morphs may crash your image if they are saved/loaded!
80+
- It is recommended, that you save your image before every save/load operation in PowerSqueak
81+
```
Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
baseline
22
preLoad
3-
3+
4+
"Fixes an invalid state, which is present in some versions of Squeak.
5+
Required in order for Text scaling to work correctly"
46
(TextStyle named: 'BitstreamVeraSans') fontArray do: [:font |
5-
font
6-
instVarNamed: #derivatives
7-
put: ((font instVarNamed: #derivatives) reject: [:ea | ea isKindOf: TTCFontSet])]
7+
font
8+
instVarNamed: #derivatives
9+
put: ((font instVarNamed: #derivatives) reject: [:ea | ea isKindOf: TTCFontSet])]

packages/BaselineOfPresenter.package/BaselineOfPresenter.class/methodProperties.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@
44
"instance" : {
55
"baseline:" : "LM 6/13/2018 13:41",
66
"postLoad" : "LM 6/13/2018 13:51",
7-
"preLoad" : "WoC 5/28/2018 17:40" } }
7+
"preLoad" : "LM 6/20/2018 18:45" } }

packages/Presenter-Core.package/PSContentContainer.class/instance/addContent..st

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,5 @@ addContent: aMorph
55
position: aMorph position;
66
child: aMorph;
77
extent: aMorph extent;
8-
addMorph: aMorph.
9-
self addMouseCaptureFilter: self
8+
addMorph: aMorph;
9+
addMouseCaptureFilter: self
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
context menu
2+
copyChildToHand
3+
4+
| copy |
5+
copy := self child copy.
6+
copy center: ActiveHand center.
7+
ActiveHand grabMorph: copy.

packages/Presenter-Core.package/PSContentContainer.class/instance/defaultContextMenuContent.st

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,12 @@ accessing
22
defaultContextMenuContent
33

44
^ #(
5+
('grab' grabChild)
6+
-
57
('delete' abandon)
68
-
79
('bring to front' comeToFront)
810
('send to back' goBehind)
11+
-
12+
('duplicate' copyChildToHand)
913
)
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
context menu
2+
grabChild
3+
4+
self child center: ActiveHand position.
5+
ActiveHand grabMorph: self child
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
scaling
22
notifySlideRescale: newExtent
33

4-
(self child hasProperty: #acceptRescale) ifTrue: [self child rescale: newExtent]
4+
(self child hasProperty: #acceptRescale)
5+
ifTrue: [self child rescale: newExtent]
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
resizing
22
placeHandles
33

4-
self resizeHandles withIndexDo: [:each :index |
4+
self resizeHandles withIndexDo: [:each :index |
55
each center: (self corners at: index)]

packages/Presenter-Core.package/PSContentContainer.class/methodProperties.json

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,17 @@
22
"class" : {
33
"for:" : "MK 5/18/2018 16:30" },
44
"instance" : {
5-
"addContent:" : "MK 6/1/2018 16:37",
5+
"addContent:" : "LM 6/15/2018 19:11",
66
"addHandleAtPosition:withIndex:" : "MK 5/25/2018 17:37",
77
"addResizeHandles" : "MK 5/25/2018 17:39",
88
"child" : "MK 5/18/2018 20:03",
99
"child:" : "LM 5/21/2018 12:48",
10+
"copyChildToHand" : "LM 6/17/2018 11:52",
1011
"corners" : "MK 5/25/2018 17:11",
11-
"createContextMenu" : "MK 6/1/2018 18:36",
12+
"createContextMenu" : "LB 6/15/2018 21:42",
1213
"createHandleAtPosition:withIndex:" : "MK 5/25/2018 17:37",
13-
"defaultContextMenuContent" : "MK 6/1/2018 18:06",
14-
"disablePresentationMode" : "MK 5/25/2018 16:12",
14+
"defaultContextMenuContent" : "LM 6/17/2018 11:52",
15+
"disablePresentationMode" : "WoC 6/17/2018 18:44",
1516
"dragCorner:event:fromHandle:" : "MK 5/25/2018 17:10",
1617
"enablePresentationMode" : "LM 6/8/2018 20:10",
1718
"extent:" : "MK 5/25/2018 17:11",
@@ -20,6 +21,7 @@
2021
"extentTopLeft:" : "MK 5/25/2018 17:12",
2122
"extentTopRight:" : "MK 5/25/2018 17:12",
2223
"filterEvent:for:" : "MK 6/1/2018 18:02",
24+
"grabChild" : "LM 6/15/2018 16:32",
2325
"handleLayerNumber" : "MK 5/25/2018 16:26",
2426
"handlesMouseDown:" : "WoC 5/22/2018 19:48",
2527
"hasHandles" : "MK 5/18/2018 19:42",
@@ -28,8 +30,8 @@
2830
"initialize" : "MK 5/25/2018 17:10",
2931
"layoutFractionsOf:" : "LB 5/22/2018 16:09",
3032
"mouseDown:" : "MK 6/1/2018 16:25",
31-
"notifySlideRescale:" : "LB 5/25/2018 16:42",
32-
"placeHandles" : "MK 5/18/2018 20:16",
33+
"notifySlideRescale:" : "LM 6/17/2018 19:02",
34+
"placeHandles" : "WoC 6/17/2018 13:22",
3335
"removeResizeHandles" : "MK 5/25/2018 16:18",
3436
"removedMorph:" : "WoC 5/23/2018 18:40",
3537
"resizeChild" : "MK 5/18/2018 20:03",

0 commit comments

Comments
 (0)