Commit Graph

324 Commits

Author SHA1 Message Date
Jonathan Frederic
d694666e66 A lot of bug fixes...
Related to 1-to-1 changes
2014-01-16 10:57:18 +00:00
Jonathan Frederic
047a90538f 1-to-1 widget / view mapping 2014-01-16 10:57:18 +00:00
Jonathan Frederic
c1c7bb7563 Everyone uses one model 2014-01-16 10:57:18 +00:00
Jonathan Frederic
b16171ac76 Added sync=True to all view name attrs 2014-01-16 10:57:18 +00:00
Jonathan Frederic
cfe8a07337 Added sync= attr to DOMWidget 2014-01-16 10:57:18 +00:00
Jonathan Frederic
b4a83b6044 sync=True isntead of a keys list 2014-01-16 10:57:18 +00:00
Jonathan Frederic
00650fd64a Dev meeting Jan 2014, widget review day 2 2014-01-16 10:57:18 +00:00
Jonathan Frederic
d3ffd25107 Dev meeting widget review day 1 2014-01-16 10:57:18 +00:00
Paul Ivanov
897d51a567 fix typos 2014-01-16 10:57:17 +00:00
Paul Ivanov
95e99c0c61 remove unused imports 2014-01-16 10:57:17 +00:00
Jonathan Frederic
d103c682c5 Many checks off the todo list, test fixes 2014-01-16 10:57:17 +00:00
Jonathan Frederic
0f715170b3 Add a comment that explains the notion of the default element
to be styled in set_css's' doc string.
2014-01-16 10:57:17 +00:00
Jonathan Frederic
be268dcf98 Implement a context manager as a property locking mechanism in Widget. 2014-01-16 10:57:17 +00:00
Jonathan Frederic
70c6a295d0 Finished renaming Multicontainer to SelectionContainer 2014-01-16 10:57:17 +00:00
Jonathan Frederic
a528610e07 renamed: ../static/notebook/js/widgets/widget_multicontainer.js -> ../static/notebook/js/widgets/widget_selectioncontainer.js
renamed:    widget_multicontainer.py -> widget_selectioncontainer.py
2014-01-16 10:57:17 +00:00
Jonathan Frederic
c62b496b0e s/image_format/format 2014-01-16 10:57:17 +00:00
Jonathan Frederic
261e92de74 re-order handle custom msg and handle recieve state 2014-01-16 10:57:15 +00:00
Jonathan Frederic
15dabce113 send_state only once for dict signature of set_css 2014-01-16 10:57:15 +00:00
Jonathan Frederic
6c11760a89 Fixed comments for optional kwargs so they are redundant. 2014-01-16 10:57:15 +00:00
Jonathan Frederic
670f4881ec remove 3rd callback type from on_displayed 2014-01-16 10:57:15 +00:00
Jonathan Frederic
7e6c8e4f1d Remove view_name from display 2014-01-16 10:57:15 +00:00
Jonathan Frederic
463bcf85ee Fixed _send so it can open a comm if needed.
It no longer returns anything.
2014-01-16 10:57:14 +00:00
Jonathan Frederic
85b5adff58 Remove first three lines of repr widgets 2014-01-16 10:57:14 +00:00
Jonathan Frederic
4e19dd7933 s/_handle_widget_constructed/_call_widget_constructed 2014-01-16 10:57:14 +00:00
Jonathan Frederic
39aaf7bf88 s/default_view_name/view_name 2014-01-16 10:57:14 +00:00
Jonathan Frederic
21a14e11a4 s/Widget/DOMWidget s/BaseWidget/Widget 2014-01-16 10:57:14 +00:00
Jonathan Frederic
696a6e4c28 add/remove_class now can accept a list of classes 2014-01-16 10:57:14 +00:00
Jonathan Frederic
2600913067 Removed ViewWidget 2014-01-16 10:57:14 +00:00
Jason Grout
a0b2cc40b8 Make widget keys have more explicit inheritance 2014-01-16 10:57:13 +00:00
Jason Grout
ce98452180 Get rid of keys magic; make the keys very explicit 2014-01-16 10:57:13 +00:00
Jason Grout
f0a4b9ea30 Make the widget keys property traverse the superclasses and accumulate the _keys attributes.
This caches the result, overwriting the property.
2014-01-16 10:57:13 +00:00
Jonathan Frederic
7c3b21d239 Fixed typo in model_id property 2014-01-16 10:57:13 +00:00
Jonathan Frederic
57f3057ca5 Moved view widget into widget.py 2014-01-16 10:57:12 +00:00
Jonathan Frederic
46e88dc205 Fixed indent of line 450
... caused Travis to get mad
2014-01-16 10:57:12 +00:00
Jonathan Frederic
a2235efbea Further indentation cleanup 2014-01-16 10:57:12 +00:00
Jonathan Frederic
35a536f3b8 Re-decoupled comm_id from widget models 2014-01-16 10:57:12 +00:00
Jonathan Frederic
1b4e2ad6fe Added ViewWidget 2014-01-16 10:57:12 +00:00
Jason Grout
b41f77e635 Fix the python side of the add/remove class functions to send custom messages 2014-01-16 10:57:11 +00:00
Jason Grout
747b219771 Move some Widget class references to BaseWidget 2014-01-16 10:57:11 +00:00
Jason Grout
07ffef8392 Make sure containers transmit the children; take care of case where children is possibly empty. 2014-01-16 10:57:11 +00:00
Jason Grout
18beaff887 Remove unused code and debugging statements 2014-01-16 10:57:10 +00:00
Jason Grout
72f7d2fe09 Remove the automatic _children_attr and _children_lists_attr.
When serializing, any Widget object is encoded as its comm_id.  The view should know how to deal with the attribute, and should know that the attribute is a comm_id.
2014-01-16 10:57:10 +00:00
Jason Grout
ad1e23bfc2 Intermediate changes to javascript side of backbone widgets 2014-01-16 10:57:10 +00:00
Jason Grout
518cb4c647 Separate the display from the models on the python side, creating a BaseWidget class.
Conflicts:
	IPython/html/widgets/widget.py
