All Projects → kotcrab → Vis Ui

kotcrab / Vis Ui

Licence: apache-2.0
libGDX UI toolkit

Programming Languages

java
68154 projects - #9 most used programming language

Labels

Projects that are alternatives of or similar to Vis Ui

Red
Red is a next-generation programming language strongly inspired by Rebol, but with a broader field of usage thanks to its native-code compiler, from system programming to high-level scripting and cross-platform reactive GUI, while providing modern support for concurrency, all in a zero-install, zero-config, single 1MB file!
Stars: ✭ 4,725 (+763.8%)
Mutual labels:  gui
Autopy
A simple, cross-platform GUI automation module for Python and Rust.
Stars: ✭ 522 (-4.57%)
Mutual labels:  gui
Guislice
GUIslice drag & drop embedded GUI in C for touchscreen TFT on Arduino, Raspberry Pi, ARM, ESP8266 / ESP32 / M5stack using Adafruit-GFX / TFT_eSPI / UTFT / SDL
Stars: ✭ 534 (-2.38%)
Mutual labels:  gui
Qtexamples
Qt 的 GUI 控件使用和网络;DTK 重绘控件方式的框架架构解析;Qt 原理/运行机制理解;QtCrator 使用和一些小技巧;系列文章教程
Stars: ✭ 494 (-9.69%)
Mutual labels:  gui
Kotlin Libui
Kotlin/Native interop to libui: a portable GUI library
Stars: ✭ 512 (-6.4%)
Mutual labels:  gui
Polemarch
Simple WEB gui for infrastructure management by ansible playbooks or modules. This is only mirror with bins in releases.
Stars: ✭ 530 (-3.11%)
Mutual labels:  gui
Pydebloatx
Python GUI for uninstalling the default Windows 10 apps.
Stars: ✭ 487 (-10.97%)
Mutual labels:  gui
Dynamodb Gui Client
DynamoDb GUI Client
Stars: ✭ 540 (-1.28%)
Mutual labels:  gui
Dexcalibur
[Official] Android reverse engineering tool focused on dynamic instrumentation automation. Powered by Frida. It disassembles dex, analyzes it statically, generates hooks, discovers reflected methods, stores intercepted data and does new things from it. Its aim is to be an all-in-one Android reverse engineering platform.
Stars: ✭ 512 (-6.4%)
Mutual labels:  gui
Fabgl
Display Controller (VGA, SSD1306, ST7789, ILI9341), PS/2 Mouse and Keyboard Controller, Graphics Library, Sound Engine, Game Engine and ANSI/VT Terminal for the ESP32
Stars: ✭ 534 (-2.38%)
Mutual labels:  gui
Imgui Go
Go wrapper library for "Dear ImGui" (https://github.com/ocornut/imgui)
Stars: ✭ 499 (-8.78%)
Mutual labels:  gui
Iconfontcppheaders
C, C++ headers and C# classes for icon fonts: Font Awesome, Fork Awesome, Material Design, Kenney game icons and Fontaudio
Stars: ✭ 509 (-6.95%)
Mutual labels:  gui
Qtsharp
Mono/.NET bindings for Qt
Stars: ✭ 532 (-2.74%)
Mutual labels:  gui
Go App
A package to build progressive web apps with Go programming language and WebAssembly.
Stars: ✭ 5,607 (+925.05%)
Mutual labels:  gui
Arwes
Futuristic Sci-Fi UI Web Framework
Stars: ✭ 5,031 (+819.74%)
Mutual labels:  gui
Qt.go
Qt binding for Go (Golang) aims get Go's compile speed again.
Stars: ✭ 487 (-10.97%)
Mutual labels:  gui
Dearpygui
Dear PyGui: A fast and powerful Graphical User Interface Toolkit for Python with minimal dependencies
Stars: ✭ 6,631 (+1112.25%)
Mutual labels:  gui
Persepolis
Persepolis Download Manager is a GUI for aria2.
Stars: ✭ 5,218 (+853.93%)
Mutual labels:  gui
Macroid
A modular functional UI language for Android
Stars: ✭ 537 (-1.83%)
Mutual labels:  gui
Bmw Yolov4 Training Automation
This repository allows you to get started with training a state-of-the-art Deep Learning model with little to no configuration needed! You provide your labeled dataset or label your dataset using our BMW-LabelTool-Lite and you can start the training right away and monitor it in many different ways like TensorBoard or a custom REST API and GUI. NoCode training with YOLOv4 and YOLOV3 has never been so easy.
Stars: ✭ 533 (-2.56%)
Mutual labels:  gui

VisUI

VisUI allows to create nice looking UI in libGDX using scene2d.ui. Library contains scene2d.ui skin, useful widgets like color picker and file chooser, it also contains modified scene2d.ui widgets to provide some extra functionality like focus borders, background change on over and click, etc.

VisUI is licensed under Apache2 license meaning that you can use it for free in both commercial and non-commercial projects.

CHANGES file (definitely read before updating!)

Web demo! (source code)

VisUI screenshot Bigger screenshot

Adding VisUI to your project

Please refer to libGDX documentation if you don't know how to mange dependencies with Gradle. Alternatively JAR can be downloaded from Maven repository. If you are creating new project, you can use gdx-setup to automatically add VisUI for you. (press 'Show Third Party Extension' button)

Manual Gradle setup:

Open build.gradle in project root. In ext section under allprojects add:

visuiVersion = '1.X.X'

Look at CHANGES file to see what version of VisUI you can use for your version of libGDX. Note that using not matching versions is likely to cause runtime exceptions.

Core dependency

compile "com.kotcrab.vis:vis-ui:$visuiVersion"

HTML dependency (only if you are using HTML)

compile "com.kotcrab.vis:vis-ui:$visuiVersion:sources"

GdxDefinition.gwt.xml and GdxDefinitionSuperdev.gwt.xml:

<inherits name='com.kotcrab.vis.vis-ui' />

Refresh Gradle dependencies.

Usage

Using VisUI is pretty simple, to load or unload the skin call:

VisUI.load();
VisUI.dispose();

Create your UI like always, for extra skin features you have to use Vis widgets instead of standard scene2d.ui:

VisUI Standard scene2d.ui
VisLabel Label
LinkLabel -
VisCheckBox CheckBox
VisList List
VisProgressBar ProgressBar
VisRadioButton -
VisScrollPane ScrollPane
VisSelectBox SelectBox
VisSlider Slider
VisSplitPane SplitPane
VisTextArea TextArea
VisTextButton TextButton
VisImageTextButton ImageTextButton
VisImageButton ImageButton
VisTextField TextField
VisValidatableTextField -
VisTree Tree
VisWindow Window
VisTable Table
DragPane -
GridGroup -
ListView -
TabbedPane -
Spinner -
CollapsibleWidget -
ButtonBar -
FlowGroups -

Using Vis widgets is necessary for proper focus border management. All VisUI widgets constructors do not have Skin argument, they are using VisUI.skin field.

VisTable

VisTable allows to easily set default spacing for vis components, construct it like this:

VisTable table = new VisTable(true);

VisTable also allows adding vertical and horizontal separators to table:

table.addSeparator() //horizontal
table.addSeparator(true) //vertical

Using different SkinScales

Default VisUI skin can be too small for high resolution screens or mobile devices, in that case you can load a upscaled skin version simply by calling:

VisUI.load(SkinScale.X2);

Internal classes

Classes inside com.kotcrab.vis.[...].internal packages are considered private and aren't part of public API. Changes to that classes won't be listed in change log.

Default title align

Default title align for VisWindow and VisDialog is Align.left this can be changed by calling:

VisUI.setDefaultTitleAlign(int align)

Calling this method does not affect windows that have been already created.

Modifying skin

Raw skin files are available if you would like to modify them. After you pack them using libGDX texture packer, add generated atlas to your project with uiskin.json, default.fnt and font-small.fnt and load it by calling:

VisUI.load(Gdx.files.internal("path/to/your/modified/files/uiskin.json"))

Consider using USL if you want to extend existing VisUI styles. Read more

See also

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].