chiark / gitweb /
cura.git
8 years agoFormat and organize priority selection of quickprint generator script.
nickthetait [Tue, 24 Nov 2015 17:09:06 +0000 (10:09 -0700)]
Format and organize priority selection of quickprint generator script.

8 years agoAdd a number of quickprint profiles
nickthetait [Mon, 23 Nov 2015 18:35:44 +0000 (11:35 -0700)]
Add a number of quickprint profiles

8 years agoCorrectly link quickprint profiles
nickthetait [Mon, 23 Nov 2015 18:09:00 +0000 (11:09 -0700)]
Correctly link quickprint profiles

8 years agoSet machine dimensions
nickthetait [Mon, 23 Nov 2015 18:07:07 +0000 (11:07 -0700)]
Set machine dimensions

8 years agoFix mangrove creation
nickthetait [Mon, 23 Nov 2015 17:57:23 +0000 (10:57 -0700)]
Fix mangrove creation

Putting things in the correct class is a good idea

8 years agoInitial fakeouts for Mangrove
nickthetait [Mon, 23 Nov 2015 17:39:08 +0000 (10:39 -0700)]
Initial fakeouts for Mangrove

Plenty of things are misplaced, broken and poorly implemented yet

8 years agoFix an exception in firmwareInstall dialog using a variable with wrong name
Youness Alaoui [Wed, 6 Jan 2016 19:07:54 +0000 (14:07 -0500)]
Fix an exception in firmwareInstall dialog using a variable with wrong name

8 years agoFix pyserial 3.0 compatibility issue
Youness Alaoui [Wed, 6 Jan 2016 19:06:05 +0000 (14:06 -0500)]
Fix pyserial 3.0 compatibility issue

The pyserial 3.0 changed the Serial parameter writeTimeout into
write_timeout, which breaks the code. They have a fix planned for
a soon-to-be-released version, but since it's a deprecated argument
anyway, it's best not to use in order to stay future-proof, and also
in case someone installs the 3.0 version itself.
This fixes T355

8 years agoAdd a confirmation dialog before removing machines
Youness Alaoui [Tue, 5 Jan 2016 16:02:31 +0000 (11:02 -0500)]
Add a confirmation dialog before removing machines

Fixes T346

8 years agoRemove 'this dialog is shown only once' from new version dialog
Youness Alaoui [Tue, 5 Jan 2016 15:28:35 +0000 (10:28 -0500)]
Remove 'this dialog is shown only once' from new version dialog

Fixes T350

8 years agoAdd -E argument to python interpreter on windows. lulzbot-18.03
Youness Alaoui [Fri, 11 Dec 2015 21:05:34 +0000 (16:05 -0500)]
Add -E argument to python interpreter on windows.

This will make sure python ignores PYTHONPATH and PYTHONHOME variables
that could be set if another application using python was installed
on the system such as CollabNet's subversion Edge.
See https://forum.lulzbot.com/viewtopic.php?f=8&t=3029&p=18892#p18892

8 years agoAdd a Log button to print window if using dev version
Youness Alaoui [Tue, 8 Dec 2015 20:30:03 +0000 (15:30 -0500)]
Add a Log button to print window if using dev version

8 years agoIncrement version number
nickthetait [Fri, 11 Dec 2015 21:05:32 +0000 (14:05 -0700)]
Increment version number

8 years agoKeep updating the temperature even in paused state
Youness Alaoui [Tue, 8 Dec 2015 20:08:55 +0000 (15:08 -0500)]
Keep updating the temperature even in paused state

8 years agoAdd a thread lock to the machineCom _sendCommand
Youness Alaoui [Tue, 8 Dec 2015 19:52:49 +0000 (14:52 -0500)]
Add a thread lock to the machineCom _sendCommand

This is the real cause for the serial WriteTimeout on Windows.
It looks like the win32 pyserial has a concurrency issue and is not
thread-safe, so when we receive commands from the UI (such as 'print',
'pause', 'resume', 'temp' or custom gcode), they get executed from the
main thread and if we receive an 'ok' from the firmware on the serial
monitor thread, it can cause the next command to be sent from the monitor
thread causing data to be written to serial from two threads, which causes
pyserial to just cancel both writes with a WriteTimeoutException.
Fixes T332

