libroar/RoarCanvasInterface.py, libgui/GuiCanvasInterface.py: split from libgui/GuiCanvasInterface.py.

libroar/RoarClientAboutWindow.py: merged from libgui/GuiCanvasInterfaceAbout.py.
libgui/GuiFrame.py:Gui{Command{,List},Select}Decorator(): moved from libroar/RoarCanvasInterface.py.
libroar/RoarClient.py: updated.
This commit is contained in:
Lucio Andrés Illanes Albornoz 2019-09-10 10:22:02 +02:00
parent 8fd0294ef8
commit 01ca10be21
4 changed files with 101 additions and 99 deletions

View File

@ -6,6 +6,40 @@
import os, sys, wx
#
# Decorators
# {{{ GuiCommandDecorator(targetObject)
def GuiCommandDecorator(caption, label, icon, accel, initialState):
def GuiCommandDecoratorOuter(targetObject):
if callable(targetObject):
if not hasattr(targetObject, "attrDict"):
setattr(targetObject, "attrDict", [])
targetObject.attrDict = {"caption": caption, "label": label, "icon": icon, "accel": accel, "initialState": initialState, "id": None}
return targetObject
return GuiCommandDecoratorOuter
# }}}
# {{{ GuiCommandListDecorator(targetObject)
def GuiCommandListDecorator(idx, caption, label, icon, accel, initialState):
def GuiCommandListDecoratorOuter(targetObject):
if callable(targetObject):
if not hasattr(targetObject, "attrList"):
setattr(targetObject, "attrList", [])
targetObject.attrList.insert(0, {"caption": caption, "label": label, "icon": icon, "accel": accel, "initialState": initialState, "id": None, "idx": idx})
return targetObject
return GuiCommandListDecoratorOuter
# }}}
# {{{ GuiSelectDecorator(targetObject)
def GuiSelectDecorator(idx, caption, label, icon, accel, initialState):
def GuiSelectDecoratorOuter(targetObject):
if callable(targetObject):
if not hasattr(targetObject, "attrList"):
setattr(targetObject, "attrList", [])
setattr(targetObject, "isSelect", True)
targetObject.attrList.insert(0, {"caption": caption, "label": label, "icon": icon, "accel": accel, "initialState": initialState, "id": None, "idx": idx})
return targetObject
return GuiSelectDecoratorOuter
# }}}
#
# Non-items (0xf000-0xffff)
NID_MENU_SEP = 0xf000

View File

