Getting polyscope parent window size/dimensions for callback
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 20/100
- Tipo de issue
- Funcionalidade
- Clareza
- Precisa de esclarecimento
- Status de atividade
- Estagnada
- Domínio
- desktop-dev
Direção de pesquisa
Start by comparing the C++ source's parent-window sizing and docking updates with the Python callback path using the imgui bindings. Determine whether the reported window and content-region values expose the needed parent context, then define the scope for sizing access, callback renaming, and control of the Structure, Picker, and Polyscope elements.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
I'm creating custom UI elements since the default callback seems to only support a single additional window and also has a hardcoded name of "Command UI". In the C++ source, I noticed the windows are being docked by continually updating the current window heights of the parent window and adjusting the positions accordingly.
I'm trying to do this in the Python implementation with the imgui bindings, but the functions GetWindowHeight() and GetWindowWidth() seem to return completely static values when I call them within my callback, and do not change if I move/resize the parent window or the actual callback GUI element. It's unclear what it's doing. I'm seeing the same trouble with GetWindowContentRegionMax() and GetContentRegionMax().
Not sure if this is a ImGui specific question but it seems related to PolyScope. For that matter, it would be nice if the main polyscope instance could return the window sizing params for this purpose if the above bindings don't actually have the parent window context. Otherwise, I'm not sure how to get GUI elements to dock to different sides of the window, etc. It would also be nice if we could rename the default callback GUI, as well as enable/disable the Structure, Picker, and Polyscope GUI elements from Python like that can be done in C++. Additionally, further customization of those default elements would be highly appreciated since without it, users who want to customize the UI will have to turn off the boilerplate and re-write it which defeats the purpose in my opinion.
- Linguagem predominante
- C++
- Estrelas
- 53
- Forks
- 25
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Preparar o ambiente
Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de nmwsharp/polyscope-py
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 35/100
nmwsharp/polyscope-py#56 ·
-
Imgui BundleAberta
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 25/100
nmwsharp/polyscope-py#44 · 1 comentário ·
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 35/100
nmwsharp/polyscope-py#41 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 25/100
nmwsharp/polyscope-py#39 ·
-
enhancement
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 25/100
nmwsharp/polyscope-py#36 · 1 reação ·
Todas as issues de nmwsharp/polyscope-py
Issues semelhantes
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 84/100
NVIDIA/DeepStream#78 ·
-
Component: Python API
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
Vector35/binaryninja-api#8649 ·
Mantenedores costumam responder em até 3 dias
-
ai_p2 comp-parquet-reader-v3
Dificuldade 2/5 Meio dia Facilidade para iniciantes 66/100
ClickHouse/ClickHouse#124986 ·
Mantenedores costumam responder em até 1 dia
-
bug product: very_good_flutter_plugin
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 78/100
VeryGoodOpenSource/very_good_templates#654 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
Mantenedores costumam responder em até 1 dia