1 unstable release
Uses new Rust 2024
new 0.1.1 | Apr 2, 2025 |
---|
#4 in #file-management
37 downloads per month
Used in 49 crates
(8 directly)
4MB
31K
SLoC
Aloe FileBrowser
Aloe FileBrowser offers a comprehensive and customizable interface for file and directory management in GUI applications. It provides a variety of components and traits for selecting, browsing, and displaying files and directories.
Features
- File and Directory Selection: Utilize
FileBrowserComponent
with options like open vs. save mode, and single vs. multiple item selection. - Color Customization: Customize the GUI using various color ID enums for different components and aspects.
- Event Listening: Implement the
FileBrowserListener
trait to handle user interactions such as file selections and changes in the browsing directory. - Asynchronous Operations: Asynchronous traits for loading and saving documents.
- Cross-Platform: Aimed at compatibility across different operating systems, leveraging native capabilities when appropriate.
Components and Traits
FileBrowserComponent
: Core component for navigating files and directories.FileChooser
: Create dialog boxes for file/directory opening and saving.DirectoryContentsDisplayComponent
: Base class for displaying file lists with options for list or tree view.Enum Flags
:FileChooserFlags
provides flags for different modes and selection capabilities.Color ID Enums
: Customize components' appearance with various predefined color IDs.
Example
let file_browser = FileBrowserComponent::new(
FileChooserFlags::openMode | FileChooserFlags::canSelectFiles,
&File::default(),
std::ptr::null(),
std::ptr::null_mut()
);
Installation
Add the following line to your Cargo.toml
:
aoe-filebrowser = "0.1.0"
License
This project is licensed under the GPL-3.0 License.
Authors
Developed by klebs tpk3.mx@gmail.com.
Note: This README.md was generated by an AI model. It may not be 100% accurate, but it should provide a good overview of the crate's functionalities.
This crate is a translation of the JUCE module.
JUCE is a c++ software framework for developing high performance audio applications.
Usage falls under the GPLv3 as well as the JUCE commercial license.
See github.com/juce-framework/JUCE and the JUCE license page for details.
This crate is in the process of being translated from c++ to rust. For progress updates, please see the workspacer rust project. designed specifically for rust projects.
Dependencies
~25–39MB
~597K SLoC