8 years agoKeep track of which commands are in the command queue of Marlin
Youness Alaoui [Tue, 8 Dec 2015 18:34:08 +0000 (13:34 -0500)]
Keep track of which commands are in the command queue of Marlin

This allows us to have better control on our timeouts and to know when
we can send a command or when we should just buffer it instead.
This can help us avoid having issues such as buffer overruns or
write timeout for windows.
Hopefully fixes T332

8 years agoOnly cooldown the number of configured extruders. Avoid an 'invalid extruder' error
Youness Alaoui [Tue, 8 Dec 2015 18:29:19 +0000 (13:29 -0500)]
Only cooldown the number of configured extruders. Avoid an 'invalid extruder' error

8 years agoDo not spam M105 when heating up extruder/bed finishes
Youness Alaoui [Tue, 8 Dec 2015 18:28:47 +0000 (13:28 -0500)]
Do not spam M105 when heating up extruder/bed finishes

8 years agoFix issue where a line could be sent twice due to race condition
Youness Alaoui [Mon, 7 Dec 2015 19:58:00 +0000 (14:58 -0500)]
Fix issue where a line could be sent twice due to race condition

8 years agoSpeed up getting operational by sending M105 as soon as Marlin is ready, not after...
Youness Alaoui [Mon, 7 Dec 2015 19:56:33 +0000 (14:56 -0500)]
Speed up getting operational by sending M105 as soon as Marlin is ready, not after 2s timeout

8 years agoFix the change toolhead command when cooling down
Youness Alaoui [Mon, 7 Dec 2015 19:55:42 +0000 (14:55 -0500)]
Fix the change toolhead command when cooling down

8 years agoMove this commit onto Mangrove branch
nickthetait [Mon, 30 Nov 2015 21:42:28 +0000 (14:42 -0700)]
Move this commit onto Mangrove branch

Revert "Add a wrapper around serial to monkey patch support for custom baudrates"

This reverts commit 97a4808bf2e4e133ee610405508f5abd6330fed4.

8 years agoAdd a wrapper around serial to monkey patch support for custom baudrates
Youness Alaoui [Mon, 30 Nov 2015 21:17:55 +0000 (16:17 -0500)]
Add a wrapper around serial to monkey patch support for custom baudrates

