8000 Feature Requests · Issue #7 · vlang/gui · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
Feature Requests #7
Open
Open
@mike-ward

Description

@mike-ward

This is a carryover from VUI. Listing it here is not a commitment.

General

  • Custom widgets on user level
  • Declarative style
  • Examples and documentation (ongoing)
  • Keyboard and mouse events
  • Proper eventing system
  • Resizing
  • Themes
  • Widget customization using properties (color, etc.)
  • Drag & Drop
  • Add dark titlebar setting to themes (comments?)
  • Audio/Video Multimedia Operation API
  • Custom Scaling ???
  • Hot code reloading
  • Keyboard/Mouse scroll select (scrollable text, select view)
  • Print API
  • RTL support
  • Separate Pop-up Window (new window)
  • Touch events
  • View shapes, shadows API

Layout

  • Canvas with support for line/arc/ellipse/rect, etc.
    • Will likely have to provide wrappers for all the gg draw commands
    • Drawing is layout independent with coordinates relative to the Canvas
    • The Canvas view itself is subject to layout composition, like other views
    • Allows other views like input and text, which must be manually positioned and sized (no layout support)
    • Hit testing is also required
  • Column
  • Row
  • Scrolling
  • Flow
  • Table (text-only for now)

Responsiveness

  • Hover, focus feedback
  • Kick-ass, super fast layout/rendering ⏩
  • Tab support (focus)
  • Animations & Transitions

Text

  • Copy/Paste
  • Multiline textbox
  • Text selection with a mouse and keyboard
  • Wrapping
  • Rich Text
  • Vertical cursor movement

Views (a.k.a. Widgets)

  • Alert Box
  • Button
  • Context menu
  • Dialog Box
  • Expander
  • Image
  • List Box
  • Menus
  • Progress bar
  • Radio button
  • Radio button group
  • Select drop-down
  • Slider
  • Switch
  • Tab control (shown in example, no formal view)
  • Throbbers
  • Toggle (a.k.a. checkbox)
  • Tooltip
  • Tree View
  • Calendar
  • Charting
  • Color Chooser
  • Data Grid (DB source bindings, virtualize list)
  • Date
  • Dials, gauges, windrose, clock...
  • File Chooser
  • LazyListView
  • LoadingView
  • Markdown viewer
  • Number picker
  • Spinners
  • Splitter
  • Time
  • Web View

Not Sure if these Apply to a UI Framework

  • Background tasks API
  • Device access (Wifi, Bluetooth, USB, NFC...) API
  • Log API
  • Privacy and Security API
  • Support character sets other than ASCII

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0