{"id":5180,"date":"2018-07-05T15:24:33","date_gmt":"2018-07-05T11:24:33","guid":{"rendered":"https:\/\/dhtmlx.com\/blog\/?p=5180"},"modified":"2023-05-05T12:47:49","modified_gmt":"2023-05-05T09:47:49","slug":"dhtmlxgantt-5-2","status":"publish","type":"post","link":"https:\/\/dhtmlx.com\/blog\/dhtmlxgantt-5-2\/","title":{"rendered":"dhtmlxGantt 5.2: Enhanced UX with Inline Editing and Split Tasks"},"content":{"rendered":"<p>Our <a href=\"https:\/\/dhtmlx.com\/docs\/products\/dhtmlxGantt\/\" target=\"_blank\">JavaScript gantt chart library<\/a> for project management rolls out its third update this year. <\/p>\n<p>Meet dhtmlxGantt 5.2 with a super user-friendly way for modifying your gantt chart&#8217;s content by means of inline editing and a brand-new task-management feature of task splitting as well as a number of other important updates and improvements!<\/p>\n<p><strong><a href=\"https:\/\/dhtmlx.com\/docs\/products\/dhtmlxGantt\/download.shtml\" target=\"_blank\">Download dhtmlxGantt 5.2 trial version for 30-day evaluation<\/a><\/strong><\/p>\n<h5>Inline Editing<\/h5>\n<p>In prior versions of dhtmlxGantt changing task characteristics was available solely through the edit form (lightbox). End users had to click on each task to call the lightbox in order to describe tasks and set their time period together with start and end dates and then close the lightbox to check the changes in the gantt chart and open it up again if some more corrections were needed. <\/p>\n<p>From now on editing tasks couldn&#8217;t be any simpler with inline editing. You can create tasks from scratch and make any corrections in the existing tasks right in the grid area due to special built-in editors. Create a task, type in its name, choose the start time and how long it will take to fulfill the task, define its priority and connect the task with other tasks in your project &#8211; and observe how your gantt chart changes before your very eyes. <\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/dhtmlx.com\/blog\/wp-content\/uploads\/2018\/06\/inline-editing.png\" alt=\"gantt inline editing\" width=\"704\" height=\"176\" class=\"aligncenter size-full wp-image-5187\" srcset=\"https:\/\/dhtmlx.com\/blog\/wp-content\/uploads\/2018\/06\/inline-editing.png 704w, https:\/\/dhtmlx.com\/blog\/wp-content\/uploads\/2018\/06\/inline-editing-300x75.png 300w\" sizes=\"auto, (max-width: 704px) 100vw, 704px\" \/><\/p>\n<p>Inline editing is easily enabled via columns configuration. Version 5.2 includes 5 types of predefined editors: text, number, date, select and predecessor editors.<\/p>\n<div class=\"codecolorer-container css default codecolorer-noborder\" style=\"overflow:auto;white-space:nowrap;\"><div class=\"css codecolorer\"><span class=\"kw3\">var<\/span> textEditor <span class=\"sy0\">=<\/span> <span class=\"br0\">&#123;<\/span>type<span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;text&quot;<\/span><span class=\"sy0\">,<\/span> map_to<span class=\"sy0\">:<\/span><span class=\"st0\">&quot;text&quot;<\/span><span class=\"br0\">&#125;<\/span><span class=\"sy0\">;<\/span><br \/>\n<br \/>\ngantt<span class=\"re1\">.config<\/span><span class=\"re1\">.columns<\/span> <span class=\"sy0\">=<\/span> <span class=\"br0\">&#91;<\/span><br \/>\n&nbsp; &nbsp; <span class=\"br0\">&#123;<\/span>name<span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;text&quot;<\/span><span class=\"sy0\">,<\/span> tree<span class=\"sy0\">:<\/span> true<span class=\"sy0\">,<\/span> <span class=\"kw1\">width<\/span><span class=\"sy0\">:<\/span> <span class=\"nu0\">200<\/span><span class=\"sy0\">,<\/span> editor<span class=\"sy0\">:<\/span> textEditor<span class=\"br0\">&#125;<\/span><span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp; ...<br \/>\n<span class=\"br0\">&#93;<\/span><span class=\"sy0\">;<\/span><\/div><\/div>\n<p>Additionally, you can create your own custom inline editor to make any other changes to tasks necessary for your project.<\/p>\n<p>For user convenience inline editing is available in two predefined modes:<\/p>\n<p><strong>1) Simple click-and-edit mode<\/strong><\/p>\n<p>It&#8217;s a simple and effective solution for inline editing. Editors are opened by a mouse click on a grid cell.<\/p>\n<p>Keyboard shortcuts:<br \/>\n<strong>Enter<\/strong> &#8211; to save the editor<br \/>\n<strong>Esc<\/strong> &#8211; to close without saving<br \/>\n<strong>Tab\/Shift-Tab<\/strong> &#8211; to start editing the next\/previous cell<\/p>\n<p><a href=\"https:\/\/docs.dhtmlx.com\/gantt\/samples\/07_grid\/11_inline_edit_basic.html\" target=\"_blank\">Check the sample ><\/a><\/p>\n<p><strong>2) Inline editing in conjunction with keyboard navigation<\/strong><\/p>\n<p>This is where new inline editing truly shines!<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/dhtmlx.com\/blog\/wp-content\/uploads\/2018\/07\/gantt-edit-fast.gif\" alt=\"gantt inline editor demo\" width=\"1346\" height=\"220\" class=\"aligncenter size-full wp-image-5257\" style=\"border: 1px solid #e5e5e5\" \/><a href=\"https:\/\/docs.dhtmlx.com\/gantt\/samples\/07_grid\/12_inline_edit_key_nav.html\" target=\"_blank\">Try it out in inline editing with keyboard navigation sample ><\/a><\/p>\n<p>You can easily create new tasks by entering the description into a placeholder row, navigate between cells using arrow keys and have the MS-Project like experience when editing automatically starts as soon as you start typing the text.<\/p>\n<p>Additionally, the keyboard navigation extension gives you a complete control over the project via customizable keyboard shortcuts, which bring the user experience to a completely new level.<\/p>\n<p>Main shortcuts:<\/p>\n<p><strong>Any letter or number<\/strong> &#8211; to open the editor in the current cell and enter the edit mode<br \/>\n<strong>Enter<\/strong> &#8211; to open\/close the editor<br \/>\n<strong>Spacebar<\/strong> &#8211; to open the editor<br \/>\n<strong>Arrows<\/strong> &#8211; to navigate between grid cells<br \/>\n<strong>Shift+Right Arrow<\/strong> &#8211; to indent a task<br \/>\n<strong>Shift+Left Arrow<\/strong> &#8211; to outdent a task<br \/>\n<strong>Shift+Up Arrow<\/strong> &#8211; to collapse a branch with tasks<br \/>\n<strong>Shift+Down Arrow<\/strong> &#8211; to expand a branch with tasks<\/p>\n<p>It&#8217;s also possible to implement a mouse\/keyboard mapping schema for inline editors.<\/p>\n<h5>Split Tasks [PRO Edition]<\/h5>\n<p>It may happen that one of the tasks in a project can&#8217;t be carried out in one go for some reason like vacation of the person in charge or other events, which result in the need to break a task into parts. Gantt chart version 5.2 comes out with a split task feature, which allows interrupting a task and dividing it into several linked parts.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/dhtmlx.com\/blog\/wp-content\/uploads\/2018\/06\/split-tasks-1.png\" alt=\"gantt split tasks\" width=\"1365\" height=\"256\" class=\"aligncenter size-full wp-image-5201\" srcset=\"https:\/\/dhtmlx.com\/blog\/wp-content\/uploads\/2018\/06\/split-tasks-1.png 1365w, https:\/\/dhtmlx.com\/blog\/wp-content\/uploads\/2018\/06\/split-tasks-1-300x56.png 300w, https:\/\/dhtmlx.com\/blog\/wp-content\/uploads\/2018\/06\/split-tasks-1-768x144.png 768w, https:\/\/dhtmlx.com\/blog\/wp-content\/uploads\/2018\/06\/split-tasks-1-1024x192.png 1024w\" sizes=\"auto, (max-width: 1365px) 100vw, 1365px\" \/><a href=\"https:\/\/docs.dhtmlx.com\/gantt\/samples\/04_customization\/11_split_task.html\" target=\"_blank\" style=\"display:block; text-align:center\">Check Split Tasks Sample ><\/a><\/p>\n<div class=\"codecolorer-container css default codecolorer-noborder\" style=\"overflow:auto;white-space:nowrap;\"><div class=\"css codecolorer\"><span class=\"br0\">&#123;<\/span>id<span class=\"sy0\">:<\/span> <span class=\"nu0\">1<\/span><span class=\"sy0\">,<\/span> <span class=\"kw2\">text<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;Task #2&quot;<\/span><span class=\"sy0\">,<\/span> start_date<span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;03-04-2018 00:00&quot;<\/span><span class=\"sy0\">,<\/span> type<span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;project&quot;<\/span><span class=\"sy0\">,<\/span> <br \/>\n&nbsp; &nbsp; render<span class=\"sy0\">:<\/span><span class=\"st0\">&quot;split&quot;<\/span><span class=\"sy0\">,<\/span> parent<span class=\"sy0\">:<\/span> <span class=\"nu0\">0<\/span><span class=\"br0\">&#125;<\/span><span class=\"sy0\">,<\/span> &nbsp;<br \/>\n<span class=\"br0\">&#123;<\/span>id<span class=\"sy0\">:<\/span> <span class=\"nu0\">2<\/span><span class=\"sy0\">,<\/span> <span class=\"kw2\">text<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;Task #2.1&quot;<\/span><span class=\"sy0\">,<\/span> start_date<span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;03-04-2018 00:00&quot;<\/span><span class=\"sy0\">,<\/span> duration<span class=\"sy0\">:<\/span> <span class=\"nu0\">1<\/span><span class=\"sy0\">,<\/span> <br \/>\n&nbsp; &nbsp; parent<span class=\"sy0\">:<\/span> <span class=\"nu0\">1<\/span><span class=\"br0\">&#125;<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"br0\">&#123;<\/span>id<span class=\"sy0\">:<\/span> <span class=\"nu0\">3<\/span><span class=\"sy0\">,<\/span> <span class=\"kw2\">text<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;Task #2.2&quot;<\/span><span class=\"sy0\">,<\/span> start_date<span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;05-04-2018 00:00&quot;<\/span><span class=\"sy0\">,<\/span> duration<span class=\"sy0\">:<\/span> <span class=\"nu0\">2<\/span><span class=\"sy0\">,<\/span> <br \/>\n&nbsp; &nbsp; parent<span class=\"sy0\">:<\/span> <span class=\"nu0\">1<\/span><span class=\"br0\">&#125;<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"br0\">&#123;<\/span>id<span class=\"sy0\">:<\/span> <span class=\"nu0\">4<\/span><span class=\"sy0\">,<\/span> <span class=\"kw2\">text<\/span><span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;Task #2.3&quot;<\/span><span class=\"sy0\">,<\/span> start_date<span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;08-04-2018 00:00&quot;<\/span><span class=\"sy0\">,<\/span> duration<span class=\"sy0\">:<\/span> <span class=\"nu0\">1<\/span><span class=\"sy0\">,<\/span> <br \/>\n&nbsp; &nbsp; parent<span class=\"sy0\">:<\/span> <span class=\"nu0\">1<\/span><span class=\"br0\">&#125;<\/span><\/div><\/div>\n<p>Internally, a split task is stored as a regular summary item with subtasks, while the display mode shows splits in the same row where an original item was. The public API allows switching between a split mode and tree mode of task display on the fly, which gives users more control over the project.<\/p>\n<h5>Checkbox and Radio Button Controls<\/h5>\n<p>Now you can also make use of two types of controls in a lightbox: <a href=\"https:\/\/docs.dhtmlx.com\/gantt\/desktop__checkbox.html\" target=\"_blank\">checkboxes<\/a> and <a href=\"https:\/\/docs.dhtmlx.com\/gantt\/desktop__radio.html\" target=\"_blank\">radio buttons<\/a>. They come in useful when you need to choose team members for assigning resources, switch between the tree and split modes for displaying tasks or define the priority of tasks in your project. <\/p>\n<h5>Styling Your Gantt<\/h5>\n<p>And the cherry on the cake is an extensive guide to <a href=\"https:\/\/docs.dhtmlx.com\/gantt\/desktop__styling_guide.html\" target=\"_blank\">working with styles in Gantt<\/a> recently updated and completed to cover all customization options. As you may know, our gantt chart is 100% customizable, every element can be tailored to your requirements with ease. And if our 7 predefined skins aren\u2019t enough, there\u2019s lots of room for your own creativity. Changing background colors of columns, rows and cells in the grid and scale areas, adding buttons, icons and other custom elements wherever needed, coloring text and tasks according to their progress, styling baselines and deadlines, tooltips, links and what not &#8211; all that is described in our guide.<\/p>\n<p>Besides the features mentioned above, dhtmlxGantt 5.2 brings about such enhancements as ability to <strong>set task types automatically [PRO Edition], Auto Scheduling performance improvement and updated Content Security Policy extension<\/strong>.<\/p>\n<p><em>Note that split tasks and ability to set task types automatically are available only in Professional Edition under <a href=\"https:\/\/dhtmlx.com\/docs\/products\/dhtmlxGantt\/#licensing\" target=\"_blank\">Commercial and Enterprise licenses<\/a>.<\/em><\/p>\n<p>To test all these features right now, <a href=\"https:\/\/dhtmlx.com\/docs\/products\/dhtmlxGantt\/download.shtml\" target=\"_blank\">download version 5.2 for 30-day evaluation<\/a>.<\/p>\n<p>Our current clients are welcome to get the released update in their <a href=\"https:\/\/dhtmlx.com\/clients\/\" target=\"_blank\">Client Area<\/a>.<\/p>\n<p>Enjoy the update and don&#8217;t hesitate to leave us your feedback in the comments section!<\/p>\n<h5>Related Resources:<\/h5>\n<ul>\n<li>Full <a href=\"https:\/\/docs.dhtmlx.com\/gantt\/whatsnew.html\" target=\"_blank\">&#8220;What&#8217;s New in V5.2&#8221;<\/a> list in our documentation<\/li>\n<li><a href=\"https:\/\/docs.dhtmlx.com\/gantt\/desktop__inline_editing.html\" target=\"_blank\">Inline editing guide<\/a><\/li>\n<li><a href=\"https:\/\/docs.dhtmlx.com\/gantt\/desktop__split_tasks.html\" target=\"_blank\">Split tasks guide<\/a><\/li>\n<li>Guide to <a href=\"https:\/\/docs.dhtmlx.com\/gantt\/desktop__styling_guide.html\" target=\"_blank\">working with styles in Gantt<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Our JavaScript gantt chart library for project management rolls out its third update this year. Meet dhtmlxGantt 5.2 with a super user-friendly way for modifying your gantt chart&#8217;s content &#8230;<\/p>\n","protected":false},"author":101012,"featured_media":5181,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[70,1,38],"tags":[33,20,4],"class_list":["post-5180","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-releases","category-uncategorized","category-visible","tag-all-posts","tag-gantt","tag-dhtmlx-updates"],"_links":{"self":[{"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/posts\/5180","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/users\/101012"}],"replies":[{"embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/comments?post=5180"}],"version-history":[{"count":1,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/posts\/5180\/revisions"}],"predecessor-version":[{"id":9484,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/posts\/5180\/revisions\/9484"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/media\/5181"}],"wp:attachment":[{"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/media?parent=5180"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/categories?post=5180"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/tags?post=5180"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}