@ -1,6 +1,6 @@
#!/usr/bin/env python3
#
# GuiCanvasInterface.py
# RoarCanvasInterface.py
# Copyright (c) 2018, 2019 Lucio Andrés Illanes Albornoz <lucio@lucioillanes.de>
#
@ -25,11 +25,11 @@ from ToolSelectMove import ToolSelectMove
from ToolText import ToolText
from GuiCanvasColours import Colours
from GuiCanvasInterfaceAbout import GuiCanvasInterfaceAbout
from GuiFrame import NID_MENU_SEP, NID_TOOLBAR_HSEP
from GuiFrame import GuiCommandDecorator, GuiCommandListDecorator, GuiSelectDecorator, NID_MENU_SEP, NID_TOOLBAR_HSEP
from RoarClientAboutWindow import RoarClientAboutWindow
import io, os, sys, wx
class GuiCanvasInterface():
class RoarCanvasInterface():
# {{{ _import(self, f, newDirty, pathName)
def _import(self, f, newDirty, pathName):
self.parentCanvas.SetCursor(wx.Cursor(wx.CURSOR_WAIT))
@ -98,45 +98,13 @@ class GuiCanvasInterface():
return True
# }}}
# {{{ CommandDecoratorOuter(targetObject)
def CommandDecorator(caption, label, icon, accel, initialState):
def CommandDecoratorOuter(targetObject):
if callable(targetObject):
if not hasattr(targetObject, "attrDict"):
setattr(targetObject, "attrDict", [])
targetObject.attrDict = {"caption": caption, "label": label, "icon": icon, "accel": accel, "initialState": initialState, "id": None}
return targetObject
return CommandDecoratorOuter
# }}}
# {{{ CommandListDecoratorOuter(targetObject)
def CommandListDecorator(idx, caption, label, icon, accel, initialState):
def CommandListDecoratorOuter(targetObject):
if callable(targetObject):
if not hasattr(targetObject, "attrList"):
setattr(targetObject, "attrList", [])
targetObject.attrList.insert(0, {"caption": caption, "label": label, "icon": icon, "accel": accel, "initialState": initialState, "id": None, "idx": idx})
return targetObject
return CommandListDecoratorOuter
# }}}
# {{{ SelectDecoratorOuter(targetObject)
def SelectDecorator(idx, caption, label, icon, accel, initialState):
def SelectDecoratorOuter(targetObject):
if callable(targetObject):
if not hasattr(targetObject, "attrList"):
setattr(targetObject, "attrList", [])
setattr(targetObject, "isSelect", True)
targetObject.attrList.insert(0, {"caption": caption, "label": label, "icon": icon, "accel": accel, "initialState": initialState, "id": None, "idx": idx})
return targetObject
return SelectDecoratorOuter
# }}}
# {{{ canvasAbout(self, event)
@CommandDecorator("About", "&About", None, None, True)
@GuiCommandDecorator("About", "&About", None, None, True)
def canvasAbout(self, event):
GuiCanvasInterfaceAbout(self.parentFrame)
RoarClientAboutWindow(self.parentFrame)
# }}}
# {{{ canvasBrush(self, f, idx)
@SelectDecorator(0, "Solid brush", "Solid brush", None, None, True)
@GuiSelectDecorator(0, "Solid brush", "Solid brush", None, None, True)
def canvasBrush(self, f, idx):
def canvasBrush_(self, event):
pass
@ -145,22 +113,22 @@ class GuiCanvasInterface():
return canvasBrush_
# }}}
# {{{ canvasColour(self, f, idx)
@SelectDecorator(0, "Colour #00", "Colour #00 (Bright White)", None, None, False)
@SelectDecorator(1, "Colour #01", "Colour #01 (Black)", None, None, False)
@SelectDecorator(2, "Colour #02", "Colour #02 (Blue)", None, None, False)
@SelectDecorator(3, "Colour #03", "Colour #03 (Green)", None, None, False)
@SelectDecorator(4, "Colour #04", "Colour #04 (Red)", None, None, False)
@SelectDecorator(5, "Colour #05", "Colour #05 (Light Red)", None, None, False)
@SelectDecorator(6, "Colour #06", "Colour #06 (Pink)", None, None, False)
@SelectDecorator(7, "Colour #07", "Colour #07 (Yellow)", None, None, False)
@SelectDecorator(8, "Colour #08", "Colour #08 (Light Yellow)", None, None, False)
@SelectDecorator(9, "Colour #09", "Colour #09 (Light Green)", None, None, False)
@SelectDecorator(10, "Colour #10", "Colour #10 (Cyan)", None, None, False)
@SelectDecorator(11, "Colour #11", "Colour #11 (Light Cyan)", None, None, False)
@SelectDecorator(12, "Colour #12", "Colour #12 (Light Blue)", None, None, False)
@SelectDecorator(13, "Colour #13", "Colour #13 (Light Pink)", None, None, False)
@SelectDecorator(14, "Colour #14", "Colour #14 (Grey)", None, None, False)
@SelectDecorator(15, "Colour #15", "Colour #15 (Light Grey)", None, None, False)
@GuiSelectDecorator(0, "Colour #00", "Colour #00 (Bright White)", None, None, False)
@GuiSelectDecorator(1, "Colour #01", "Colour #01 (Black)", None, None, False)
@GuiSelectDecorator(2, "Colour #02", "Colour #02 (Blue)", None, None, False)
@GuiSelectDecorator(3, "Colour #03", "Colour #03 (Green)", None, None, False)
@GuiSelectDecorator(4, "Colour #04", "Colour #04 (Red)", None, None, False)
@GuiSelectDecorator(5, "Colour #05", "Colour #05 (Light Red)", None, None, False)
@GuiSelectDecorator(6, "Colour #06", "Colour #06 (Pink)", None, None, False)
@GuiSelectDecorator(7, "Colour #07", "Colour #07 (Yellow)", None, None, False)
@GuiSelectDecorator(8, "Colour #08", "Colour #08 (Light Yellow)", None, None, False)
@GuiSelectDecorator(9, "Colour #09", "Colour #09 (Light Green)", None, None, False)
@GuiSelectDecorator(10, "Colour #10", "Colour #10 (Cyan)", None, None, False)
@GuiSelectDecorator(11, "Colour #11", "Colour #11 (Light Cyan)", None, None, False)
@GuiSelectDecorator(12, "Colour #12", "Colour #12 (Light Blue)", None, None, False)
@GuiSelectDecorator(13, "Colour #13", "Colour #13 (Light Pink)", None, None, False)
@GuiSelectDecorator(14, "Colour #14", "Colour #14 (Grey)", None, None, False)
@GuiSelectDecorator(15, "Colour #15", "Colour #15 (Light Grey)", None, None, False)
def canvasColour(self, f, idx):
def canvasColour_(self, event):
if event.GetEventType() == wx.wxEVT_TOOL:
@ -173,7 +141,7 @@ class GuiCanvasInterface():
return canvasColour_
# }}}
# {{{ canvasColourAlpha(self, f, idx)
@SelectDecorator(0, "Transparent colour", "Transparent colour", None, None, False)
@GuiSelectDecorator(0, "Transparent colour", "Transparent colour", None, None, False)
def canvasColourAlpha(self, f, idx):
def canvasColourAlpha_(self, event):
if event.GetEventType() == wx.wxEVT_TOOL:
@ -186,28 +154,28 @@ class GuiCanvasInterface():
return canvasColourAlpha_
# }}}
# {{{ canvasCopy(self, event)
@CommandDecorator("Copy", "&Copy", ["", wx.ART_COPY], None, False)
@GuiCommandDecorator("Copy", "&Copy", ["", wx.ART_COPY], None, False)
def canvasCopy(self, event):
pass
# }}}
# {{{ canvasCut(self, event)
@CommandDecorator("Cut", "Cu&t", ["", wx.ART_CUT], None, False)
@GuiCommandDecorator("Cut", "Cu&t", ["", wx.ART_CUT], None, False)
def canvasCut(self, event):
pass
# }}}
# {{{ canvasDelete(self, event)
@CommandDecorator("Delete", "De&lete", ["", wx.ART_DELETE], None, False)
@GuiCommandDecorator("Delete", "De&lete", ["", wx.ART_DELETE], None, False)
def canvasDelete(self, event):
pass
# }}}
# {{{ canvasExit(self, event)
@CommandDecorator("Exit", "E&xit", None, [wx.ACCEL_CTRL, ord("X")], None)
@GuiCommandDecorator("Exit", "E&xit", None, [wx.ACCEL_CTRL, ord("X")], None)
def canvasExit(self, event):
if self._promptSaveChanges():
self.parentFrame.Close(True)
# }}}
# {{{ canvasNew(self, event, newCanvasSize=None)
@CommandDecorator("New", "&New", ["", wx.ART_NEW], [wx.ACCEL_CTRL, ord("N")], None)
@GuiCommandDecorator("New", "&New", ["", wx.ART_NEW], [wx.ACCEL_CTRL, ord("N")], None)
def canvasNew(self, event, newCanvasSize=None):
def canvasImportEmpty(pathName):
nonlocal newCanvasSize
@ -219,7 +187,7 @@ class GuiCanvasInterface():
self._import(canvasImportEmpty, False, None)
# }}}
# {{{ canvasOpen(self, event)
@CommandDecorator("Open", "&Open", ["", wx.ART_FILE_OPEN], [wx.ACCEL_CTRL, ord("O")], None)
@GuiCommandDecorator("Open", "&Open", ["", wx.ART_FILE_OPEN], [wx.ACCEL_CTRL, ord("O")], None)
def canvasOpen(self, event):
def canvasImportmIRC(pathName):
rc, error = self.parentCanvas.canvas.importStore.importTextFile(pathName)
@ -227,18 +195,18 @@ class GuiCanvasInterface():
self._importFile(canvasImportmIRC, False, "mIRC art files (*.txt)|*.txt|All Files (*.*)|*.*")
# }}}
# {{{ canvasPaste(self, event)
@CommandDecorator("Paste", "&Paste", ["", wx.ART_PASTE], None, False)
@GuiCommandDecorator("Paste", "&Paste", ["", wx.ART_PASTE], None, False)
def canvasPaste(self, event):
pass
# }}}
# {{{ canvasRedo(self, event)
@CommandDecorator("Redo", "&Redo", ["", wx.ART_REDO], [wx.ACCEL_CTRL, ord("Y")], False)
@GuiCommandDecorator("Redo", "&Redo", ["", wx.ART_REDO], [wx.ACCEL_CTRL, ord("Y")], False)
def canvasRedo(self, event):
self.parentCanvas.dispatchDeltaPatches(self.parentCanvas.canvas.journal.popRedo())
self.update(size=self.parentCanvas.canvas.size, undoLevel=self.parentCanvas.canvas.journal.patchesUndoLevel)
# }}}
# {{{ canvasSave(self, event)
@CommandDecorator("Save", "&Save", ["", wx.ART_FILE_SAVE], [wx.ACCEL_CTRL, ord("S")], None)
@GuiCommandDecorator("Save", "&Save", ["", wx.ART_FILE_SAVE], [wx.ACCEL_CTRL, ord("S")], None)
def canvasSave(self, event):
if self.canvasPathName == None:
if self.canvasSaveAs(event) == False:
@ -255,7 +223,7 @@ class GuiCanvasInterface():
return False
# }}}
# {{{ canvasSaveAs(self, event)
@CommandDecorator("Save As...", "Save &As...", ["", wx.ART_FILE_SAVE_AS], None, None)
@GuiCommandDecorator("Save As...", "Save &As...", ["", wx.ART_FILE_SAVE_AS], None, None)
def canvasSaveAs(self, event):
with wx.FileDialog(self.parentCanvas, "Save As", os.getcwd(), "", "mIRC art files (*.txt)|*.txt|All Files (*.*)|*.*", wx.FD_SAVE|wx.FD_OVERWRITE_PROMPT) as dialog:
if dialog.ShowModal() == wx.ID_CANCEL:
@ -265,19 +233,19 @@ class GuiCanvasInterface():
return self.canvasSave(event)
# }}}
# {{{ canvasUndo(self, event)
@CommandDecorator("Undo", "&Undo", ["", wx.ART_UNDO], [wx.ACCEL_CTRL, ord("Z")], False)
@GuiCommandDecorator("Undo", "&Undo", ["", wx.ART_UNDO], [wx.ACCEL_CTRL, ord("Z")], False)
def canvasUndo(self, event):
self.parentCanvas.dispatchDeltaPatches(self.parentCanvas.canvas.journal.popUndo())
self.update(size=self.parentCanvas.canvas.size, undoLevel=self.parentCanvas.canvas.journal.patchesUndoLevel)
# }}}
# {{{ canvasBrushSize(self, f, dimension, incrFlag)
@CommandListDecorator(0, "Decrease brush width", "Decrease brush width", ["toolDecrBrushW.png"], None, None)
@CommandListDecorator(1, "Decrease brush height", "Decrease brush height", ["toolDecrBrushH.png"], None, None)
@CommandListDecorator(2, "Decrease brush size", "Decrease brush size", ["toolDecrBrushHW.png"], None, None)
@CommandListDecorator(3, "Increase brush width", "Increase brush width", ["toolIncrBrushW.png"], None, None)
@CommandListDecorator(4, "Increase brush height", "Increase brush height", ["toolIncrBrushH.png"], None, None)
@CommandListDecorator(5, "Increase brush size", "Increase brush size", ["toolIncrBrushHW.png"], None, None)
@GuiCommandListDecorator(0, "Decrease brush width", "Decrease brush width", ["toolDecrBrushW.png"], None, None)
@GuiCommandListDecorator(1, "Decrease brush height", "Decrease brush height", ["toolDecrBrushH.png"], None, None)
@GuiCommandListDecorator(2, "Decrease brush size", "Decrease brush size", ["toolDecrBrushHW.png"], None, None)
@GuiCommandListDecorator(3, "Increase brush width", "Increase brush width", ["toolIncrBrushW.png"], None, None)
@GuiCommandListDecorator(4, "Increase brush height", "Increase brush height", ["toolIncrBrushH.png"], None, None)
@GuiCommandListDecorator(5, "Increase brush size", "Increase brush size", ["toolIncrBrushHW.png"], None, None)
def canvasBrushSize(self, f, dimension, incrFlag):
def canvasBrushSize_(self, event):
if (dimension < 2) and not incrFlag:
@ -293,12 +261,12 @@ class GuiCanvasInterface():
return canvasBrushSize_
# }}}
# {{{ canvasCanvasSize(self, f, dimension, incrFlag)
@CommandListDecorator(0, "Decrease canvas height", "Decrease canvas height", ["toolDecrCanvasH.png"], None, None)
@CommandListDecorator(1, "Decrease canvas width", "Decrease canvas width", ["toolDecrCanvasW.png"], None, None)
@CommandListDecorator(2, "Decrease canvas size", "Decrease canvas size", ["toolDecrCanvasHW.png"], None, None)
@CommandListDecorator(3, "Increase canvas height", "Increase canvas height", ["toolIncrCanvasH.png"], None, None)
@CommandListDecorator(4, "Increase canvas width", "Increase canvas width", ["toolIncrCanvasW.png"], None, None)
@CommandListDecorator(5, "Increase canvas size", "Increase canvas size", ["toolIncrCanvasHW.png"], None, None)
@GuiCommandListDecorator(0, "Decrease canvas height", "Decrease canvas height", ["toolDecrCanvasH.png"], None, None)
@GuiCommandListDecorator(1, "Decrease canvas width", "Decrease canvas width", ["toolDecrCanvasW.png"], None, None)
@GuiCommandListDecorator(2, "Decrease canvas size", "Decrease canvas size", ["toolDecrCanvasHW.png"], None, None)
@GuiCommandListDecorator(3, "Increase canvas height", "Increase canvas height", ["toolIncrCanvasH.png"], None, None)
@GuiCommandListDecorator(4, "Increase canvas width", "Increase canvas width", ["toolIncrCanvasW.png"], None, None)
@GuiCommandListDecorator(5, "Increase canvas size", "Increase canvas size", ["toolIncrCanvasHW.png"], None, None)
def canvasCanvasSize(self, f, dimension, incrFlag):
def canvasCanvasSize_(self, event):
if (dimension < 2) and not incrFlag:
@ -319,13 +287,13 @@ class GuiCanvasInterface():
return canvasCanvasSize_
# }}}
# {{{ canvasTool(self, f, idx)
@SelectDecorator(0, "Circle", "&Circle", ["toolCircle.png"], [wx.ACCEL_CTRL, ord("C")], False)
@SelectDecorator(1, "Clone", "Cl&one", ["toolClone.png"], [wx.ACCEL_CTRL, ord("E")], False)
@SelectDecorator(2, "Fill", "&Fill", ["toolFill.png"], [wx.ACCEL_CTRL, ord("F")], False)
@SelectDecorator(3, "Line", "&Line", ["toolLine.png"], [wx.ACCEL_CTRL, ord("L")], False)
@SelectDecorator(4, "Move", "&Move", ["toolMove.png"], [wx.ACCEL_CTRL, ord("M")], False)
@SelectDecorator(5, "Rectangle", "&Rectangle", ["toolRect.png"], [wx.ACCEL_CTRL, ord("R")], True)
@SelectDecorator(6, "Text", "&Text", ["toolText.png"], [wx.ACCEL_CTRL, ord("T")], False)
@GuiSelectDecorator(0, "Circle", "&Circle", ["toolCircle.png"], [wx.ACCEL_CTRL, ord("C")], False)
@GuiSelectDecorator(1, "Clone", "Cl&one", ["toolClone.png"], [wx.ACCEL_CTRL, ord("E")], False)
@GuiSelectDecorator(2, "Fill", "&Fill", ["toolFill.png"], [wx.ACCEL_CTRL, ord("F")], False)
@GuiSelectDecorator(3, "Line", "&Line", ["toolLine.png"], [wx.ACCEL_CTRL, ord("L")], False)
@GuiSelectDecorator(4, "Move", "&Move", ["toolMove.png"], [wx.ACCEL_CTRL, ord("M")], False)
@GuiSelectDecorator(5, "Rectangle", "&Rectangle", ["toolRect.png"], [wx.ACCEL_CTRL, ord("R")], True)
@GuiSelectDecorator(6, "Text", "&Text", ["toolText.png"], [wx.ACCEL_CTRL, ord("T")], False)
def canvasTool(self, f, idx):
def canvasTool_(self, event):
self.currentTool = [ToolCircle, ToolSelectClone, ToolFill, ToolLine, ToolSelectMove, ToolRect, ToolText][idx](self.parentCanvas)
@ -342,7 +310,7 @@ class GuiCanvasInterface():
# }}}
# {{{ canvasExportAsAnsi(self, event)
@CommandDecorator("Export as ANSI...", "Export as ANSI...", None, None, None)
@GuiCommandDecorator("Export as ANSI...", "Export as ANSI...", None, None, None)
def canvasExportAsAnsi(self, event):
with wx.FileDialog(self.parentFrame, "Save As...", os.getcwd(), "", "ANSI files (*.ans;*.txt)|*.ans;*.txt|All Files (*.*)|*.*", wx.FD_SAVE|wx.FD_OVERWRITE_PROMPT) as dialog:
if dialog.ShowModal() == wx.ID_CANCEL:
@ -356,7 +324,7 @@ class GuiCanvasInterface():
return True
# }}}
# {{{ canvasExportAsPng(self, event)
@CommandDecorator("Export as PNG...", "Export as PN&G...", None, None, None)
@GuiCommandDecorator("Export as PNG...", "Export as PN&G...", None, None, None)
def canvasExportAsPng(self, event):
with wx.FileDialog(self.parentFrame, "Save As...", os.getcwd(), "", "PNG (*.png)|*.png|All Files (*.*)|*.*", wx.FD_SAVE|wx.FD_OVERWRITE_PROMPT) as dialog:
if dialog.ShowModal() == wx.ID_CANCEL:
@ -369,7 +337,7 @@ class GuiCanvasInterface():
return True
# }}}
# {{{ canvasExportImgur(self, event)
@CommandDecorator("Export to Imgur...", "Export to I&mgur...", None, None, haveImgurApiKey and haveUrllib)
@GuiCommandDecorator("Export to Imgur...", "Export to I&mgur...", None, None, haveImgurApiKey and haveUrllib)
def canvasExportImgur(self, event):
self.parentCanvas.SetCursor(wx.Cursor(wx.CURSOR_WAIT))
rc, status, result = self.parentCanvas.canvas.exportStore.exportBitmapToImgur(self.imgurApiKey, self.parentCanvas.backend.canvasBitmap, "", "", wx.BITMAP_TYPE_PNG)
@ -382,7 +350,7 @@ class GuiCanvasInterface():
wx.MessageBox("Failed to export to Imgur: {}".format(result), "Export to Imgur", wx.ICON_EXCLAMATION | wx.OK)
# }}}
# {{{ canvasExportPastebin(self, event)
@CommandDecorator("Export to Pastebin...", "Export to Pasteb&in...", None, None, haveUrllib)
@GuiCommandDecorator("Export to Pastebin...", "Export to Pasteb&in...", None, None, haveUrllib)
def canvasExportPastebin(self, event):
self.parentCanvas.SetCursor(wx.Cursor(wx.CURSOR_WAIT))
pasteStatus, pasteResult = self.parentCanvas.canvas.exportStore.exportPastebin("", self.parentCanvas.canvas.map, self.parentCanvas.canvas.size)
@ -397,7 +365,7 @@ class GuiCanvasInterface():
wx.MessageBox("Failed to export to Pastebin: " + pasteResult, "Export to Pastebin", wx.OK|wx.ICON_EXCLAMATION)
# }}}
# {{{ canvasExportToClipboard(self, event)
@CommandDecorator("Export to clipboard", "&Export to clipboard", None, None, None)
@GuiCommandDecorator("Export to clipboard", "&Export to clipboard", None, None, None)
def canvasExportToClipboard(self, event):
self.parentCanvas.SetCursor(wx.Cursor(wx.CURSOR_WAIT))
rc, outBuffer = self.parentCanvas.canvas.exportStore.exportTextBuffer(self.parentCanvas.canvas.map, self.parentCanvas.canvas.size)
@ -408,7 +376,7 @@ class GuiCanvasInterface():
return True
# }}}
# {{{ canvasImportAnsi(self, event)
@CommandDecorator("Import ANSI...", "Import ANSI...", None, None, None)
@GuiCommandDecorator("Import ANSI...", "Import ANSI...", None, None, None)
def canvasImportAnsi(self, event):
def canvasImportAnsi_(pathName):
rc, error = self.parentCanvas.canvas.importStore.importAnsiFile(pathName)
@ -416,7 +384,7 @@ class GuiCanvasInterface():
self._importFile(canvasImportAnsi_, True, "ANSI files (*.ans;*.txt)|*.ans;*.txt|All Files (*.*)|*.*")
# }}}
# {{{ canvasImportFromClipboard(self, event)
@CommandDecorator("Import from clipboard", "&Import from clipboard", None, None, None)
@GuiCommandDecorator("Import from clipboard", "&Import from clipboard", None, None, None)
def canvasImportFromClipboard(self, event):
def canvasImportFromClipboard_(pathName):
if wx.TheClipboard.IsSupported(wx.DataFormat(wx.DF_TEXT)) \
@ -433,7 +401,7 @@ class GuiCanvasInterface():
self._import(canvasImportFromClipboard_, True, None)
# }}}
# {{{ canvasImportSauce(self, event)
@CommandDecorator("Import SAUCE...", "Import SAUCE...", None, None, None)
@GuiCommandDecorator("Import SAUCE...", "Import SAUCE...", None, None, None)
def canvasImportSauce(self, event):
def canvasImportSauce_(pathName):
rc, error = self.parentCanvas.canvas.importStore.importSauceFile(pathName)

