Commit Graph

253 Commits

Author SHA1 Message Date
Lucio Andrés Illanes Albornoz
eff72be6ef Initial FFmpeg & {GIF,MP4,WEBM,...} support for -o.
ENNToolGLCanvasPanel.py: minor cleanup regarding deprecated calls.
2018-07-03 18:17:23 +02:00
Lucio Andrés Illanes Albornoz
e656f549ff Initial text support implementation, pt. III.
Generate TTF texture ad hoc.
2018-07-02 22:49:43 +02:00
Lucio Andrés Illanes Albornoz
22c4904c20 Initial text support implementation, pt. II.
Switch from fixed-function pipeline to shaders.
2018-06-28 19:46:17 +02:00
Lucio Andrés Illanes Albornoz
fd8c9a4267 IrcMiRCARTBot.py: adds optional -[46] force IPv[46] flag. 2018-06-28 18:18:48 +02:00
Lucio Andrés Illanes Albornoz
f5dee0bf20 Initial text support implementation, pt. I. 2018-06-27 19:13:20 +02:00
Lucio Andrés Illanes Albornoz
74bdd88766 Initial commit. 2018-06-27 17:09:32 +02:00
Lucio Andrés Illanes Albornoz
85d260835b MiRCARTToPngFiles.sh: added. 2018-06-26 15:39:29 +02:00
Lucio Andrés Illanes Albornoz
6593aa594e MiRCARTCanvasImportStore.py:importTextFile(): correctly open() pathName w/ encoding="utf-8" (via munki.) 2018-06-22 11:38:47 +02:00
Lucio Andrés Illanes Albornoz
e7b6324866 IrcMiRCARTBot.py:_dispatchPrivmsg(): print message from website if upload fails.
IrcMiRCARTBot.py:_uploadToImgur(): additionally return responseHttp.text on failure.
2018-06-21 09:04:22 +02:00
Lucio Andrés Illanes Albornoz
5f99672c08 MiRCARTCanonicalise.py: correctly reset last{Attribs,Colours} on each new row (fixes issue #1.) 2018-06-17 09:45:00 +02:00
Lucio Andrés Illanes Albornoz
7011dc91dd 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
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