2014-02-24 19:28:07 -06:00
WINDOWS
- DateTime Picker
- ListView for Tables
- either Property Sheets or Tabs for Tabs
- either Rebar or Toolbar for Toolbars
- Status Bar
- Tooltip (should be a property of each control)
- Trackbar for Sliders
2014-02-25 12:13:23 -06:00
- cannot automatically snap to custom step; need to do it manually
2014-02-24 19:28:07 -06:00
- Tree View
- Up-Down Control for Spinners
- maybe:
- swap ComboBox for ComboBoxEx (probably only if requested enough)
- IP Address control (iff GTK+ and Cocoa have it; maybe not necessary if we allow arbitrary target addresses?)
- ListView for its Icon View?
- something similar to Task Dialog might be useful to have as a convenience template later
2014-02-25 13:50:59 -06:00
- TODO
- commcntl.h has stuff on a font control that isn't documented?
2014-02-25 20:43:50 -06:00
- actually not a control, but localization support: http://msdn.microsoft.com/en-us/library/windows/desktop/bb775454%28v=vs.85%29.aspx
2014-03-07 01:00:28 -06:00
- notes to self:
- OpenGL: http://msdn.microsoft.com/en-us/library/windows/desktop/dd374379%28v=vs.85%29.aspx
2014-02-24 19:28:07 -06:00
GTK+
2014-02-25 16:55:12 -06:00
- GtkCalendar for date selection (TODO doesn't handle times)
2014-02-24 19:28:07 -06:00
- GtkNotebook for Tabs
- GtkScale for Sliders
2014-02-25 12:13:23 -06:00
- cannot automatically snap to INTEGERS (let alone to custom steps); need to do it manually
- natural size is 0x0 for some reason
2014-02-24 19:28:07 -06:00
- GtkSpinButton for Spinners
- GtkStatusBar
- GtkToolbar
- maybe:
- GtkFontButton would be nice but unless ComboBoxEx provides it Windows doesn't
- same for GtkColorButton
- GtkIconView
- GtkSeparator (I think Windows makes this a mode of Static controls?)
2014-02-24 19:32:35 -06:00
- notes to self:
- groupbox is GtkFrame
- GtkTreeView can do tree views and Tables
2014-03-07 01:00:28 -06:00
- OpenGL is done outside GTK+: https://projects.gnome.org/gtkglext/
- only an issue if I want to provide OpenGL by default...
2014-03-07 01:10:05 -06:00
- http://stackoverflow.com/questions/3815806/gtk-and-opengl-bindings suggest GtkGLArea is better but that seems to be a Mono thing? also indicates Clutter (with its Cogl) is not an option
2014-03-07 01:18:12 -06:00
- er no, the Mono thing is just the homepage... but it doesn't say if this targets GTK+ 2 or GTK+ 3, hm. (also it appears to not have been updated since Precise; in Ubuntu it's libgtkgl)
2014-02-24 19:28:07 -06:00
COCOA
2014-02-25 16:55:12 -06:00
- NSDatePicker for date/time selection
2014-02-24 19:28:07 -06:00
- NSOutlineView for tree views
- NSSlider for Sliders
- NSStatusBar
- NSStepper for Spinners
2014-02-25 13:43:08 -06:00
- TODO does this require me to manually pair it with a single-line text entry field?
2014-02-24 19:28:07 -06:00
- NSTabView for Tabs
- NSTableView for Tables
- NSToolbar
- maybe:
- NSBrowser seems nice...???
- NSCollectionView for Icon View?
- NSColorWell is the color button
- NSOpenGLView for OpenGL; need to see how much OpenGL-specific stuff I need to expose
- NSRuleEditor/NSPredicateEditor look nice too but
2014-02-24 19:32:35 -06:00
- notes to self:
- groupbox is NSBox
- don't look at NSForm; though it arranges in the ideal form layout, it only allows single-line text entry fields as controls
- TODO:
- what does NSPathControl look like?
2014-02-25 13:26:32 -06:00
# Slider Capabilities
Capability | Windows | GTK+ | Cocoa
2014-02-25 13:29:22 -06:00
----- | ----- | ----- | -----
2014-02-25 13:43:08 -06:00
Data Type | int | float | float
2014-02-25 13:26:32 -06:00
Can Simulate ints? | yes | TODO | TODO
2014-02-25 13:43:08 -06:00
Mouse Step Snap | 1, fixed | something; likely 0.1 but not sure | yes (`setAllowsTickMarkValuesOnly:`); caveat: must specify an exact number of ticks (see below)
Keyboard Step Snap | configurable | configurable | TODO (same as mouse?)
2014-02-25 13:26:32 -06:00
Current Value Display | tooltip during drag | label, always visible | TODO
2014-02-25 13:43:08 -06:00
Tooltips? | TODO | TODO | TODO
Ticks | configurable display, configurable interval | TODO | configurable display; configurable COUNT (not interval!)
2014-02-25 13:26:32 -06:00
Can Catch Mouse Events to Snap? | I think this is how to do it | TODO | TODO
Preferred Size | given in UI guidelines | natural: 0x0; minimum: TODO | TODO
# Spinner Capabilities
Capability | Windows | GTK+ | Cocoa
2014-02-25 13:43:08 -06:00
----- | ----- | ----- | -----
Data Type | int | float | flaot
2014-02-25 13:26:32 -06:00
Can Simulate ints? | yes | yes | TODO
2014-02-25 13:43:08 -06:00
Mouse Step Snap | 1, fixed | configurable | configurable
Keyboard Step Snap | 1, fixed | configurable (uses same value as mouse) | TODO (same as mouse?)
2014-02-25 13:26:32 -06:00
Can Catch Events To Snap? | TODO | no need | TODO
Preferred Size | TODO | TODO | TODO