Commit Graph

142 Commits

Author SHA1 Message Date
Lucio Andrés Illanes Albornoz
19b29d1714 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
e5ef8503c6 MiRCARTCheckLineLengths.sh: check mIRC art line lengths. 2018-05-02 17:08:45 +02:00
Lucio Andrés Illanes Albornoz
cbc12828e5 MiRCARTCanonicalise.py: canonicalise mIRC art {from,to} file (for munki.) 2018-05-01 23:30:36 +02:00
Lucio Andrés Illanes Albornoz
5f0328d1d2 {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
b4a71505ff Reduce memory usage by folding nested patch {coordinate,colour} list(s). 2018-01-30 11:31:28 +01:00
Lucio Andrés Illanes Albornoz
7475f7108d 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
85cbffbadb 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
0e8de3b4dd MiRCARTCanvasInterface.py:canvasSave(): fix call parameters. 2018-01-25 15:04:37 +01:00
Lucio Andrés Illanes Albornoz
55b88412c9 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
7192b66805 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
0724c80868 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
ea9f827099 MiRCARTColours.py: fix permission bits. 2018-01-11 23:27:57 +01:00
Lucio Andrés Illanes Albornoz
d6f72e17f7 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
4a093c25a7 MiRCARTToPngFile.py:export(): treat `█' as whitespace w/ inverse colours. 2018-01-11 23:22:02 +01:00
Lucio Andrés Illanes Albornoz
154d2b32a5 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
67a824779e 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
485d97ff99 MiRCARTFrame.py: initially select red (4) colour toolbar item. 2018-01-11 03:02:18 +01:00
Lucio Andrés Illanes Albornoz
25a0a696f6 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
cafb53b283 MiRCARTFrame.py: adds exit accelerator (hotkey) <Ctrl> X. 2018-01-11 02:37:20 +01:00
Lucio Andrés Illanes Albornoz
e336730d80 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
fe5e453187 MiRCARTCanvas.py:MiRCARTCanvas.onPanelInput(): clip mapPoint to canvasSize. 2018-01-11 02:10:33 +01:00
Lucio Andrés Illanes Albornoz
0342f6626d MiRCARTToolFill.py: don't process cells more than once. 2018-01-11 02:06:09 +01:00
Lucio Andrés Illanes Albornoz
ca0f76360f MiRCARTCanvasInterface.py:_updateCanvasSize(): hide cursor before resizing. 2018-01-11 01:59:43 +01:00
Lucio Andrés Illanes Albornoz
390dae6b8d MiRCARTToolFill.py: set qualifying colour from current cell. 2018-01-11 01:56:28 +01:00
Lucio Andrés Illanes Albornoz
1a9c08a3fd MiRCARTCanvasInterface.py:_updateCanvasSize(): reimplement (fixes <Alt> [WASD] bugs.) 2018-01-11 01:52:53 +01:00
Lucio Andrés Illanes Albornoz
77eb660f35 MiRCART.py: import argv[1] into canvas if specified. 2018-01-11 01:18:50 +01:00
Lucio Andrés Illanes Albornoz
b0794ccaf9 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
321ec8ffd9 assets/tool{Clone,Move}.png: updated. 2018-01-11 01:09:00 +01:00
Lucio Andrés Illanes Albornoz
d8f8f47543 MiRCARTCanvasInterface.py: sync menu item state when selecting tool. 2018-01-11 00:59:07 +01:00
Lucio Andrés Illanes Albornoz
b6040ef482 MiRCARTGeneralFrame.py: show accelerators (hotkeys) in menus. 2018-01-11 00:45:40 +01:00
Lucio Andrés Illanes Albornoz
8a01500846 MiRCART.png: updated. 2018-01-11 00:31:25 +01:00
Lucio Andrés Illanes Albornoz
24de84093d 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
426c1f990f MiRCARTGeneralFrame.py: add toolbar windows to sizer w/ border width 3. 2018-01-10 22:31:52 +01:00
Lucio Andrés Illanes Albornoz
325ae6883f 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
4ce163d906 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
5fd20d31b1 MiRCARTToolSelectMove.py: clear source region prior to moving. 2018-01-10 19:20:35 +01:00
Lucio Andrés Illanes Albornoz
7e7df8a31c 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
cd9a81dbf4 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
2330eb8c69 MiRCARTToolLine.py: correctly cache colours on first click. 2018-01-10 14:53:35 +01:00
Lucio Andrés Illanes Albornoz
f20174037c 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
b486d3966e 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
62ff843d03 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
7acb234404 MiRCARTToolLine.py: honour brush size. 2018-01-10 04:44:13 +01:00
Lucio Andrés Illanes Albornoz
08fcfa3290 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
b91ba78abd MiRCARTToolText.py: fix non-US ASCII character handling. 2018-01-10 04:31:20 +01:00
Lucio Andrés Illanes Albornoz
1b00bb3b2f 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
7abd7679d2 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
36b9a5eb82 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
bbec7d1eb1 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
Lucio Andrés Illanes Albornoz
d3e67a7c18 MiRCART{Canvas{,Backend},Frame}.py: replace MemoryDC() w/ BufferedDC(canvasBitmap). 2018-01-09 22:23:27 +01:00