示例#1
0
    def __init__(self, UI, fsmpath, *args, **kwargs):
        self.logger = log.get_logger('{0}.{1}'.format(mc.k_name_header, __name__), logging.DEBUG)
        self.UI = UI
        self.args = args
        self.kwargs = kwargs
        self.player = None
        self.recorder = None

        super(MMMacroFSM, self).__init__(fsmpath, *args, **kwargs)
示例#2
0
 def __init__(self, macroFSM):
     self.logger = log.get_logger('{0}.{1}'.format(mc.k_name_header, __name__), logging.DEBUG)
     self.macroFSM = macroFSM
     self.position_previous = mouse.Controller().position
     self.keys = []
     self.buttons = []
     self.kms = []
     self.time_previous = time.time()
     self.lk = keyboard.Listener(on_press=self.on_press, on_release=self.on_release)
     self.lm = mouse.Listener(on_click=self.on_click, on_move=self.on_move, on_scroll=self.on_scroll)
示例#3
0
 def __init__(self, macroFSM):
     super(MMPlayer, self).__init__()
     self.logger = log.get_logger('{0}.{1}'.format(mc.k_name_header, __name__), logging.DEBUG)
     self.macroFSM = macroFSM
     self.ck = keyboard.Controller()
     self.cm = mouse.Controller()
     self.index_playing = 0
     self.count_sleep = 0
     self.terminate_play = False
     self.lk = keyboard.Listener(on_press=self.on_press, on_release=self.on_release)
     self.lk.start()
     self.lm = mouse.Listener(on_click=self.on_click, on_move=self.on_move, on_scroll=self.on_scroll)
     self.lm.start()
示例#4
0
from pynput import keyboard
from pynput import mouse
import time
import logging
import wx

from mmlog import log
from mmfsm import fsm, mc, mf
import mu
from mmMacro import MMMacroFSM, MMRecorder, MMPlayer, event_thread_play

from . import playing, stoping


logger = log.get_logger('{0}.{1}'.format(mc.k_name_header, __name__), logging.DEBUG)

def initialize(self: MMMacroFSM, *args, **kwargs):
    self.player = None
    self.allow_loop = False
    self.recorder = None
    self.kms = []

    if mu.command == mu.KMCommand.GUI:
        if mu.path:
            stoping.load_file(self, mu.path)
        return {
            mc.k_rcode: 'ack_gui',
            mc.k_args: [],
            mc.k_kwargs: {}
        }
示例#5
0
                '[{0}] is not MMMacro'.format(mu.path)
            ],
        ]
    })

    if macroFSM.mmif_get_status()[-1][mc.k_rcode] == mc.fsm_rcode_ack:
        macroFSM.record(None)
        macroFSM.recorder.lk.join()
        macroFSM.recorder.lm.join()
        macroFSM.save(mu.path)
    macroFSM.base(None)


if __name__ == '__main__':
    args = parse_args()
    logger = log.get_logger(mc.k_name_header, logging.DEBUG)
    log.set_sys_excepthook(logger)
    log.set_threading_excepthook()
    formatter = logging.Formatter(log.format_basic)
    dirpath_log = pathlib.Path.cwd() / mu.k_dirpath_log
    pathlib.Path(dirpath_log).mkdir(parents=True, exist_ok=True)
    now = datetime.datetime.now()
    filepath_log = dirpath_log / '{0}_{1}.{2}'.format(
        'MMMacro', now.strftime('%Y%m%d'), 'log')
    log.set_logger_file_handler(logger, formatter, filepath_log, mu.loglevel)

    if mu.command == mu.KMCommand.PLAY:
        cli_play()
    elif mu.command == mu.KMCommand.RECORD:
        cli_record()
    elif mu.command == mu.KMCommand.GUI:
示例#6
0
 def __init__(self, fsmpath):
     super(MMMacroFrame, self).__init__(None, id=mu.id_window[mu.k_main_frame])
     self.create_content_panel()
     self.logger = log.get_logger('{0}.{1}'.format(mc.k_name_header, __name__), logging.DEBUG)
     self.create_bars()
     self.macroFSM = MMMacroFSM(self, fsmpath)
示例#7
0
 def mmif_set_logger(self):
     self.mmiv_logger = log.get_logger(
         '{0}.{1}'.format(mc.k_name_header, __name__), logging.DEBUG)