Lucio Andrés Illanes Albornoz
c8a048403a
Hard-wire default canvas size on New to [100, 30].
2019-10-25 13:21:48 +02:00
Lucio Andrés Illanes Albornoz
0c66f94797
Cleanup, bugfixes & C++ backend implementation.
...
1) {About,Melp?} window: switch to green on black.
2) Assets window: scroll assets list on selected item update w/ <Cursor> or on deletion.
3) Canvas window: change default brush colours to [3, -1].
4) Canvas window: copy canvas cells given transparent cells from tools.
5) Canvas window: don't disable {re,un}do during object tool usage.
6) Canvas window: don't hide cursor during {re,un}do.
7) Canvas window: draw new cells using current brush background colour on resize.
8) Canvas window: fix memory leak on cell size updating.
9) Text tool: process [\r\n] in text pasted from clipboard.
assets/audio/roar{vap0r[1-8],viking[1-5]}.wav: added.
assets/text/README.txt: updated.
assets/tools/AnsiToMiRCART.py: added (for spoke.)
assets/tools/deploy-python.sh: updated.
2019-10-24 21:14:00 +02:00
Lucio Andrés Illanes Albornoz
90840bd0a0
Various bugfixes & usability improvements.
...
1) Canvas window: clear new canvases w/ [-1, -1] by default.
2) Canvas window: don't create new canvas on initialisation.
3) Canvas window: set default brush colours to [3, 9].
4) Erase tool: correctly fill non-text cells w/ background colour.
5) GUI: correctly show current operator name in status bar whilst active.
6) GUI: {de,in}crease canvas {height,width} w/ <Ctrl> & cursor keys.
7) GUI: disable tiling items unless current tool is object tool.
8) GUI: select tool w/ <F2-F10> accelerators.
2019-10-01 21:34:42 +02:00
Lucio Andrés Illanes Albornoz
bc969295dd
Various bugfixes & usability improvements.
...
1) Backend: initial optimised cell rendering Python C module implementation skeleton.
2) Backend: raise alpha blending {fore,back}ground colour coefficient to {0.8,1.0 - 0.8}, resp.
3) Backend: reimplement cell rendering using Draw{Rectangle,Text}List().
4) Canvas window: eliminate {canvas,{scroll,tool}bar} flickering during resize.
5) Canvas window: fix cursor artifacts during resizing by masking cursor.
6) Canvas window: restore cursor after executing operations that remove it.
7) Import store: correctly parse non-conforming \u0003,<bg colour> sequences.
8) GUI: correctly save list of recently used files post-update.
2019-10-01 19:03:29 +02:00
Lucio Andrés Illanes Albornoz
e1bf3a3ad4
assets/images/roar.png: updated.
2019-09-28 20:25:03 +02:00
Lucio Andrés Illanes Albornoz
1fd0768912
Apply tool w/ mouse state on brush/colour update.
2019-09-28 20:12:53 +02:00
Lucio Andrés Illanes Albornoz
19957a2006
Implements automatic snapshotting & restoring from snapshots.
2019-09-28 19:45:45 +02:00
Lucio Andrés Illanes Albornoz
451a708d7a
Minor cleanup & usability improvements.
...
1) Add format clarification to commands documentation.
2) Allow changing {canvas,brush} size w/ {<Ctrl> <Shift>,<Ctrl>} <Mouse wheel>.
3) Backend: {draw,produce,remove} cursor w/ list of coordinates instead of cells.
4) Update changing rendered cell size hotkey to <Ctrl> <Alt> <Mouse wheel>.
2019-09-28 12:08:52 +02:00
Lucio Andrés Illanes Albornoz
de96a7cdaa
Various bugfixes.
...
1) Fix erroneous canvas repositioning on resize given no docked toolbars.
2) Correctly update scrollbar parameters when changing font (and hence cell) size.
2019-09-28 10:11:49 +02:00
Lucio Andrés Illanes Albornoz
4b98d1cdf1
Various bugfixes & usability improvements.
...
1) Assets window: adds clear list context menu item.
2) Assets window: allow deleting multiple selected items.
3) Assets window: fix list view cursor key navigation.
4) Backend: correctly blend transparent background cursor cells with canvas character cells.
5) Backend: correctly determine cell size & set font size.
6) Backend: correctly unmask cursor.
7) Backend: disable font anti-aliasing on Windows.
8) Backend: render transparent background cells as RGBA #303030FF.
9) Canvas window: adds <F1> accelerator for `View melp?' menu item.
10) Canvas window: implement {dockable,floating} toolbars w/ wx' AUI framework.
11) Canvas window: separate tools toolbar from edit commands toolbar & dock both on right-hand side alongside each other.
12) Flip horizontally tool: flip characters, including some Unicode symbols.
13) Flip vertically tool: flip additional Unicode symbols.
14) Text tool: don't process keyboard events w/ either of <{Alt,AltGr,Ctrl}> modifiers.
assets/images/roar.png: updated.
2019-09-27 20:17:39 +02:00
Lucio Andrés Illanes Albornoz
2592fa9ad8
Tool bug fixes & usability improvements.
...
1) Circle, rectangle tool: initiate dragging with <Ctrl>, conclude w/ <[LR]MB> release.
2) Circle tool: fix artifacts and radius inference from brush size.
3) Line tool: fix origin point artifacts.
4) Rectangle tool: correctly determine target point.
2019-09-27 14:22:58 +02:00
Lucio Andrés Illanes Albornoz
fe6b79a2ab
Implement {circle,rectangle} dragging w/ <Ctrl>.
...
assets/text/hotkeys.txt: updated.
assets/text/TODO: updated.
2019-09-26 23:34:01 +02:00
Lucio Andrés Illanes Albornoz
50edb55e0b
Fix brush size toolbar items.
2019-09-26 23:15:56 +02:00
Lucio Andrés Illanes Albornoz
76e57bd081
Improve backend latency and throughput via batching.
...
assets/text/TODO: updated.
libtools/ToolLine.py: reflect brush width in pre-line dragging cursor.
2019-09-26 22:38:28 +02:00
Lucio Andrés Illanes Albornoz
86e2c9e904
Various bugfixes & usability improvements.
...
1) Correctly unmask cursor and dispatch delta patches on successful {re,un}do.
2) Don't prompt to save twice on exit via Exit {accelerator,menu item}.
3) Fix cursor artifacts by always resetting origin point on DC whilst unmasking cursor cells.
4) Fix {re,un}do {accelerator,{menu,toolbar} item} desynchronisation with actual canvas journal undo level.
5) Remove scattered remnants of initial implementation of unimplemented italic support.
6) Replace rendering transparent cursor w/ manual blending over wx.GraphicsContext() due to canvas bitmap masking & performance degradation.
assets/text/TODO: updated.
2019-09-26 14:06:11 +02:00
Lucio Andrés Illanes Albornoz
0750bc2261
assets/audio/roardaemon1.wav: added.
...
assets/text/TODO: updated.
2019-09-25 22:29:48 +02:00
Lucio Andrés Illanes Albornoz
c45a616442
Only allow setting selection w/ <Esc> post-selection.
2019-09-24 18:12:50 +02:00
Lucio Andrés Illanes Albornoz
e2183acf46
Update canvas filename on save as.
...
libroar/RoarCanvasCommandsFile.py:{_importFile,canvasSaveAs}(): fix return values.
2019-09-24 18:09:05 +02:00
Lucio Andrés Illanes Albornoz
279cca3313
Prompt to save changes on application exit.
2019-09-24 18:08:49 +02:00
Lucio Andrés Illanes Albornoz
286df901a7
assets/images/roar.png: updated.
2019-09-24 18:00:21 +02:00
Lucio Andrés Illanes Albornoz
50c9d69309
Fix underlined cells rendering line width.
2019-09-24 17:59:51 +02:00
Lucio Andrés Illanes Albornoz
fdcf242884
assets/audio/roarspoke1[234].wav: added.
2019-09-24 17:53:29 +02:00
Lucio Andrés Illanes Albornoz
b479e7ddbb
Remove cursor before {re,un}doing to prevent artifacts.
...
assets/text/TODO: updated.
2019-09-24 17:45:18 +02:00
Lucio Andrés Illanes Albornoz
9eec4f58ab
Increase roar window height to match default canvas size.
...
{assets/tools,lib{canvas,gui,roar,rtl,tools}}/*.py: remove Vim fold marker remnants.
2019-09-24 17:02:02 +02:00
Lucio Andrés Illanes Albornoz
a3d1ed3d96
libroar/RoarWindowMelp.py: set button accelerator.
2019-09-24 16:59:51 +02:00
Lucio Andrés Illanes Albornoz
84d20a4398
Adds GitHub & (hotkey) help dialogue menu items.
...
assets/text/hotkeys.txt: updated.
assets/text/TODO: updated.
libtools/ToolText.py: minor cleanup.
2019-09-24 16:46:02 +02:00
Lucio Andrés Illanes Albornoz
6ab7c443eb
Erase back- w/ foreground colour on <RMB>.
...
assets/text/hotkeys.txt: updated.
assets/text/TODO: updated.
2019-09-24 15:44:54 +02:00
Lucio Andrés Illanes Albornoz
c083800b3b
Don't show error when cancelling assets loading.
2019-09-24 15:13:48 +02:00
Lucio Andrés Illanes Albornoz
35f6910427
Load & store LRU file dialogue directory.
...
assets/text/TODO: updated.
2019-09-24 15:10:34 +02:00
Lucio Andrés Illanes Albornoz
c7dd80327d
Fix canvas windows size regarding scrollbars.
...
assets/text/TODO: updated.
libroar/RoarClient.py: I FUCKING _HATE_ WXPYTHON
2019-09-24 14:39:37 +02:00
Lucio Andrés Illanes Albornoz
a2295d1cfc
Various bugfixes & usability improvements.
...
1) Directly render characters to canvas DC w/ clipping.
2) Fix background colour toolbar icon bitmaps.
3) Line tool: correctly set brush colours whenever updated.
4) Line tool: fix artifacts bug.
5) Render tool cursor transparently at opacity 200 (out of 255.)
assets/text/TODO: updated.
2019-09-24 14:03:16 +02:00
Lucio Andrés Illanes Albornoz
e68cae09b5
assets/text/TODO: updated.
2019-09-23 22:46:11 +02:00
Lucio Andrés Illanes Albornoz
3eb4eaeea5
RoarWindowAbout.py: add website URL.
2019-09-23 22:32:37 +02:00
Lucio Andrés Illanes Albornoz
dc8b96146e
Further shorten {file,operator,tool} status bar items.
...
assets/images/roar.png: updated.
2019-09-23 22:25:32 +02:00
Lucio Andrés Illanes Albornoz
e0a9c97343
assets/images/tool{Erase,PickColour}.png: updated.
2019-09-23 22:18:40 +02:00
Lucio Andrés Illanes Albornoz
c355e848b2
Implements pick colour tool.
...
assets/text/TODO: updated.
2019-09-23 22:12:20 +02:00
Lucio Andrés Illanes Albornoz
cefb982c1d
Implements erase tool.
...
assets/text/TODO: updated.
2019-09-23 21:59:41 +02:00
Lucio Andrés Illanes Albornoz
1d650bd64b
Allow purging MRU list manually & on failure.
...
assets/text/TODO: updated.
2019-09-23 21:37:52 +02:00
Lucio Andrés Illanes Albornoz
600cecfad1
Fix ANSI underline encoding,
2019-09-23 20:42:30 +02:00
Lucio Andrés Illanes Albornoz
b1de2eda79
Fix ANSI<->mIRC colour conversion.
2019-09-23 20:34:55 +02:00
Lucio Andrés Illanes Albornoz
9c03910420
Fix canvas windows size regarding scrollbars.
2019-09-23 20:24:18 +02:00
Lucio Andrés Illanes Albornoz
e6e0951029
Convert tabs to position-modulated run of whitespaces.
2019-09-23 19:56:10 +02:00
Lucio Andrés Illanes Albornoz
a48d7f3d32
Fix dirty flag updating on {new,open,resize}.
...
assets/text/hotkeys.txt: updated.
assets/text/TODO: updated.
2019-09-23 19:55:31 +02:00
Lucio Andrés Illanes Albornoz
bff70b409b
{assets/tools,lib{canvas,gui,roar,rtl,tools}}/*.py: fix formatting.
2019-09-23 19:21:06 +02:00
Lucio Andrés Illanes Albornoz
0843b7d330
Allow cancelling & setting object selection w/ <Esc>.
2019-09-23 19:19:43 +02:00
Lucio Andrés Illanes Albornoz
724b460be1
assets/images/roar.png: updated.
2019-09-23 19:02:15 +02:00
Lucio Andrés Illanes Albornoz
6fcac2b3b9
libroar/RoarCanvasCommands.py:update(): shorten {file,operator,tool} status bar items.
...
assets/text/TODO: updated.
2019-09-23 18:59:18 +02:00
Lucio Andrés Illanes Albornoz
f504fa2b76
Various bugfixes & usability improvements.
...
1) Add background colour toolbar beneath (foreground) colour toolbar.
2) Add colour flipping command w/ {accelerator,{menu,toolbar} item}.
3) Add {de,in}crease {brush,canvas} size accelerator.
4) Add {hide,show} assets window toolbar item.
5) Circle tool: draw outline with foreground colour.
6) Circle tool: honour transparency.
7) Fill tool: change comprehensive fill modifier key from <Shift> to <Ctrl>.
8) Fill tool: fill with {back,fore}ground colour given <[RL]MB>
9) Fix arrow keys cursor motion when scrolled down.
10 Instantly reflect {brush size,colour,tool} changes in canvas.
11) Object tool: honour transparency w/ non-external objects.
12) Object tool: update selection rectangle during <LMB> whilst dragging, set w/ release of <LMB>.
13) Rectangle tool: draw outline with foreground colour.
14) Rectangle tool: honour transparency.
15) Replace wx.ToolBar() w/ wx.lib.agw.aui.AuiToolBar() & custom wx.lib.agw.aui.AuiDefaultToolBarArt().
16) Restore scrolling position after resizing canvas.
.TODO: deleted.
assets/audio/roar{arab8,spoke11}.wav: added.
assets/text/hotkeys.txt: added to document hotkeys.
assets/text/requirements.txt, requirements.txt: moved.
assets/text/TODO: updated.
{assets/tools,lib{canvas,gui,roar,rtl,tools}}/*.py: remove Vim fold markers.
libroar/RoarCanvasCommandsFile.py:_importFile(): update wx.FileDialog() message.
libroar/RoarCanvasCommandsOperators.py:canvasOperator(): update invert colours {caption,label}.
2019-09-23 18:49:33 +02:00
Lucio Andrés Illanes Albornoz
eb3795a98e
Initial {rotate,tile} operator implementation.
2019-09-23 09:21:57 +02:00
Lucio Andrés Illanes Albornoz
62e7edc852
assets/tools/deploy-python.sh: updated.
2019-09-19 13:40:58 +02:00