View File

@ -5,9 +5,9 @@
#
from Canvas import Canvas
from GuiCanvasInterface import GuiCanvasInterface
from GuiCanvasWxBackend import GuiCanvasWxBackend
from GuiFrame import GuiFrame, NID_TOOLBAR_HSEP
from RoarCanvasInterface import RoarCanvasInterface
from RoarCanvasWindow import RoarCanvasWindow
from glob import glob
@ -45,7 +45,7 @@ class RoarClient(GuiFrame):
def __init__(self, parent, defaultCanvasPos=(0, 75), defaultCanvasSize=(100, 30), defaultCellSize=(7, 14), size=(840, 630), title=""):
super().__init__(self._getIconPathName(), size, parent, title)
self.canvas = Canvas(defaultCanvasSize)
self.canvasPanel = RoarCanvasWindow(GuiCanvasWxBackend, self.canvas, defaultCellSize, GuiCanvasInterface, self.panelSkin, self, defaultCanvasPos, defaultCellSize, defaultCanvasSize)
self.canvasPanel = RoarCanvasWindow(GuiCanvasWxBackend, self.canvas, defaultCellSize, RoarCanvasInterface, self.panelSkin, self, defaultCanvasPos, defaultCellSize, defaultCanvasSize)
self.loadAccels(self.canvasPanel.interface.accels)
self.loadMenus(self.canvasPanel.interface.menus)
self._initToolBitmaps(self.canvasPanel.interface.toolBars)

View File

@ -1,13 +1,13 @@
#!/usr/bin/env python3
#
# GuiCanvasInterfaceAbout.py
# RoarClientAboutWindow.py
# Copyright (c) 2018, 2019 Lucio Andrés Illanes Albornoz <lucio@lucioillanes.de>
#
from glob import glob
import os, random, wx, wx.adv
class GuiCanvasInterfaceAbout(wx.Dialog):
class RoarClientAboutWindow(wx.Dialog):
# {{{ onButtonRoar(self, event)
def onButtonRoar(self, event):
self.Destroy()
@ -16,7 +16,7 @@ class GuiCanvasInterfaceAbout(wx.Dialog):
#
# __init__(self, parent, size=(320, 240), title="About roar")
def __init__(self, parent, size=(320, 240), title="About roar"):
super(GuiCanvasInterfaceAbout, self).__init__(parent, size=size, title=title)
super().__init__(parent, size=size, title=title)
self.panel, self.sizer, self.sizerH1, self.sizerH2 = wx.Panel(self), wx.BoxSizer(wx.VERTICAL), wx.BoxSizer(wx.HORIZONTAL), wx.BoxSizer(wx.HORIZONTAL)
logoPathNames = glob(os.path.join("assets", "images", "logo*.bmp"))