[Kde-br] Ajudinha com QML
Daker Pinheiro
daker.pinheiro em openbossa.org
Quinta Maio 24 18:33:00 UTC 2012
As aulas do curso de Qt para jogos estão sendo feitas com ele.
Estamos utilizando esse exemplo durante as aulas:
http://code.openbossa.org/?p=projects/cheese.git;a=summary
Na pasta presentation do repositorio acima, tem exemplos de uso.
Para ver as apresentações, basta rodar qmlviewer -opengl -fullscreen
(presentation.qml)
Um exemplo é esse aqui:
http://code.openbossa.org/?p=projects/cheese.git;a=blob;f=presentation/talk-day3.qml;h=8e252e1f6ef525b12be253b8679d8f79747cb8ba;hb=eaa6494dc8bd945ef0c21b75eb04e2668e99853c
Estamos sempre melhorando essa engine, já que estamos sempre fazendo novas
apresentações e adicionando features.
Abraços!
2012/5/24 Sandro Andrade <sandroandrade em kde.org>
> 2012/5/24 Daker Pinheiro <daker.pinheiro em openbossa.org>
>
>> Tem também o QuickShow em que você cria os próprios slides em QML.
>> Fica a dica de usá-lo como base:
>>
>> http://code.openbossa.org/?p=projects/quickshow.git;a=summary
>
>
> Não tem um demozinho, não ? :)
> To com preguiça de pensar :) e só queria ver o bicho funcionando ...
> adiciona no repo
>
> Sandro
>
>
>>
>> Abraços,
>>
>>
>> 2012/5/24 Sandro Andrade <sandroandrade em kde.org>
>>
>>>
>>> O ListModel do QML é um bom caminho pra isso !
>>> --
>>> Sandro
>>>
>>>
>>> 2012/5/24 Tomaz Canabrava <tcanabrava em kde.org>
>>>
>>>> 2012/5/24 Rodrigo Oliveira <mdkcore em gmail.com>:
>>>> > Você não pode atribuir ids.
>>>> >
>>>> > Creio que para o que tu estás fazendo, pode tentar utilizar States +
>>>> > PropertyChanges, da uma olhada:
>>>> > http://qt-project.org/doc/qt-4.8/qml-state.html
>>>> >
>>>> > E boa sorte ;)
>>>>
>>>> Eu pensei em usar States + PropertyChanges, mas isso daria um trabalho
>>>> consideravel, pois teria que fazer um estado para cada transição de
>>>> slide, imagino que tenha uma solução melhor, utilizando JavaScript pra
>>>> controlar isso.
>>>>
>>>> Acho que terei que usar um ListModel programar uma View, já que com
>>>> isso eu consigo mudar o CurrentIndex de forma mais simples.
>>>>
>>>> Ou enviar a lista de ID's que eu quero pra o JavaScript, e montar um
>>>> array com eles.
>>>> hm....
>>>>
>>>> > 2012/5/24 Tomaz Canabrava <tcanabrava em kde.org>:
>>>> >> Negos,
>>>> >>
>>>> >> Estou pela primeira vez tentando estudar QML de forma séria, e com
>>>> >> alguns problemas, aparentemente o QML é estático, precisando de ajuda
>>>> >> de JavaScripts externos ou integração com o C++ para funcionar com um
>>>> >> pouco de programação.
>>>> >> O que estou tentando fazer:
>>>> >>
>>>> >> Sistema pequeno de apresentação de Slides, com navegação manual pelo
>>>> teclado.
>>>> >>
>>>> >>
>>>> >> O que consegui fazer:
>>>> >>
>>>> >> Criei módulos novos do QML para Botão, Page, Title, então tenho algo
>>>> >> próximo a isso aqui:
>>>> >>
>>>> >>
>>>> >> import QtQuick 1.0
>>>> >> import "controller.js" as Controller
>>>> >>
>>>> >> Rectangle{
>>>> >> id: presentation; width: 800; height:600;
>>>> >> property QtObject current : p1; // O slide exibido atualmente.
>>>> >>
>>>> >> Page{ id: p1; Title{ text: "Pagina 1"; } ; visible : true; }
>>>> >> Page{ id: p2; Title{ text: "Pagina 2"; } ; visible : false; }
>>>> >> Page{ id: p3; Title{ text: "Pagina 3"; } ; visible : false; }
>>>> >> Page{ id: p4; Title{ text: "Pagina 4"; } ; visible : false; }
>>>> >>
>>>> >> Button{
>>>> >> text: "→";
>>>> >> onClicked : {
>>>> >> presentation.current.visible = false;
>>>> >> presentation.current = Controller.next();
>>>> >> presentation.visible = true;
>>>> >> }
>>>> >> }
>>>> >>
>>>> >> Keys.onLeftPressed: {
>>>> >> presentation.current.visible = false;
>>>> >> presentation.current = Controller.next();
>>>> >> presentation.visible = true;
>>>> >> }
>>>> >> }
>>>> >>
>>>> >> E a implementação do Controller.next é:
>>>> >>
>>>> >> var pos = 0;
>>>> >> function next(){
>>>> >> return "p"+pos++;
>>>> >> }
>>>> >>
>>>> >>
>>>> >> Eu sei que está errado, pois eu preciso retornar o ID ao invés de uma
>>>> >> String, o problema é que não tenho a menor idéia de como fazer isso,
>>>> e
>>>> >> nos exemplos que vem com o Qt, me perdi no código, eles passam de
>>>> algo
>>>> >> básico pra algo bastante avançado,
>>>> >> tou perdidinho perdidinho. =(
>>>> >>
>>>> >> Tomaz
>>>> >> _______________________________________________
>>>> >> Kde-br mailing list
>>>> >> Kde-br em kde.org
>>>> >> https://mail.kde.org/mailman/listinfo/kde-br
>>>> >
>>>> >
>>>> >
>>>> > --
>>>> > ⠠⠵
>>>> > --
>>>> > --- Projects ---
>>>> > -- http://projects.thecoreme.org --
>>>> > --- Blog ---
>>>> > -- http://blog.thecoreme.org --
>>>> > --
>>>> > _______________________________________________
>>>> > Kde-br mailing list
>>>> > Kde-br em kde.org
>>>> > https://mail.kde.org/mailman/listinfo/kde-br
>>>> _______________________________________________
>>>> Kde-br mailing list
>>>> Kde-br em kde.org
>>>> https://mail.kde.org/mailman/listinfo/kde-br
>>>>
>>>
>>>
>> _______________________________________________
>> Kde-br mailing list
>> Kde-br em kde.org
>> https://mail.kde.org/mailman/listinfo/kde-br
>>
>>
>
>
> --
> Daker Fernandes Pinheiro
> openBossa
> INdT - Instituto Nokia de Tecnologia
> Blog: http://codecereal.blogspot.com
> Twitter: @dakerfp
>
>
>
> _______________________________________________
> Kde-br mailing list
> Kde-br em kde.org
> https://mail.kde.org/mailman/listinfo/kde-br
>
>
>
> _______________________________________________
> Kde-br mailing list
> Kde-br em kde.org
> https://mail.kde.org/mailman/listinfo/kde-br
>
>
--
Daker Fernandes Pinheiro
openBossa
INdT - Instituto Nokia de Tecnologia
Blog: http://codecereal.blogspot.com
Twitter: @dakerfp
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <https://mail.kde.org/mailman/private/kde-br/attachments/20120524/0a74c87e/attachment-0001.html>
Mais detalhes sobre a lista de discussão Kde-br