X Tutup
# Copyright (c) 2012-2014 The CEF Python authors. All rights reserved. # License: New BSD License. # Website: http://code.google.com/p/cefpython/ STATUSTYPE_TEXT = cef_types.STATUSTYPE_TEXT STATUSTYPE_MOUSEOVER_URL = cef_types.STATUSTYPE_MOUSEOVER_URL STATUSTYPE_KEYBOARD_FOCUS_URL = cef_types.STATUSTYPE_KEYBOARD_FOCUS_URL cdef public void DisplayHandler_OnAddressChange( CefRefPtr[CefBrowser] cefBrowser, CefRefPtr[CefFrame] cefFrame, CefString& cefURL ) except * with gil: cdef PyBrowser pyBrowser cdef PyFrame pyFrame cdef str pyUrl cdef object callback try: pyBrowser = GetPyBrowser(cefBrowser) pyFrame = GetPyFrame(cefFrame) pyUrl = CefToPyString(cefURL) callback = pyBrowser.GetClientCallback("OnAddressChange") if callback: callback(pyBrowser, pyFrame, pyUrl) return except: (exc_type, exc_value, exc_trace) = sys.exc_info() sys.excepthook(exc_type, exc_value, exc_trace) cdef public cpp_bool DisplayHandler_OnConsoleMessage( CefRefPtr[CefBrowser] cefBrowser, CefString& cefMessage, CefString& cefSource, int line ) except * with gil: cdef PyBrowser pyBrowser cdef str pyMessage cdef str pySource cdef object callback try: pyBrowser = GetPyBrowser(cefBrowser) pyMessage = CefToPyString(cefMessage) pySource = CefToPyString(cefSource) callback = pyBrowser.GetClientCallback("OnConsoleMessage") if callback: return bool(callback(pyBrowser, pyMessage, pySource, line)) else: return False except: (exc_type, exc_value, exc_trace) = sys.exc_info() sys.excepthook(exc_type, exc_value, exc_trace) cdef public void DisplayHandler_OnContentsSizeChange( CefRefPtr[CefBrowser] cefBrowser, CefRefPtr[CefFrame] cefFrame, int width, int height ) except * with gil: cdef PyBrowser pyBrowser cdef PyFrame pyFrame cdef object callback try: pyBrowser = GetPyBrowser(cefBrowser) pyFrame = GetPyFrame(cefFrame) callback = pyBrowser.GetClientCallback("OnContentsSizeChange") if callback: callback(pyBrowser, pyFrame, width, height) return except: (exc_type, exc_value, exc_trace) = sys.exc_info() sys.excepthook(exc_type, exc_value, exc_trace) cdef public void DisplayHandler_OnNavStateChange( CefRefPtr[CefBrowser] cefBrowser, cpp_bool canGoBack, cpp_bool canGoForward ) except * with gil: cdef PyBrowser pyBrowser cdef object callback try: pyBrowser = GetPyBrowser(cefBrowser) callback = pyBrowser.GetClientCallback("OnNavStateChange") if callback: callback(pyBrowser, canGoBack, canGoForward) return except: (exc_type, exc_value, exc_trace) = sys.exc_info() sys.excepthook(exc_type, exc_value, exc_trace) cdef public void DisplayHandler_OnStatusMessage( CefRefPtr[CefBrowser] cefBrowser, CefString& cefText, cef_types.cef_handler_statustype_t statusType ) except * with gil: cdef PyBrowser pyBrowser cdef str pyText cdef object callback try: pyBrowser = GetPyBrowser(cefBrowser) pyText = CefToPyString(cefText) callback = pyBrowser.GetClientCallback("OnStatusMessage") if callback: callback(pyBrowser, pyText, statusType) return except: (exc_type, exc_value, exc_trace) = sys.exc_info() sys.excepthook(exc_type, exc_value, exc_trace) cdef public void DisplayHandler_OnTitleChange( CefRefPtr[CefBrowser] cefBrowser, CefString& cefTitle ) except * with gil: cdef PyBrowser pyBrowser cdef str pyTitle cdef object callback cdef py_bool ret try: pyBrowser = GetPyBrowser(cefBrowser) pyTitle = CefToPyString(cefTitle) callback = pyBrowser.GetClientCallback("OnTitleChange") if callback: ret = bool(callback(pyBrowser, pyTitle)) IF UNAME_SYSNAME == "Windows": if ret: WindowUtils.SetTitle(pyBrowser, pyTitle) WindowUtils.SetIcon(pyBrowser, icon="inherit") return else: IF UNAME_SYSNAME == "Windows": WindowUtils.SetTitle(pyBrowser, pyTitle) WindowUtils.SetIcon(pyBrowser, icon="inherit") return except: (exc_type, exc_value, exc_trace) = sys.exc_info() sys.excepthook(exc_type, exc_value, exc_trace) cdef public cpp_bool DisplayHandler_OnTooltip( CefRefPtr[CefBrowser] cefBrowser, CefString& cefText ) except * with gil: cdef PyBrowser pyBrowser cdef list pyText cdef object callback cdef py_bool ret try: pyBrowser = GetPyBrowser(cefBrowser) pyText = [CefToPyString(cefText)] # In/Out callback = pyBrowser.GetClientCallback("OnTooltip") if callback: ret = callback(pyBrowser, pyText) PyToCefString(pyText[0], cefText); return bool(ret) else: return False except: (exc_type, exc_value, exc_trace) = sys.exc_info() sys.excepthook(exc_type, exc_value, exc_trace)
X Tutup