This fixes T316.
The monkey patch (https://en.wikipedia.org/wiki/Monkey_patch) replaces
the set_special_baudrate from 2.6 by the function from 2.7 which fixes
setting 250000 baudrate on linux.
See T316 for more details on the actual patch

8 years agoRemove python 3 depencies from fedora package and add python-power
Youness Alaoui [Mon, 30 Nov 2015 17:02:22 +0000 (12:02 -0500)]
Remove python 3 depencies from fedora package and add python-power

8 years agoIncrement version number lulzbot-18.02
nickthetait [Mon, 30 Nov 2015 16:36:15 +0000 (09:36 -0700)]
Increment version number

8 years agoMake the power module an optional dependency
Youness Alaoui [Thu, 26 Nov 2015 20:05:14 +0000 (15:05 -0500)]
Make the power module an optional dependency

If power module is not loadable, then all it will affect is the
warning label about the PC being on battery vs. AC power in the print
window.

8 years agoStep up major version number for release lulzbot-18.01
nickthetait [Thu, 19 Nov 2015 15:40:50 +0000 (08:40 -0700)]
Step up major version number for release

8 years agoPrevent infinite loop
nickthetait [Tue, 17 Nov 2015 19:52:32 +0000 (12:52 -0700)]
Prevent infinite loop

Changing width/height previously resulted in "RuntimeError: maximum recursion depth exceeded"s which gave very strange behavior.

8 years agoUse an alternative method to check for wxPython if distutils is not available
Youness Alaoui [Mon, 16 Nov 2015 22:51:10 +0000 (17:51 -0500)]
Use an alternative method to check for wxPython if distutils is not available

8 years agoFix capitalization of colorFabb
nickthetait [Fri, 13 Nov 2015 18:41:27 +0000 (11:41 -0700)]
Fix capitalization of colorFabb

8 years agoIncrement version number lulzbot-17.15
nickthetait [Thu, 12 Nov 2015 22:48:05 +0000 (15:48 -0700)]
Increment version number

8 years agoRemove \n from sendCommand
Youness Alaoui [Thu, 12 Nov 2015 20:27:24 +0000 (15:27 -0500)]
Remove \n from sendCommand

The sendCommand is already adding a \n, having the \n in the argument
made it send an empty line to the serialCommunication process
which would then interpret it as an unknown (empty) command, which
caused [''] to be printed in stderr.

Fixes T321

8 years agoMerge URL updates for quickprint, fixes T290
nickthetait [Thu, 12 Nov 2015 18:16:53 +0000 (11:16 -0700)]
Merge URL updates for quickprint, fixes T290

8 years agoUpdate URLs for new website going live
nickthetait [Thu, 12 Nov 2015 16:29:05 +0000 (09:29 -0700)]
Update URLs for new website going live

8 years agoUpdate quickprint profiles
nickthetait [Wed, 11 Nov 2015 22:07:35 +0000 (15:07 -0700)]
Update quickprint profiles

8 years agoMove print progress % into print window title bar
nickthetait [Wed, 11 Nov 2015 19:48:56 +0000 (12:48 -0700)]
Move print progress % into print window title bar

8 years agoAdd URL link to source code in about page
nickthetait [Tue, 10 Nov 2015 17:55:38 +0000 (10:55 -0700)]
Add URL link to source code in about page

8 years agoUpdate URL structure
nickthetait [Tue, 10 Nov 2015 17:51:45 +0000 (10:51 -0700)]
Update URL structure

8 years agoSet referer field
nickthetait [Tue, 10 Nov 2015 17:18:24 +0000 (10:18 -0700)]
Set referer field

8 years agoIncrement version number lulzbot-17.14
nickthetait [Tue, 10 Nov 2015 16:49:37 +0000 (09:49 -0700)]
Increment version number

8 years agoRemove extra filament push on resume
nickthetait [Tue, 10 Nov 2015 16:31:17 +0000 (09:31 -0700)]
Remove extra filament push on resume

8 years agoSmall update to comments
nickthetait [Tue, 10 Nov 2015 16:13:43 +0000 (09:13 -0700)]
Small update to comments

8 years agoAttempt to improve nozzle priming on resume
nickthetait [Tue, 10 Nov 2015 16:07:14 +0000 (09:07 -0700)]
Attempt to improve nozzle priming on resume

Wastes a little filament, seems neccesary for very narrow/small prints

8 years agoCombine retract and head lift into same step when pausing
nickthetait [Tue, 10 Nov 2015 15:23:40 +0000 (08:23 -0700)]
Combine retract and head lift into same step when pausing

8 years agoAdd a park toolhead on Pause feature
Youness Alaoui [Fri, 6 Nov 2015 19:50:19 +0000 (14:50 -0500)]
Add a park toolhead on Pause feature

This will add a park toolhead feature when Pause is clicked.
The park position is at 10 mm from the x/y limits and 10mm above the
current Z unless we're 10mm away from the max height of the printer.
On resume, the E position is reset, last feedrate value is restored
and the toolhead is primed for new filament before being moved back
into position.

The print window will now also display a "Please wait" for 10 seconds
while disabling the pause/resume button to avoid excessive commands
being sent while the printer is still busy with a move.
This also helps the user realize that pausing is not an instantenous feature.
The serial connection has been fixed to send queued commands when in paused state.
Feature was taken in part from the pauseAtZ plugin.
Only E movements are now allowd in paused state.

Hopefully fixes T220 and makes everyone happy

8 years agochange wx 2.8 to 3.0 in README file
Youness Alaoui [Fri, 6 Nov 2015 19:19:43 +0000 (14:19 -0500)]
change wx 2.8 to 3.0 in README file

8 years agofor Z change, also accept negative Z values
Youness Alaoui [Fri, 6 Nov 2015 19:18:43 +0000 (14:18 -0500)]
for Z change, also accept negative Z values

8 years agoDo not flood terminal with progress numbers when doing a 'split object into parts'
Youness Alaoui [Fri, 6 Nov 2015 16:37:13 +0000 (11:37 -0500)]
Do not flood terminal with progress numbers when doing a 'split object into parts'

Noticed in P3

8 years agoCleanup print status label text and clear content once done
Youness Alaoui [Fri, 6 Nov 2015 16:36:37 +0000 (11:36 -0500)]
Cleanup print status label text and clear content once done

8 years agoRevert "Disable pause feature"
nickthetait [Mon, 12 Oct 2015 21:11:23 +0000 (15:11 -0600)]
Revert "Disable pause feature"

This reverts commit 5544eba5ad653b11169cb60eefb64f590a884975.

8 years agoShorten print progress percentage to one decimal place
nickthetait [Fri, 6 Nov 2015 15:31:16 +0000 (08:31 -0700)]
Shorten print progress percentage to one decimal place

8 years agoAdd a print progress status text to the print window and show current Z
Youness Alaoui [Thu, 5 Nov 2015 20:34:14 +0000 (15:34 -0500)]
Add a print progress status text to the print window and show current Z

This shows current percentage, currnet line and Z in the print window.

8 years agoIncrement version number lulzbot-17.13
nickthetait [Thu, 5 Nov 2015 20:02:50 +0000 (13:02 -0700)]
Increment version number

8 years agoRemove wxgtk2.8 as a dependency and require 3.0 only
nickthetait [Thu, 5 Nov 2015 20:00:15 +0000 (13:00 -0700)]
Remove wxgtk2.8 as a dependency and require 3.0 only

Fixes T314

8 years agoIncrement version number lulzbot-17.12
nickthetait [Wed, 4 Nov 2015 18:24:16 +0000 (11:24 -0700)]
Increment version number

8 years agoUpdate firmware flashing description text
nickthetait [Tue, 3 Nov 2015 17:14:46 +0000 (10:14 -0700)]
Update firmware flashing description text

8 years agoAdd 5 new Colorfabb profiles into quickprint
nickthetait [Wed, 28 Oct 2015 16:16:13 +0000 (10:16 -0600)]
Add 5 new Colorfabb profiles into quickprint

8 years agoClear existing quickprint folders before recreating them
nickthetait [Wed, 28 Oct 2015 17:34:29 +0000 (11:34 -0600)]
Clear existing quickprint folders before recreating them

8 years agoRemove unnecessary code
Youness Alaoui [Thu, 29 Oct 2015 18:02:11 +0000 (14:02 -0400)]
Remove unnecessary code

8 years agoCheck wxPython version and require a minimum version of 3.0
Youness Alaoui [Thu, 29 Oct 2015 18:01:10 +0000 (14:01 -0400)]
Check wxPython version and require a minimum version of 3.0

Fixes T270 and a whole bunch of other bugs such as T310 for example

8 years agoCatch errors when print speed is set to out of range numbers
nickthetait [Thu, 29 Oct 2015 16:13:45 +0000 (10:13 -0600)]
Catch errors when print speed is set to out of range numbers

Fixes T309

8 years agoBetter fix for T35
Youness Alaoui [Wed, 28 Oct 2015 18:33:07 +0000 (14:33 -0400)]
Better fix for T35

Reverts previous commit and fixes it properly. The issue wasn't that
wx would send a setting change event after the control was destroyed,
but rather, it would send a setting change event on the list box just
before the destroy event.
The issue was that OnSettingChange would reset the config for all of
the controls, instead of only for the control that changed, and so it
was trying to access already destroyed controls.

8 years agoCatch control destruction in the plugin panel
Youness Alaoui [Wed, 28 Oct 2015 18:23:52 +0000 (14:23 -0400)]
Catch control destruction in the plugin panel

Reverts f0e7a7b89c850f4f7dad9ffa0bd8aa9df314e005 and replaces it
with a different fix.
Fixes T35 again, but differently.

8 years agoIncrement version number lulzbot-17.11
nickthetait [Wed, 28 Oct 2015 13:14:43 +0000 (07:14 -0600)]
Increment version number

8 years agoFix for T35
nickthetait [Tue, 27 Oct 2015 21:05:23 +0000 (15:05 -0600)]
Fix for T35

8 years agoAuto-crop notification message in case it's longer than the window
Youness Alaoui [Tue, 27 Oct 2015 20:59:49 +0000 (16:59 -0400)]
Auto-crop notification message in case it's longer than the window

If the scene view is smaller than required for the notification message
we must crop the text and add elipsis to it so it fits, otherwise,
the message will simply disappear.
Fixes T254

8 years agoBasic arcanist configuration
nickthetait [Mon, 26 Oct 2015 20:39:24 +0000 (14:39 -0600)]
Basic arcanist configuration

8 years agoDo not show a dialog inside a Modal dialog
Youness Alaoui [Mon, 26 Oct 2015 19:32:08 +0000 (15:32 -0400)]
Do not show a dialog inside a Modal dialog

This fixes T253. Showing a dialog (message box) while the main thread
is locked in a ShowModal will cause X errors and a python crash.
So we must delay the dialog until the modal dialog is done.

8 years agoRemove content of PATH variable on windows to prevent dll conflicts
Youness Alaoui [Mon, 26 Oct 2015 19:16:19 +0000 (15:16 -0400)]
Remove content of PATH variable on windows to prevent dll conflicts

Fixes T224

8 years agoFix object selection on windows 8.
Youness Alaoui [Mon, 26 Oct 2015 18:21:43 +0000 (14:21 -0400)]
Fix object selection on windows 8.

The issue is that the GL_UNSIGNED_INT_8_8_8_8 format is apparently
not supported on some version of windows and leads to a glReadPixels
that returns 0 everywhere which selects the first object only wherever
you click.
The issue with using GL_UNSIGNED_INT is that the result is also different
from linux and windows, for some reason the value on window is mangled
and not all bytes have the correct value. So we are forced to use
GL_UNSIGNED_BYTE and convert the byte into an int to get the position
of the object selected, since GL_UNSIGNED_BYTE seems to have the same
behavior across platforms.

Fixes T24

8 years agoWxpython 2.8 tweaks for T289
nickthetait [Fri, 23 Oct 2015 17:36:35 +0000 (11:36 -0600)]
Wxpython 2.8 tweaks for T289

8 years agogitignore non-checked-in debian control files
nickthetait [Fri, 23 Oct 2015 16:29:54 +0000 (10:29 -0600)]
gitignore non-checked-in debian control files

8 years agoSave the material type so the right value is restored when opening cura
Youness Alaoui [Fri, 23 Oct 2015 16:25:36 +0000 (12:25 -0400)]
Save the material type so the right value is restored when opening cura

Fixes T289

8 years agoREADME Formatting tweaks
nickthetait [Wed, 21 Oct 2015 19:54:14 +0000 (13:54 -0600)]
README Formatting tweaks

8 years agoUpdate README
nickthetait [Wed, 21 Oct 2015 18:01:15 +0000 (12:01 -0600)]
Update README

Add steps to run directly from source
Include a missing system dependency
Update theme to work on phabricator
Reorder & organize

8 years agoDo not execute a statement without catching the return value in global namespace
Youness Alaoui [Wed, 21 Oct 2015 18:26:33 +0000 (14:26 -0400)]
Do not execute a statement without catching the return value in global namespace

The issue is that any statement without a variable to catch the
returned value will cause that value to be stored in the _ variable
and when that happens in the global namespace, it will cause issues
such as the gettext _ variable being overwritten

8 years agoCleanup for T292
nickthetait [Thu, 15 Oct 2015 17:08:06 +0000 (11:08 -0600)]
Cleanup for T292

8 years agoSlow extrusion speed for flexy toolheads
nickthetait [Thu, 15 Oct 2015 16:40:46 +0000 (10:40 -0600)]
Slow extrusion speed for flexy toolheads

Fixes T292
Auditors: kakaroto

8 years agoImprove overhang text description
nickthetait [Mon, 5 Oct 2015 18:10:55 +0000 (12:10 -0600)]
Improve overhang text description

8 years agoStep up minor version number for release lulzbot-17.10
nickthetait [Fri, 18 Sep 2015 20:40:54 +0000 (14:40 -0600)]
Step up minor version number for release

8 years agoLayout firmware dialog after label is updated.
Youness Alaoui [Fri, 18 Sep 2015 18:17:20 +0000 (14:17 -0400)]
Layout firmware dialog after label is updated.

Fixes T188

8 years agoFinally fix newVersionDialog size issue on wxpython 3.0.1
Youness Alaoui [Fri, 18 Sep 2015 18:05:18 +0000 (14:05 -0400)]
Finally fix newVersionDialog size issue on wxpython 3.0.1

This fixes T177

8 years agoIncrement minor version lulzbot-17.05
nickthetait [Fri, 18 Sep 2015 15:30:40 +0000 (09:30 -0600)]
Increment minor version

8 years agoIncorporate updated nylon profiles
nickthetait [Fri, 18 Sep 2015 15:28:09 +0000 (09:28 -0600)]
Incorporate updated nylon profiles

8 years agomore efficient comma striping from title
Youness Alaoui [Thu, 17 Sep 2015 21:01:44 +0000 (17:01 -0400)]
more efficient comma striping from title

8 years agoRemove extra comma at the end of the print window title when in error state
Youness Alaoui [Thu, 17 Sep 2015 20:57:30 +0000 (16:57 -0400)]
Remove extra comma at the end of the print window title when in error state

The \n is replaced by , for the title, but if there is no temperature/bed
values being printed, then we get an extra comma at the end.
Fixes T245

8 years agoFix PLA-PLA profiles name and set it to 'PLA & PLA'
Youness Alaoui [Thu, 17 Sep 2015 19:06:21 +0000 (15:06 -0400)]
Fix PLA-PLA profiles name and set it to 'PLA & PLA'

Fixes T244

8 years agoChange mind on the beta version number lulzbot-17.04
nickthetait [Mon, 14 Sep 2015 20:41:37 +0000 (14:41 -0600)]
Change mind on the beta version number

8 years agoStep up minor version number for Beta
nickthetait [Mon, 14 Sep 2015 20:27:21 +0000 (14:27 -0600)]
Step up minor version number for Beta

8 years agoFix the '&' sign not appearing in wizard
Youness Alaoui [Mon, 14 Sep 2015 20:07:09 +0000 (16:07 -0400)]
Fix the '&' sign not appearing in wizard

8 years agodo not use EVT_WIZARD_PAGE_SHOWN since it's missing in 2.8
Youness Alaoui [Mon, 14 Sep 2015 20:06:56 +0000 (16:06 -0400)]
do not use EVT_WIZARD_PAGE_SHOWN since it's missing in 2.8

8 years agoUpdate text labels for firmware flashing
nickthetait [Mon, 14 Sep 2015 18:30:15 +0000 (12:30 -0600)]
Update text labels for firmware flashing

Last portion to fix T222

8 years agoWorkaround for ampersand not rendering with wxpython 2.8 T_T
nickthetait [Mon, 14 Sep 2015 18:06:33 +0000 (12:06 -0600)]
Workaround for ampersand not rendering with wxpython 2.8 T_T

8 years agoFix wxpython 2.8 bug for quickprint selection
Youness Alaoui [Mon, 14 Sep 2015 16:49:49 +0000 (12:49 -0400)]
Fix wxpython 2.8 bug for quickprint selection

8 years agoUpdate config wizard steps to reflect schema in M3
Youness Alaoui [Mon, 14 Sep 2015 16:37:29 +0000 (12:37 -0400)]
Update config wizard steps to reflect schema in M3

8 years agoOne profile lablel was missing a closing parenthesis
nickthetait [Mon, 14 Sep 2015 15:10:55 +0000 (09:10 -0600)]
One profile lablel was missing a closing parenthesis

8 years agoRemove laywood profile for just 0.35mm nozzle size
nickthetait [Mon, 14 Sep 2015 13:08:51 +0000 (07:08 -0600)]
Remove laywood profile for just 0.35mm nozzle size

Large wood particles in this filament are known to cause clogging issues for a nozzle this small. Prints typically fail after an hour or so.

8 years agoRevert "Removed splash screen"
Youness Alaoui [Fri, 11 Sep 2015 20:45:55 +0000 (16:45 -0400)]
Revert "Removed splash screen"

This reverts commit a9071456ab12e31eeec6b8e41dabf323774ca969.
Fixes T229 #BringBackSplashScreen

8 years agoFix layout issue on windows with quickprint
Youness Alaoui [Fri, 11 Sep 2015 20:44:08 +0000 (16:44 -0400)]
Fix layout issue on windows with quickprint

8 years agofix ugliness of radio/checkbuttons in simple mode for wxpython 2.8
Youness Alaoui [Fri, 11 Sep 2015 20:41:08 +0000 (16:41 -0400)]
fix ugliness of radio/checkbuttons in simple mode for wxpython 2.8

On wxpython 2.8, the radio/check buttons have 13 pixels in height
which makes them glued together and very ugly, adding a border to the
panel fixes it but it becomes ugly on wxpython 3.0 which uses 25 pixels
height widgets.