2014-01-16 10:57:10 +00:00
Jonathan Frederic
2df05bc5b8 Display handler now supports full kwargs 2014-01-16 10:57:10 +00:00
Jonathan Frederic
996d133710 Remove redundent _handle_close method 2014-01-16 10:57:09 +00:00
Jonathan Frederic
857ae831fb Decoupled Python Widget from Comm
Fixed conflicts:
	IPython/html/widgets/widget.py
2014-01-16 10:57:09 +00:00
Jonathan Frederic
f2fefe20ff Added event for widget construction 2014-01-16 10:57:09 +00:00
Jonathan Frederic
ea27ae599b Added parent parameter to on_display callback 2014-01-16 10:57:09 +00:00
Jonathan Frederic
1b02e8f607 Add ImageWidget 2014-01-16 10:57:07 +00:00
Jonathan Frederic
8e1c52382c Added method property to messages from the front-end 2014-01-16 10:57:06 +00:00
Jonathan Frederic
0f34affc35 Dont send add and remove class calls if no comm exists 2014-01-16 10:57:05 +00:00
Jonathan Frederic
4e1e091648 Added ModalView 2014-01-16 10:57:04 +00:00
Jonathan Frederic
4333c84907 Fix scroll_to_bottom 2014-01-16 10:57:04 +00:00
Jonathan Frederic
6aac36ee13 Remove on_click, doesn't apply 2014-01-16 10:57:04 +00:00
Jonathan Frederic
4f663d896d Made scroll to bottom use msgs
allow multiple msg handlers
added send to view to automatically hookup callbacks
changed send signature to optionally accept a cell to connect callbacks
2014-01-16 10:57:04 +00:00
Jonathan Frederic
cc96589afc Changed on_submit to use custom messages instead of stateful communcation 2014-01-16 10:57:03 +00:00
Jonathan Frederic
10002f5a81 Changed button to use custom messages instead of state to communicate events. 2014-01-16 10:57:03 +00:00
Jonathan Frederic
c299022cc7 Changed add_class and remove_class to use messages instead of stateful communication 2014-01-16 10:57:03 +00:00
Jonathan Frederic
d795654251 Add scroll_to_bottom method for TextAreaView (StringWidget). 2014-01-16 10:57:03 +00:00
Jonathan Frederic
9019b639d1 Fixed a bug that didn't allow callbacks to set a property
on the widget that triggered the callback.
2014-01-16 10:57:03 +00:00
Jonathan Frederic
0d7428a903 Added TextBox submit event 2014-01-16 10:57:03 +00:00
Jonathan Frederic
c0ff518107 Added support for custom widget msgs 2014-01-16 10:57:02 +00:00
Jonathan Frederic
742ad511f6 Added check on widget close to make sure comm isn't already none. 2014-01-16 10:57:00 +00:00
Jonathan Frederic
1f39592bb1 Added missing types import 2014-01-16 10:56:59 +00:00
Jonathan Frederic
8502b2c182 Remove init_widget_js, use require.js for everything
Updated examples
Fixed bug with message throttling
2014-01-16 10:56:59 +00:00
Jonathan Frederic
08b1d08fb6 Fix: added inspect import to widget.py 2014-01-16 10:56:59 +00:00
Jonathan Frederic
3390f64dc2 Added flex properties to container.
Also replaced underscores in flex align properties with dashes.
2014-01-16 10:56:58 +00:00
Jonathan Frederic
2ba2d42e84 Added flexible box model align properties. 2014-01-16 10:56:58 +00:00
Jonathan Frederic
a67f2ec472 Fixed doc string comments, removed extra space 2014-01-16 10:56:58 +00:00
Jonathan Frederic
8279db0eb0 Fixed widget button onclick register so it only will ever register a callback once. 2014-01-16 10:56:58 +00:00
Jonathan Frederic
35fc3af84f Added on_display callback 2014-01-16 10:56:58 +00:00
Jonathan Frederic
12b02b3e49 Use baseProjectUrl for widget import path 2014-01-16 10:56:04 +00:00
Jonathan Frederic
6834224332 Updated set_css so it can handle a dictionary of keys and values. 2014-01-16 10:56:04 +00:00
Jonathan Frederic
20c97e0f87 Use relative paths for widget js jquery imports 2014-01-16 10:56:04 +00:00
Jonathan Frederic
6110e1c307 Updated ButtonWidget onclick description 2014-01-16 10:56:04 +00:00
Jonathan Frederic
e84e1d2df6 Fixed button on_click handler so it's initiated on instanciation 2014-01-16 10:56:03 +00:00
Jonathan Frederic
8fba5d2f07 Added add_class and remove_class methods. 2014-01-16 10:56:03 +00:00
Jonathan Frederic
048ba656d4 Remove text repr of js includes. 2014-01-16 10:56:03 +00:00
Jonathan Frederic
810ea87e5b Added visible property to all widgets 2014-01-16 10:56:03 +00:00
Jonathan Frederic
82dd891483 Allow parent to be set after construction...
But still must be set before display call
2014-01-16 10:56:03 +00:00
Jonathan Frederic
e9fe606ba6 More relative imports, Travis w/ Py3.3 2014-01-16 10:56:03 +00:00
Jonathan Frederic
2c3d80c275 Added selected_index property to TabView 2014-01-16 10:56:03 +00:00
Jonathan Frederic
8687ad881a Fixed widget imports for Python3 2014-01-16 10:56:02 +00:00
Jonathan Frederic
f2d77f3b78 Added labels to basic widgets 2014-01-16 10:56:02 +00:00
Jonathan Frederic
9b891d4018 s/TextareaView/TextAreaView & s/TextboxView/TextBoxView 2014-01-16 10:56:02 +00:00
Jonathan Frederic
dfd4e3269e Added TabView to multicontainer 2014-01-16 10:56:02 +00:00
Jonathan Frederic
6dd1bce589 Added ability to title multicontainer pages before multicontainer display() 2014-01-16 10:56:01 +00:00
Jonathan Frederic
510c97679d Added ability to set container page titles for widget multicontainer 2014-01-16 10:56:01 +00:00
Jonathan Frederic
a2294581ea Actual absolute paths... 2014-01-16 10:56:01 +00:00
Jonathan Frederic
5871471c1f Absolute paths 2014-01-16 10:56:01 +00:00
Jonathan Frederic
692c8f29a6 Added multicontainer widget 2014-01-16 10:56:01 +00:00
Jonathan Frederic
f422bb9be2 Cleaned up Python widget code. 2014-01-16 10:56:01 +00:00
Jonathan Frederic
837ef44256 LOTS OF WIDGET CHANGES
Moved model-like code out of manager.
Added parent/child API.
Throttling now occurs on a model by model level.
View/cell association is fixed for the most part, but there is still
     one assumption being made in handle_com_msg.
