Lucio Andrés Illanes Albornoz
9a9d5d858d
IrcMiRCARTBot.py:_dispatchPrivmsg(): lower rate limit to once every 5 seconds (via aaa, alghazi, amomp, anji, arab, astra, astra`, biobag, biobag__, bj0rn, blomp, boomp, bromp, brr, butts, buttvomit, c003y, Caku, chomp, chrono_, cooey, CosbyX, darkmage_, dboard, deh uman, dOm3r, eddb, efukt, ep^, er, era, eraser, erratic, erratic_, gnomp, gromp, interdom3, JEWS, kobach, l1tup, Lions, lul, lulz, lulzee, lulzy, Matthew, MercyX, moomp, mr_vile, muff, munki, n0v, nk9k, ooomp, OVH, pcap, pinchy, plop, pngbot, poccri, poomp, promp, pump-, pu mpbull, pyrex, rain, rObOtNiK, rondito, scd, SEEEEN, Shapes, snadge, spidy, spinsane, spoke, spomp, stomp, TACO, tetedupet, toohighto, tromp, twomp, vap0r, vapor, venus, virtuald, vixen, whomp, wreathman, wromp, yoomp, z0z0, zen_, and zoomp.)
2018-05-24 08:59:00 +02:00
Lucio Andrés Illanes Albornoz
95f7dd113c
IrcMiRCARTBot.py, MiRCARTCanvasInterface.py: remove Imgur API key from repository (via aaa, alghazi, amomp, anji, arab, astra, astra`, biobag, biobag__, bj0rn, blomp, boomp, bromp, brr, butts, buttvomit, c003y, Caku, chomp, chrono_, cooey, CosbyX, darkmage_, dboard, dehuman, dOm3r, eddb, efukt, ep^, er, era, eraser, erratic, erratic_, gnomp, gromp, interdom3, JEWS, kobach, l1tup, Lions, lul, lulz, lulzee, lulzy, Matthew, MercyX, moomp, mr_vile, muff, munki, n0v, nk9k, ooomp, OVH, pcap, pinchy, plop, pngbot, poccri, poomp, promp, pump-, pumpbull, pyrex, rain, rObOtNiK, rondito, scd, SEEEEN, Shapes, snadge, spidy, spinsane, spoke, spomp, stomp, TACO, tetedupet, toohighto, tromp, twomp, vap0r, vapor, venus, virtuald, vixen, whomp, wreathman, wromp, yoomp, z0z0, zen_, and zoomp.)
2018-05-24 08:52:20 +02:00
Lucio Andrés Illanes Albornoz
99c0c14993
MiRCARTCheckLineLengths.sh: check mIRC art line lengths.
2018-05-02 17:08:45 +02:00
Lucio Andrés Illanes Albornoz
3b70d42784
MiRCARTCanonicalise.py: canonicalise mIRC art {from,to} file (for munki.)
2018-05-01 23:30:36 +02:00
Lucio Andrés Illanes Albornoz
8e91d1269e
{IrcMiRCARTBot,MiRCARTToPngFile}.py: reduce memory usage by folding nested patch {coordinate,colour} list(s).
...
Followup to <b4a71505ffa68757931f633baf511f7863682e8e>.
2018-01-30 20:34:02 +01:00
Lucio Andrés Illanes Albornoz
6d5e081dfb
Reduce memory usage by folding nested patch {coordinate,colour} list(s).
2018-01-30 11:31:28 +01:00
Lucio Andrés Illanes Albornoz
1a503979d1
IrcMiRCARTBot.py:_uploadToImgur(): prevent file object leak via `with' barrier.
...
MiRCARTCanvasExportStore.py:_exportFileToImgur(): prevent file object leak via `with' barrier.
2018-01-26 22:38:28 +01:00
Lucio Andrés Illanes Albornoz
c6ab27c08c
Fixes memory leaks on {re,un}do state mutation & resize-related operations.
...
MiRCARTCanvas.py:__del__(): delete canvasMap w/ clear().
MiRCARTCanvasBackend.py:resize(): delete old canvasBitmap w/ Destroy().
MiRCARTCanvasJournal.py:reset{Cursor,Undo}(): delete patches{Cursor,Undo} w/ clear().
MiRCARTCanvasJournal.py:__del__(): provided explicitly to call reset{Cursor,Undo}().
MiRCARTFrame.py:__del__(): provided explicitly to delete panelCanvas.
2018-01-26 17:45:04 +01:00
Lucio Andrés Illanes Albornoz
579dd858ba
MiRCARTCanvasInterface.py:canvasSave(): fix call parameters.
2018-01-25 15:04:37 +01:00
Lucio Andrés Illanes Albornoz
92124dc34f
MiRCARTCanvas.py:resize(): clean up & fix.
...
MiRCARTCanvasInterface.py:_updateCanvasSize(): merged into ...Canvas.resize().
MiRCARTCanvasInterface.py:canvas{De,In}crCanvas{Height,Width}(): directly call ...Canvas.resize().
2018-01-25 15:02:09 +01:00
Lucio Andrés Illanes Albornoz
f77e6d5bf8
IrcClient.py:connect(): create file from socket w/ errors="replace" to prevent UnicodeDecodeErrors.
2018-01-22 21:06:46 +01:00
Lucio Andrés Illanes Albornoz
b385909b45
MiRCARTCanvasImportStore.py: correctly process ^C<colour>, sequences.
...
MiRCARTToPngFile.py: fix {bold,underline} processing.
2018-01-20 09:17:52 +01:00
Lucio Andrés Illanes Albornoz
0cf1040614
MiRCARTColours.py: fix permission bits.
2018-01-11 23:27:57 +01:00
Lucio Andrés Illanes Albornoz
802de6fa6e
MiRCART{CanvasInterface,Frame}.py: complete set of {brush,canvas} size operations.
...
assets/tool{De,In}cr{Brush,Canvas}{H{,W},W}.png: added/updated.
2018-01-11 23:26:36 +01:00
Lucio Andrés Illanes Albornoz
4f4ecb4331
MiRCARTToPngFile.py:export(): treat `█' as whitespace w/ inverse colours.
2018-01-11 23:22:02 +01:00
Lucio Andrés Illanes Albornoz
1511002798
MiRCARTCanvasImportStore.py:_parseCharAsColourSpec(): correctly process mIRC colour control code sequences specifying one single colour.
...
MiRCARTToPngFile.py:export(): fix indentation.
2018-01-11 23:13:46 +01:00
Lucio Andrés Illanes Albornoz
d79ea00164
IrcMiRCARTBot.py: include black-on-black border around map.
...
IrcMiRCARTBot.py: normalise imported map.
2018-01-11 21:28:53 +01:00
Lucio Andrés Illanes Albornoz
9eee59b501
MiRCARTFrame.py: initially select red (4) colour toolbar item.
2018-01-11 03:02:18 +01:00
Lucio Andrés Illanes Albornoz
5380e899e4
MiRCARTFrame.py: add {in,de}crease {height,width} toolbar items.
...
assets/tool{De,In}crCanvas{H,W}.png: added.
2018-01-11 02:49:53 +01:00
Lucio Andrés Illanes Albornoz
4e19f91eb0
MiRCARTFrame.py: adds exit accelerator (hotkey) <Ctrl> X.
2018-01-11 02:37:20 +01:00
Lucio Andrés Illanes Albornoz
a33ff6b5df
MiRCART{CanvasInterface,{,General}Frame}.py: add & sync {tools,colour selection} toolbar items as radio tools.
2018-01-11 02:34:32 +01:00
Lucio Andrés Illanes Albornoz
46258cde32
MiRCARTCanvas.py:MiRCARTCanvas.onPanelInput(): clip mapPoint to canvasSize.
2018-01-11 02:10:33 +01:00
Lucio Andrés Illanes Albornoz
508a3cd489
MiRCARTToolFill.py: don't process cells more than once.
2018-01-11 02:06:09 +01:00
Lucio Andrés Illanes Albornoz
44490912b2
MiRCARTCanvasInterface.py:_updateCanvasSize(): hide cursor before resizing.
2018-01-11 01:59:43 +01:00
Lucio Andrés Illanes Albornoz
2f85fa8cd1
MiRCARTToolFill.py: set qualifying colour from current cell.
2018-01-11 01:56:28 +01:00
Lucio Andrés Illanes Albornoz
bb243c7556
MiRCARTCanvasInterface.py:_updateCanvasSize(): reimplement (fixes <Alt> [WASD] bugs.)
2018-01-11 01:52:53 +01:00
Lucio Andrés Illanes Albornoz
d1936486ff
MiRCART.py: import argv[1] into canvas if specified.
2018-01-11 01:18:50 +01:00
Lucio Andrés Illanes Albornoz
cf04a12690
MiRCARTCanvasInterface.py: prompt to save changes on exit given non-None canvasPathName.
2018-01-11 01:12:55 +01:00
Lucio Andrés Illanes Albornoz
02d3c7f6f4
assets/tool{Clone,Move}.png: updated.
2018-01-11 01:09:00 +01:00
Lucio Andrés Illanes Albornoz
ebdf7f410b
MiRCARTCanvasInterface.py: sync menu item state when selecting tool.
2018-01-11 00:59:07 +01:00
Lucio Andrés Illanes Albornoz
4bc9b61f2c
MiRCARTGeneralFrame.py: show accelerators (hotkeys) in menus.
2018-01-11 00:45:40 +01:00
Lucio Andrés Illanes Albornoz
f65603dd0c
MiRCART.png: updated.
2018-01-11 00:31:25 +01:00
Lucio Andrés Illanes Albornoz
d26a322612
MiRCART{CanvasInterface,Frame}.py: adds (flood) fill tool.
...
MiRCARTToolFill.py: initial implementation.
assets/toolFill.png: added.
2018-01-11 00:27:50 +01:00
Lucio Andrés Illanes Albornoz
499296ba1d
MiRCARTGeneralFrame.py: add toolbar windows to sizer w/ border width 3.
2018-01-10 22:31:52 +01:00
Lucio Andrés Illanes Albornoz
e53e8bf8e7
MiRCARTFrame.py: add canvas panel window to sizer w/ border width 14.
2018-01-10 22:16:48 +01:00
Lucio Andrés Illanes Albornoz
33df272b39
MiRCARTCanvas.py:MiRCARTCanvas.resize(): call SetSize() w/o changing position.
...
MiRCARTCanvas.py:MiRCARTCanvas.resize(): call SetMinSize() in addition to SetSize().
MiRCARTCanvas.py:MiRCARTCanvas.resize(): call Layout() on canvas panel window and its parents.
MiRCARTCanvasInterface.py: always call SetCursor() w/ self.parentCanvas.
MiRCARTFrame.py: moves colour toolbar items to separate toolbar.
MiRCARTFrame.py:MiRCARTFrame.__init__(): add canvas panel to and initialise sizer.
MiRCARTGeneralFrame.py: adds support for multiple toolbars via vertical box sizer.
2018-01-10 22:06:48 +01:00
Lucio Andrés Illanes Albornoz
8c0de9fbd3
MiRCARTToolSelectMove.py: clear source region prior to moving.
2018-01-10 19:20:35 +01:00
Lucio Andrés Illanes Albornoz
ad761d658e
MiRCART{CanvasInterface,Frame}.py: adds clone & move (selection) tools.
...
MiRCARTTool{Clone,Move}Select.py: initial implementation.
assets/tool{Clone,Move}.png: added.
MiRCART.png: updated.
2018-01-10 18:29:16 +01:00
Lucio Andrés Illanes Albornoz
c9d6b90e68
MiRCART{anvas{,ImportStore,Interface},Frame}.py: pass & initialise from default canvas position, size, and cell size.
2018-01-10 15:04:59 +01:00
Lucio Andrés Illanes Albornoz
49ef54ef76
MiRCARTToolLine.py: correctly cache colours on first click.
2018-01-10 14:53:35 +01:00
Lucio Andrés Illanes Albornoz
2254a0638b
MiRCART{Canvas{,Interface},Frame}.py: use dict() to cache canvas state in Frame.
2018-01-10 14:51:25 +01:00
Lucio Andrés Illanes Albornoz
402e542137
MiRCART{CanvasInterface,Frame,Tool*}.py: include current tool name in status bar text.
2018-01-10 05:05:59 +01:00
Lucio Andrés Illanes Albornoz
a320c904fe
MiRCART{Canvas{,Interface},Frame}.py: remove undo level & show brush size in status bar.
2018-01-10 05:00:52 +01:00
Lucio Andrés Illanes Albornoz
3fa377791a
MiRCARTToolLine.py: honour brush size.
2018-01-10 04:44:13 +01:00
Lucio Andrés Illanes Albornoz
e157f479ce
MiRCART{Canvas,Frame}.py: include canvas width and height in status bar.
2018-01-10 04:36:39 +01:00
Lucio Andrés Illanes Albornoz
12027bc6b5
MiRCARTToolText.py: fix non-US ASCII character handling.
2018-01-10 04:31:20 +01:00
Lucio Andrés Illanes Albornoz
f9f910160f
MiRCART{Canvas{,Interface},Frame}.py: merge on{StatusBar,Undo}Update() into onCanvasUpdate().
...
MiRCARTCanvas{Frame,Interface}.py: adds canvas{De,In}crCanvas{Height,Width}() & CID_*.
MiRCARTCanvasFrame.py:onCanvasUpdate(): updated.
2018-01-10 04:23:54 +01:00
Lucio Andrés Illanes Albornoz
3e03126006
MiRCARTCanvasInterface.py: split from MiRCARTCanvas.py.
...
MiRCART{Canvas,{,General}Frame}.py: updated.
2018-01-10 03:24:25 +01:00
Lucio Andrés Illanes Albornoz
398ee3af3d
MiRCARTCanvas{Export,Import}Store.py: split from MiRCARTCanvasStore.py.
...
IrcMiRCARTBot.py, MiRCART{Canvas,Frame,ToPngFile}.py: updated.
2018-01-10 00:48:13 +01:00
Lucio Andrés Illanes Albornoz
cd5ea1fab5
MiRCARTCanvas{,Journal,Store}.py: dispatch patches from tool event handlers directly.
...
MiRCARTTool{,Circle,Line,Rect,Text}.py: updated to new interface.
2018-01-10 00:35:08 +01:00