kapstok / NHL-DePa2 (public) (License: Unspecified) (since 2018-11-09) (hash sha1)
Design Patterns school project; a GUI using multiple Design Patterns.
List of commits:
Subject Hash Author Date (UTC)
Fix bug: activate group after movement with cloning. 482c53ecab43cdee03590949669c22227d104475 Jan Allersma 2018-11-08 10:35:27
Include Groups in Commands, removing dp.groups.groups. 699f767ac316edd481630a943f7a1884c5bc16f2 Jan Allersma 2018-11-07 11:27:15
Fix ability to nest in Groups. fd546a42ef54bdf5d2966eb7facbbf21a6b72e1b Jan Allersma 2018-11-06 17:49:11
Fix file I/O for single entities. 093b7d31a215067212927b1d92bdbbee306ea345 Jan Allersma 2018-11-06 16:49:55
Fix file I/O issue. 25c0b40db223c806eb3ea8bd28238dedc38ca8b5 Jan Allersma 2018-11-02 16:22:59
Cleanup commenting. 445aea4a5115c9110a097bfc7ac9f7d5ad48a9e7 Jan Allersma 2018-11-02 14:33:08
Show Ornaments on Canvas. d8456f15d69550c4cb0aa615cccb96b45a77f6a6 Jan Allersma 2018-11-02 14:08:47
Support Entities for Create & Destruct commands. cc900579eedf9c6288ce1c1883122856794e05a0 Jan Allersma 2018-11-02 13:25:43
Use entities instead of shapes when constructing ornaments. 13f08847624489f60a37db55c2aedbba6b021f98 Jan Allersma 2018-11-01 17:02:47
Remove obsolete 'calcBounds' function. 475ec330736b5800d12d091415480b163dd244e2 Jan Allersma 2018-11-01 14:28:29
Setup for decorator pattern. 762914dec31b1fb1d4cf6bb0cef2e148010652a4 Jan Allersma 2018-11-01 14:12:51
Revert commit '5678eb6'. 6225242719b2cfc5ee0de9f8d05edbc7a69007a7 Jan Allersma 2018-11-01 14:10:27
Make groups movable and resizable. 1ca7c18ab103a8d1055b27f63192038fd75aef3e Jan Allersma 2018-10-17 14:51:32
Use translations instead of positions for moving shapes. 9551c7d2608f01c3950743fd97bd217aab8f5766 Jan Allersma 2018-10-16 16:11:03
Implement Visitor pattern for Groups. bd30477ce616362d3f58cef072d1ebc78077fa85 Jan Allersma 2018-10-16 13:28:37
Implement Visitor pattern for Shapes. e52412c3059c1ee5fa9abdf4a32db0f47981eee1 Jan Allersma 2018-10-16 12:43:17
Setup 'Decorator' and 'Ornament' class. 5678eb6257bcf88502078d08395a394a1c24568b Jan Allersma 2018-10-09 09:29:50
Use different strats instead of seperate Shapes. a56e1e665a0292d15139eddfd8ebdeb8c95251b4 Jan Allersma 2018-10-01 11:37:45
Make ornament interface compatible with Entities. 21383d5f200a338f8255d7d33b6989937c19fed6 Jan Allersma 2018-10-08 20:36:23
Fix bug in Rect from commit 6c91140 in other Shapes as well. 4165a5da98dd9a548a222c6160390e4e54026d48 Jan Allersma 2018-09-28 14:53:40
Commit 482c53ecab43cdee03590949669c22227d104475 - Fix bug: activate group after movement with cloning.
Author: Jan Allersma
Author date (UTC): 2018-11-08 10:35
Committer name: Jan Allersma
Committer date (UTC): 2018-11-08 10:35
Parent(s): 699f767ac316edd481630a943f7a1884c5bc16f2
Signing key:
Tree: 35a4583cc0884ca3fb009a1cdda9a2c2ac9816b3
File Lines added Lines deleted
source/canvas.d 0 2
source/commands/move.d 1 0
source/frontend/shapeOptions.d 0 2
File source/canvas.d changed (mode: 100644) (index 2ae242c..1c96b37)
... ... public class Canvas : DrawingArea {
50 50 Global.History.CheckBounds(mouseX, mouseY); Global.History.CheckBounds(mouseX, mouseY);
51 51 } }
52 52 else if(Global.Brush.clone !is null) { else if(Global.Brush.clone !is null) {
53 Global.Brush.clone.active = true;
54
55 53 Global.History.addCommand ( Global.History.addCommand (
56 54 new MoveCmd ( new MoveCmd (
57 55 Global.Brush.clone, Global.Brush.clone,
File source/commands/move.d changed (mode: 100644) (index 0b68d35..f16157b)
... ... public class MoveCmd : Command {
15 15 // well. But what if the group is called from somewhere else in // well. But what if the group is called from somewhere else in
16 16 // the code in the future? // the code in the future?
17 17 e = moveGroup && shape.group !is null ? shape.group : shape; e = moveGroup && shape.group !is null ? shape.group : shape;
18 e.active = true;
18 19
19 20 translation = [ translation = [
20 21 newPosition[0] - shape.position[0], newPosition[0] - shape.position[0],
File source/frontend/shapeOptions.d changed (mode: 100644) (index de616ed..a973949)
... ... protected class MoveShape : MenuItem {
54 54 Global.Brush.clone = s; Global.Brush.clone = s;
55 55 Global.Brush.cloneGroup = false; Global.Brush.cloneGroup = false;
56 56 s.active = false; // Don't draw anything until moving the shape is completed! s.active = false; // Don't draw anything until moving the shape is completed!
57 // Create ghost shape.
58 57 return false; // Hide ShapeOptions when button is released. return false; // Hide ShapeOptions when button is released.
59 58 } }
60 59 } }
 
... ... protected class MoveGroup : MenuItem {
93 92 Global.Brush.clone = s; Global.Brush.clone = s;
94 93 Global.Brush.cloneGroup = true; Global.Brush.cloneGroup = true;
95 94 s.group.active = false; // Don't draw anything until moving the shape is completed! s.group.active = false; // Don't draw anything until moving the shape is completed!
96 // Create ghost group.
97 95 } }
98 96 return false; // Hide ShapeOptions when button is released. return false; // Hide ShapeOptions when button is released.
99 97 } }
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/kapstok/NHL-DePa2

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/kapstok/NHL-DePa2

Clone this repository using git:
git clone git://git.rocketgit.com/user/kapstok/NHL-DePa2

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main