2014-01-16 10:56:01 +00:00
Jonathan Frederic
c692d2aaa8 Made registered model name look like other model names 2014-01-16 10:56:00 +00:00
Jonathan Frederic
76a7a25c12 Fixed stale reference to base.py -> widget.py 2014-01-16 10:56:00 +00:00
Jonathan Frederic
0d25759d53 Add state packet delta compression. 2014-01-16 10:56:00 +00:00
Jonathan Frederic
d72262e071 Fixed button widget click event handler/ 2014-01-16 10:56:00 +00:00
Jonathan Frederic
c20859a5c9 Add button widget 2014-01-16 10:56:00 +00:00
Jonathan Frederic
e619bdf313 Flex box system improvements
Now to set a container to vbox or hbox you call .vbox() or .hbox()
2014-01-16 10:56:00 +00:00
Jonathan Frederic
2ad57f6f9d Attempt 1, HBox and VBox implementation. 2014-01-16 10:56:00 +00:00
Jonathan Frederic
65a6000919 Renamed widget python classes to avoid name stomping 2014-01-16 10:56:00 +00:00
Jonathan Frederic
f3a3e7c9cb Added int widget 2014-01-16 10:56:00 +00:00
Jonathan Frederic
26f31184e7 Added float widget 2014-01-16 10:56:00 +00:00
Jonathan Frederic
55a6e00788 Added missing import reference for bool widget 2014-01-16 10:56:00 +00:00
Jonathan Frederic
03a832753e Changed js loading,
Use require.js in js files
Assume 1 on 1 mapping of py file names to js file names
2014-01-16 10:55:59 +00:00
Jonathan Frederic
f037f2bd42 Cleaned up python widget classes 2014-01-16 10:55:59 +00:00
Jonathan Frederic
7490cab0c1 Added boolean widget 2014-01-16 10:55:59 +00:00
Jonathan Frederic
990303f3eb Removed require.js scheme since it forces async event driven model,
this model does not work with the comm/widget communication model.
We need to be able to load the dependencies before we send the
show() message to the widget manager.  Otherwise a race condition
will exist where the widget manager may recieve the show message
before the dependencies have been loaded (happened almost every time).
2014-01-16 10:55:59 +00:00
Jonathan Frederic
4b55ef61b0 Added system that allows js to be required by widgets. 2014-01-16 10:55:59 +00:00
Jonathan Frederic
bc0363039e Removed funky javascript loading mechanism
NOTE: UNTIL THE NEW JS LOADING MECHANISM IS IN PLACE, THIS BREAKS THE SYSTEM
2014-01-16 10:55:59 +00:00
Jonathan Frederic
f939713d14 Updated imports to reflect class move 2014-01-16 10:55:59 +00:00
Jonathan Frederic
fffaba9a7b Moved widget js into static 2014-01-16 10:55:58 +00:00
Jonathan Frederic
cb7eb8354f Fixed bug where properties couldn't be set on model till model was shown 2014-01-16 10:55:58 +00:00
Jonathan Frederic
dde9018ab3 Register init_widget_js
and remove cls parameter
2014-01-16 10:55:58 +00:00
Jonathan Frederic
119104f2e8 Register new widgets in IPython.html.widgets namespace 2014-01-16 10:55:58 +00:00
Jonathan Frederic
a0d03e30f0 Add string widget 2014-01-16 10:55:58 +00:00
Jonathan Frederic
1b6062beee Add selection widget 2014-01-16 10:55:58 +00:00
Jonathan Frederic
c9a44b86cb Add container widget 2014-01-16 10:55:58 +00:00
Jonathan Frederic
4dc1155c7e Handle widget hide/show logic
also only create a widget manager once
2014-01-16 10:55:58 +00:00
Jonathan Frederic
3a16f603b9 Updates to widget.py
Added global init js function
Moved init comm logic to show function
2014-01-16 10:55:57 +00:00
Jonathan Frederic
f32f450d0f Moved widget.js into widget code directory 2014-01-16 10:55:57 +00:00
Jonathan Frederic
22dcf3aa68 Basic display logic
s/show/_repr_...
Added code to display Javascript in frontend.
2014-01-16 10:55:57 +00:00
Jonathan Frederic
918d57050a Added widget.py 2014-01-16 10:55:57 +00:00