{"id":15055825,"url":"https://github.com/gleidsonmt/gndecorator","last_synced_at":"2025-04-10T03:54:12.325Z","repository":{"id":44143644,"uuid":"129322906","full_name":"gleidsonmt/GNDecorator","owner":"gleidsonmt","description":"Modern window decorator for javafx applications","archived":false,"fork":false,"pushed_at":"2022-10-21T20:11:02.000Z","size":17106,"stargazers_count":37,"open_issues_count":0,"forks_count":12,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-10T03:53:57.004Z","etag":null,"topics":["decoration","decorator","estrutura","java-desktop-application","java-library","javafx","javafx-8","javafx-application","javafx-desktop-apps","javafx-gui","javafx-library","material-design"],"latest_commit_sha":null,"homepage":"https://gleidsonmt.github.io/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gleidsonmt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-04-12T23:39:42.000Z","updated_at":"2025-02-05T11:26:51.000Z","dependencies_parsed_at":"2023-01-20T07:47:10.193Z","dependency_job_id":null,"html_url":"https://github.com/gleidsonmt/GNDecorator","commit_stats":null,"previous_names":["gleidson28/gndecorator"],"tags_count":20,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gleidsonmt%2FGNDecorator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gleidsonmt%2FGNDecorator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gleidsonmt%2FGNDecorator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gleidsonmt%2FGNDecorator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gleidsonmt","download_url":"https://codeload.github.com/gleidsonmt/GNDecorator/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248154999,"owners_count":21056542,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["decoration","decorator","estrutura","java-desktop-application","java-library","javafx","javafx-8","javafx-application","javafx-desktop-apps","javafx-gui","javafx-library","material-design"],"created_at":"2024-09-24T21:46:35.052Z","updated_at":"2025-04-10T03:54:12.294Z","avatar_url":"https://github.com/gleidsonmt.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003eGNDecorator\u003c/h1\u003e\n\u003ch6 align=\"center\"\u003e This project is part of the set of custom components created for JavaFx. \u003c/h6\u003e\n\u003ch1\u003e\u003c/h1\u003e\n\n[![Sonatype Nexus (Releases)](https://img.shields.io/nexus/r/io.github.gleidsonmt/gndecorator?server=https%3A%2F%2Fs01.oss.sonatype.org\u0026style=for-the-badge)](https://central.sonatype.dev/artifact/io.github.gleidsonmt/gndecorator/2.1.25)\n[![Release](https://img.shields.io/badge/Release-v2.2.25-green.svg?style=for-the-badge)](https://github.com/gleidsonmt/GNDecorator/releases/tag/2.1.25)\n![Build](https://img.shields.io/badge/Build-2.2.31+253-gold.svg?style=for-the-badge)\n[![License](https://img.shields.io/github/license/Gleidson28/GNDecorator.svg?style=for-the-badge)](https://github.com/gleidsonmt/GNDecorator/blob/master/LICENSE)\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"./src/main/resources/logo/logo_flier.png\"  /\u003e\n\u003c/p\u003e\n\n# 📑 Contents\n\n\u003c!-- TOC --\u003e\n* [📑 Contents](#-contents)\n* [💻 Environment](#-environment)\n* [🚀 Installing Decorator](#-installing-decorator)\n* [☕ Using Decorator](#-using-decorator)\n* [🧬  Basic Structure](#-basic-structure)\n  * [Structure - by Scenic View](#structure---by-scenic-view)\n    * [Default Structure](#default-structure)\n        * [View Default](#view-default)\n        * [View Darkula](#view-darkula)\n* [📺 On Youtube](#-on-youtube)\n* [🛠 Enhancements](#-enhancements)\n* [📫 Contributing to Project](#-contributing-to-project)\n* [😄 Be a contritubutor\u003cbr\u003e](#-be-a-contritubutor-br)\n* [📝 License](#-license)\n\u003c!-- TOC --\u003e\n\n# 💻 Environment\n\n\nThis lib is a compnent for JavaFx:   Get in the offical website [JavaFx](https://openjfx.io/), Tutorial [Getting Started](https://openjfx.io/openjfx-docs/)\n\nI have a great workstation here, then I've using a gradle 7.2 and Java and JavaFx +16 on Windows. (I really want to test in other systems in future).\n\n\n# 🚀 Installing Decorator\n\nNow you have many ways to get that!\n!🗒️Note ** The release has the first changes I made and releases in nexus are more stable 🥸***\n\n👌In code blocks find the copy button... is cooler, it automatically knows if your target is a pom.xml or gradle.build\n\nFor installing decorator, you have this options:\n\n* For Pros - Click on the badge release or click badge nexus on the top of this document, and you're going to redirect to hosted sources.\n* For Github Users - On the right side, you can see the packages and releases, click on them and download it, in case you are in packages just copy them into your build file.\n* For Faster users - Just copy and paste the code bellow\n\nIf you use maven add in pom.xml:\n```xml\n\u003cdependency\u003e\n  \u003cgroupId\u003eio.github.gleidsonmt\u003c/groupId\u003e\n  \u003cartifactId\u003egndecorator\u003c/artifactId\u003e\n  \u003cversion\u003e2.2.25\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n.. or in gradle.build:\n```groovy\n    implementation 'io.github.gleidsonmt:replaceVersionInREADME:2.2.25'\n```\n\n# ☕ Using Decorator\n\nBegin to use... Java Code!\n\n```java\n  GNDecorator decorator = new GNDecorator();\n  decorator.setTitle(\"JavaFx Application\");\n  decorator.setContent(content);\n  decorator.fullBody() // the content occupies all of size\n    \n // Adding menus \n  Menu menu = new Menu(\"File\");\n  menu.getItems().add(new MenuItem(\"Open\"));\n  menu.getItems().add(new MenuItem(\"Close\"));\n  decorator.addMenu(menu);\n  decorator.addMenu(1, menu);// add with a index\n        \n  // Adding custom controls\n  ButtonTest a1 = new ButtonTest(\"Button 1\");\n  decorator.addControl(a1);\n  decorator.addControl(index, a1); // add with a index\n  ```\n\n\n# 🧬  Basic Structure\n\n        root -\u003e SstackPane\n                body -\u003e AnchorPane\n                        top_left -\u003e Path\n                        top_right -\u003e Path -- rotation 90°\n                        bottom_left -\u003e Path -- rotation 270°\n                        bottom_right -\u003e Path -- rotation 180°\n\n\n## Structure - by Scenic View\n![Structure](src/main/resources/screens/primarySctructure.png)\n\n### Default Structure\n![gif2](src/main/resources/screens/explanation.jpg)\n\n\n##### View Default\n![demo1](src/main/resources/screens/default.png)\n##### View Darkula\n![demo1](src/main/resources/screens/dark.png)\n##### With gradient and image\n![demo1](src/main/resources/screens/mac.png)\n\n# 📺 On Youtube\nShort Presentation\n[here](https://youtu.be/hZsYU7UbWmU)\n\n# 🛠 Enhancements\n\nNext steps:\n\n- [x] Add Yosemite Theme\n- [ ] Add Windows Theme\n- [ ] The decoratorTheme in blank to customize\n- [ ] Public methods to update window icons with css.\n- [X] Better pratices for one class receives state scope event (Clean Code)\n- [ ] Default Property to change bar height\n- [ ] Float options (css too)\n\n# 📫 Contributing to Project\n\u003c!---Se o seu README for longo ou se você tiver algum processo ou etapas específicas que deseja que os contribuidores sigam, considere a criação de um arquivo CONTRIBUTING.md separado---\u003e\nTo contributing to project, follow these steps:\n\n1. Fork this repository.\n2. Creates a branch: `git checkout -b \u003cbranch_name\u003e`.\n3. Do your changes and commit: `git commit -m '\u003ccommit_message\u003e'`\n4. Send a branch to origin: `git push origin GNDecorator / \u003clocal\u003e`\n5. Creates pull request.\n\nHowever, if you don't know [How to create a pull Request](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request).\n\n# 😄 Be a contritubutor\u003cbr\u003e\n\n🤖I really need more friends.. Send me a  \u003ca href='mailto:gleidisonmt@gmail.com?subject=Hi, I see you need my help!.. I am here.'\u003e email \u003ca/\u003e.\n\n# 📝 License\n\nThis project is under license. See the file [LICENSE](LICENSE.md) to more details.\n\n[⬆ Back to the top](#GNDecorator)\u003cbr\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgleidsonmt%2Fgndecorator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgleidsonmt%2Fgndecorator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgleidsonmt%2Fgndecorator/lists"}