Commit Graph

30 Commits

Author SHA1 Message Date
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 195ddd9af8 MiRCART{Canvas,Frame}.py: adds circle & line tools.
MiRCARTTool{Circle,Line}.py: initial implementation.
2018-01-08 17:44:54 +01:00
Lucio Andrés Illanes Albornoz 115991736a MiRCART.py: hand off to MiRCARTFrame().
MiRCARTCanvas.py: split from MiRCART.py.
MiRCARTCanvasJournal.py: split from MiRCART.py.
MiRCARTColours.py: split from MiRCART.py.
MiRCARTFrame.py: split from MiRCART.py.
MiRCARTFromTextFile.py: initial implementation.
MiRCARTToPastebin.py: initial implementation.
MiRCARTToPngFile.py, IrcMiRCARTBot.py: renamed MiRC2png to MiRCARTToPngFile.
MiRCARTToTextFile.py: split from MiRCART.py.
MiRCARTTool.py: split from MiRCART.py.
MiRCARTToolRect.py: split from MiRCART.py.
README.md: updated.
2018-01-07 03:45:18 +01:00
Lucio Andrés Illanes Albornoz d93e1fecda MiRCART.py:MiRCARTCanvasJournal: split from MiRCARTCanvas. 2018-01-06 04:48:15 +01:00
Lucio Andrés Illanes Albornoz fcc4215b68 {IrcClient,IrcMiRCARTBot,MiRC{2png,ART}}.py: fix spaces & typo. 2018-01-06 02:50:12 +01:00
Lucio Andrés Illanes Albornoz 968d07050e MiRCART.py:MiRCARTTool{,Rect}: cleaned up. 2018-01-06 02:46:46 +01:00
Lucio Andrés Illanes Albornoz 16065401e8 MiRCART.py:MiRCARTCanvas: cleaned up. 2018-01-06 02:42:26 +01:00
Lucio Andrés Illanes Albornoz 44e593714d {IrcClient,IrcMiRCARTBot.py,MiRC{2png,ART}}.py: include parameters in function header comments. 2018-01-06 01:44:45 +01:00
Lucio Andrés Illanes Albornoz 845185f9c3 MiRCART.py:MiRCARTFrame: cleaned up. 2018-01-06 01:23:48 +01:00
Lucio Andrés Illanes Albornoz 61d53c818c MiRCART.py:MiRCARTFrame.__init__(): remove debugging print(). 2018-01-05 21:15:33 +01:00
Lucio Andrés Illanes Albornoz 703aa2c388 MiRCART.py:MiRCARTPalette, MiRCARTFrame.panelPalette: replaced w/ toolbar items.
MiRCART.py:MiRCARTFrame.toolBar*: added.
MiRCART.py:MiRCARTFrame.onToolColour{Bg,Fg}(): hand off to onPaletteEvent().
MiRCART.py:MiRCARTFrame.__init__(): create & initialise toolbar.
2018-01-05 20:45:21 +01:00
Lucio Andrés Illanes Albornoz 55381cf57b MiRCART.py:MiRCARTFrame.__init__(): update File menu titles to "Export to Pasteb&in..." and "Export as PN&G...". 2018-01-05 18:28:19 +01:00
Lucio Andrés Illanes Albornoz 28ae8f04f8 MiRCART.py:MiRCARTCanvas.{parentFrame,__init__()}: added for MiRCARTFrame.onCanvasUpdate().
MiRCART.py:MiRCARTCanvas._processMapPatches(): call parentFrame.onCanvasUpdate() given updates.
MiRCART.py:MiRCARTCanvas.{re,un}do(): call parentFrame.onCanvasUpdate() given {re,un}do.
MiRCART.py:MiRCARTFrame.onCanvasUpdate(): {dis,en}able menuEdit{Re,Un}do on updates.
2018-01-05 18:21:38 +01:00
Lucio Andrés Illanes Albornoz 813d49a3f2 MiRCART.py:MiRCARTFrame.__init__(): disable (grey out) menuEdit{Redo,Undo} initially. 2018-01-05 18:12:02 +01:00
Lucio Andrés Illanes Albornoz c7fbe5b20c MiRCART.py:MiRCARTFrame.__init__(): change default appSize to (800, 600). 2018-01-05 18:09:25 +01:00
Lucio Andrés Illanes Albornoz 8215229f84 MiRCART.py:MiRCARTFrame: complete GUI skeleton. 2018-01-05 18:08:10 +01:00
Lucio Andrés Illanes Albornoz 133c4dc240 MiRCART.py:MiRCARTCanvas.patchesUndoLevel: added to track {un,re}do queue movement in both directions.
MiRCART.py:MiRCARTCanvas._processMapPatches(): remove {un,re}do queue items 0..patchesUndoLevel when updating queue.
MiRCART.py:MiRCARTCanvas._processMapPatches(): prepend to queue instead of appending.
MiRCART.py:MiRCARTCanvas._processMapPatches(): insert {un,re}do queue items as single (list) item each.
MiRCART.py:MiRCARTCanvas.redo(): decrement patchesUndoLevel & apply redo patch, if patchesUndoLevel > 0.
MiRCART.py:MiRCARTCanvas.undo(): apply undo patch & increment patchesUndoLevel, if patchesUndo[patchesUndoLevel] != None.
MiRCART.py:MiRCARTFrame.{menuFileRedo,onFileRedo(),__init__()}: adds `&Redo' File menu item w/ wx.ID_REDO.
MiRCART.py:MiRCARTFrame.{accelRedoId,onAccelRedo(),__init__()}: binds ^Y accelerator to MiRCARTCanvas.redo().
MiRCART.py: update title.
2018-01-05 17:21:14 +01:00
Lucio Andrés Illanes Albornoz 496e4c7a4b MiRCART.py:MiRCARTToolRect.__processMapPatches(): always obtain cell state from canvasMap.
MiRCART.py:MiRCARTToolRect._draw(): always paint w/ background colour given isRightDown.
2018-01-05 03:27:57 +01:00
Lucio Andrés Illanes Albornoz 8b6d7ab445 MiRCART.py:MiRCARTFrame.accel{UndoId,Table}: added.
MiRCART.py:MiRCARTFrame.onAccelUndo(): call self.panelCanvas.undo().
MiRCART.py:MiRCARTFrame.__init__(): create self.menuFileUndo w/ wx.ID_UNDO.
MiRCART.py:MiRCARTFrame.__init__(): bind ^Z accelerator to self.onAccelUndo().
2018-01-05 01:59:04 +01:00
Lucio Andrés Illanes Albornoz 423f923b4e MiRCART.py:MiRCARTCanvas._processMapPatches(): don't process patches that don't introduce changes..
MiRCART.py:MiRCARTCanvas._processMapPatches(): append redo and undo patches to self.patchesUndo.
MiRCART.py:MiRCARTCanvas.undo(): initial implementation.
MiRCART.py:MiRCARTFrame.{menuFileUndo,onFileUndo,__init__}(): add GUI for MiRCARTCanvas.undo().
2018-01-05 01:34:57 +01:00
Lucio Andrés Illanes Albornoz 7a891d9863 MiRCART.py:MiRCARTToolRect.onMouse{Down,Motion}(): remove debugging print()s. 2018-01-05 00:57:22 +01:00
Lucio Andrés Illanes Albornoz 325a454db7 MiRCART.py:MiRCARTCanvas._eventPointToMap[XY](): added for _onMouseEvent().
MiRCART.py:MiRCARTCanvas._onMouseEvent(): split into _processMapPatches() and _drawPatch().
MiRCART.py:MiRCARTCanvas.getCell{Height,Width}(): added for _drawPatch() and _eventPointToMap[XY]().
MiRCART.py:MiRCARTCanvas.onPaletteEvent(): only set self.mirc[FB]g.
MiRCART.py:MiRCARTCanvas.__init__(): cache canvas window size.
MiRCART.py:MiRCARTCanvas.__init__(): initialise & append canvasTools.
MiRCART.py:MiRCARTCanvas.__init__(): pre-create 16 mIRC colour brushes & pens.
MiRCART.py:MiRCARTCanvas.__init__(): initialise temporary & {un,re}do patches.
MiRCART.py:MiRCARTTool: added abstract base class for all canvas tools.
MiRCART.py:MiRCARTToolRect: initial implementation w/ cursor, limited to 1x1 rectangles.
MiRCART.py:MiRCARTFrame.__init__(): initialise MiRCARTCanvas() w/ canvasTools=[MiRCARTToolRect].
2018-01-04 23:36:37 +01:00
Lucio Andrés Illanes Albornoz 91e33f8a4a MiRCART.py:MiRCARTCanvas.canvasBitmap: added to optimise onPaint().
MiRCART.py:MiRCARTCanvas._onMouseEvent(): additionally draw to canvasBitmap via temporary wx.MemoryDC().
MiRCART.py:MiRCARTCanvas.onPaint(): reimplement using (double-buffered) wx.BufferedPaintDC() from canvasBitmap.
MiRCART.py:MiRCARTCanvas.__init__(): initialise canvasBitmap from canvas window size.
2018-01-04 20:22:15 +01:00
Lucio Andrés Illanes Albornoz dcb4ca83bb MiRCART.py:MiRCARTCanvas.{onCharHook,__init__}(): removes wx.EVT_CHAR_HOOK event handler. 2018-01-04 20:14:38 +01:00
Lucio Andrés Illanes Albornoz 42e18ec252 MiRCART.py:MiRCARTCanvas.{_onMouseEvent,onPaint,__init__}(): switch addressing mode of self.canvasMap to [Y][X].
MiRCART.py:MiRCARTCanvas.get{Height,Map,Width}(): added for MiRCARTFrame.onFileSaveAs().
MiRCART.py:MiRCARTFrame.onFileSaveAs(): initial implementation.
2018-01-04 18:11:57 +01:00
Lucio Andrés Illanes Albornoz 427290e783 MiRCART.py:mircColours, MiRCARTCanvas.{onPaint,__init__}(): moved from MiRCARTCanvas.mircColours.
MiRCART.py:MiRCARTCanvas.get{Background,Foreground}Colour: added for MiRCARTFrame._updateStatusBar().
MiRCART.py:MiRCARTCanvas.onCharHook(): merged into MiRCARTCanvas.onPaletteEvent().
MiRCART.py:MiRCARTCanvas.onPaletteEvent(): set self.{mirc,brush,pen}{Fg,Bg} from colour choice event.
MiRCART.py:MiRCARTPalette: implements 16 colour palette panels GUI.
MiRCART.py:MiRCARTFrame._updateStatusBar(): show canvas {fore,back}ground colours in status bar.
MiRCART.py:MiRCARTFrame.onPaletteEvent(): hand off to MiRCARTCanvas.onPaletteEvent() and call _updateStatusBar().
MiRCART.py:MiRCARTFrame.__init__(): fix `&File' menu item order.
MiRCART.py:MiRCARTFrame.__init__(): create & update status bar.
2018-01-04 17:26:12 +01:00
Lucio Andrés Illanes Albornoz 1a2dd5f692 MiRC2png.py: renamed from MiRCART.py.
{IrcClient,IrcMiRCARTBot,MiRC2png}.py: update Vim modeline w/ `sw=4 ts=4'.
{IrcMiRCARTBot,MiRC2png}.py: update header legend.
IrcMiRCARTBot.py:IrcMiRCARTBot._dispatchPrivmsg(): lower rate limit to (once per) 30 seconds.
IrcMiRCARTBot.py:IrcMiRCARTBot._dispatchPrivmsg(): eliminate useless instance variable.
IrcMiRCARTBot.py:IrcMiRCARTBot._urlretrieveReportHook(): compare against correct limit of 1 MB (2**20.)
MiRCART.py: initial commit.
README.md: updated.
2018-01-04 16:24:06 +01:00
Lucio Andrés Illanes Albornoz 523d91ff89 MiRCART.py:MiRCART._parseAsChar(): derive rectangle & line coordinates and outCur{X,Y} offset from outImgFontSize[{0,1}].
MiRCART.py:MiRCART.__init__(): initialise outImgFontSize and add underline area offset.
MiRCART.py:MiRCART.__init__(): derive outCurY offset from outImgFontSize[1].
2018-01-03 03:52:41 +01:00
Lucio Andrés Illanes Albornoz e182f0ffa9 {IrcMiRCARTBot,MiRCART}.py: differentiate private class member functions. 2018-01-03 03:33:57 +01:00
Lucio Andrés Illanes Albornoz c32d749675 IrcClient.py: split from IrcMiRCARTBot.py.
IrcMiRCARTBot.py: renamed from pngbot.py, importing IrcClient.IrcClient.
MiRCART.py: renamed from mirc2png.py.
README.md: updated.
2018-01-03 02:33:12 +01:00