rmdialog
rmdialog copied to clipboard
a very early approach to write a QuickDialog wrapper for Rubymotion
Description
RMDialog is based on QuickDialog, it means that you will need to embed the QuickDialog in your project for RMDialog to run. Since I still studying the QuickDialog classes and some features are buggy or not present yet. I'll welcome any contribution, so feel free to extend, correct any code in this project by pulling a request.
# create a RMDialog with a title, and grouped
root = RMDialog.create(title:"Rubymotion Dialog", grouped:true) do
# create a new section
section(name: "Example Section") do
label title:"Hello", value:"world"
end
end
Hierarchy
- root: RMDialog.create({}, &block), create a QRootElement
- section: create and adds a QSection to the root
- label: create and add a QLabelElement to the section
- float:
- boolean:
- decimal:
- badge:
- button:
- label:
- selection
- dynamic_section
- section: create and adds a QSection to the root
Todo List
-
every action on boolean, button, decimal and more should be captured in a block e.g.:
button(title:"login") do alert = alert.alloc.init alert.message = "Hello World" alert.show end decimal(title:"decimal Element", key:"slider", value:0.5, fraction:2) do |value| alert = alert.alloc.init alert.message = "decimal #{value}" alert.show end -
Documentation
-
Create Dialog from Json data
-
Design discussion (are we creating to much objects?)
-
QuickDialog Elements:
- QTextElement
- QLoadingElement
- QDateTimeElement
- QMapElement
- QMapAnnotation
- QSortingSection
- QWebElement
- QMultilineElement
- QLoadingElement
- more ...
-
Element Customization design
-
Accessibility
-
VoiceOver
Thanks
I'd just like to thank escoz and all QuickDialog contributors for the great library