;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Ricardo Feltrin

Após 23ª cirurgia, João Carlos Martins fará novo concerto só com 4 dedos

Apresentação da Bachiana Filarmônica Sesi SP, sob o comando do maestro João Carlos Martins - Bianca Tatamiya
Apresentação da Bachiana Filarmônica Sesi SP, sob o comando do maestro João Carlos Martins
Imagem: Bianca Tatamiya

Colunista do UOL

06/01/2017 17h58Atualizada em 11/01/2017 13h50

O maestro João Carlos Martins, 73 anos, se recupera bem após complexa cirurgia na qual se submeteu esta semana no hospital Sírio Libanês, para tentar recuperar movimentos da mão e do braço esquerdos.

Foi a 23ª intervenção cirúrgica que Martins sofreu nos últimos  50 anos. Todas tiveram como objetivo auxiliar movimentos nas mãos do músico e pianista, afetadas por graves acidentes, síndromes e ainda uma agressão sofrida na cabeça nos anos 90, durante um assalto, na Bulgária.

Mesmo ainda em recuperação, o maestro já confirmou sua próxima apresentação: dia 2 de fevereiro ao lado de outro lendário pianista brasileiro, Arthur Moreira Lima, no Citibank Hall, em São Paulo.

"Eu vou tocar (com Moreira Lima) nem que seja usando só o dedão", disse bem-humorado o maestro à coluna nesta sexta-feira.

Na verdade, no caso dele, a recuperação, por mais bem-sucedida que seja, é ínfima: para o concerto dia 2 ele conseguirá usar no máximo quatro dedos: o polegar da mão direita, e mais polegar, indicador e anular da mão esquerda.

A mão direita do maestro já é "caso perdido" há décadas. Todos os dedos se deformaram.

Tudo começou  após um acidente (queda) em meados dos anos 60. As coisas foram piorando. Hoje, ele ainda consegue "manobrar" o braço direito de forma a usar ao menos o polegar durante alguma música simples ao piano.

Já os dedos da mão esquerda também estavam quase fechados até antes da operação desta semana, devido a uma grave síndrome. A intervenção permitiu que ao menos três deles voltassem a se mover.

"Uma coisa pelo menos a cirurgia já resolveu: eliminou 70% da dor que eu sentia antes dela", declarou. 

Apesar de já há anos não ter mais condições de executar concertos, João Carlos Martins nunca quis se separar de seu instrumento.

Porém, foi justamente a frustração devido a seus problemas como pianista que o levou a estudar regência.

Hoje, à frente da Orquestra Bachiana-Sesi, já se apresentou para cerca de 14 milhões de pessoas.

Seja ainda com os dedos  tortos sobre as teclas, ou segurando a batuta com auxílio de velcros, como ele sempre repete: “No fim das contas a música venceu”.

@feltrinoficial