Giter Site home page Giter Site logo

wxrust2's Introduction

wxRust2

This is my 2nd exploration of binding the wxWidgets cross-platform toolkit.

This project is in the very-early stage of the development. I'm playing with this in my very limited spare time. So don't expect this project will be usable (or useful) state in the near future.


How to use

  1. Install prerequisite or Specify feature to use vendored wx binary crate
  2. Specify wxrust dependency
    [dependencies]
    wx = { version = "0.0.1-alpha", package = "wxrust" }

See documentation (after crate released) or wx-core/README.md for more details.

Prerequisite

Install the wxWidgets library. Currently (not fully) supported library versions:

wx Windows macOS Linux
3.2.0 Installed Official MSVC DLL Homebrew Codelite repo
3.2.0 Vendored MinGW64 Static Universal Static N/A
3.0.5 N/A N/A Ubuntu Package

Following installation method are (somewhat) tested with:

Windows

macOS

  • Install from Homebrew like brew install wxwidgets

Linux

Use vendored wx binary crate

You can use prebuilt wx binaries without installing wxWidgets system-wide.

  1. Specify --features vendored to cargo.
  2. Override wxrust-config crate dependency with the following git respositry crate (or your fork of it):
    [patch.crates-io]
    wxrust-config = { git = "https://github.com/kenz-gelsoft/wxrust-vendored-config" }
    • You need to specify git or local separate repo's crate, as crates.io won't host crates with (large) binary crates such as this.

This configuration links to following per-build-target crates by default. You should be able to override this by crate name:

Build target Crate name Git repository Build configuration
cfg(target_os = "macos") wx-universal-apple-darwin https://github.com/ancwrd1/wx-universal-apple-darwin Lean and mean config, see repo.
x86_64-pc-windows-gnu wx-x86_64-pc-windows-gnu https://github.com/ancwrd1/wx-x86_64-pc-windows-gnu Lean and mean config, see repo.
x86_64-pc-windows-msvc wx-x86_64-pc-windows-msvc https://github.com/kenz-gelsoft/wx-x86_64-pc-windows-msvc Bundled wx3.2.0 official build

@ancwrd1 suggested this feature and kindly helped to support this. Thank you!


License

MIT License. but you can (and shoudld) treat this library as wxWindows Library Licence (same with required wxWidgets library dependency).

Large part of this project is the binding generator in Python (doxybindgen). This part may be usable and want to be used for another traditional C++ APIs with Doxygen documented (c.f. like Haiku OS APIs(Kits)) in future. So permissive license is desirable.

Samples ported from wxWidgets

samples/ subdirectory contains sample codes ported from the wxWidgets Library. These sample codes are licensed under the wxWindows Library Licence.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.