# Editing Timeline (https://yapl.app/en/docs/user-guides/gantt/editing-timeline)

# Editing Timeline

YAPL's Gantt chart allows you to edit tasks directly on the timeline through drag-and-drop interactions. This guide covers all editing capabilities available in the timeline view.

<Callout type="info">
Direct timeline editing requires a Professional tier subscription. Basic tier users can view the timeline but must edit tasks through the task list or task detail panel.
</Callout>

## Editing Capabilities

With Professional tier, you can:

| Action | How To |
|--------|--------|
| Move task | Drag task bar horizontally |
| Resize task | Drag bar edges |
| Create dependency | Draw line between tasks |
| Delete dependency | Click dependency line |
| Edit task details | Double-click task |

## Moving Tasks

### Drag to Reschedule

1. Click and hold a task bar
2. Drag horizontally to new position
3. Release to set new dates

### What Happens

When you move a task:
- Start and end dates update
- Duration remains the same
- Dependent tasks may shift (if auto-schedule enabled)

### Constraints

Moving may be restricted by:
- Task constraints (Must Start On, etc.)
- Dependencies to other tasks
- Parent task boundaries (for subtasks)

## Resizing Tasks

### Changing Duration

1. Hover over left or right edge of task bar
2. Cursor changes to resize indicator
3. Click and drag to extend or shorten
4. Release to set new duration

### Left Edge

Dragging the left edge:
- Changes start date
- Adjusts duration
- End date may remain fixed

### Right Edge

Dragging the right edge:
- Changes end date
- Adjusts duration
- Start date remains fixed

### Duration Limits

Be aware of:
- Minimum task duration (usually 1 day)
- Dependencies that constrain dates
- Calendar working days

## Creating Dependencies

### Drawing Dependencies

1. Hover over source task bar
2. Look for dependency handle (circle on edge)
3. Click and drag to target task
4. Release to create link

### Dependency Direction

- Drag from **end** of predecessor to **start** of successor for Finish-to-Start
- Connection points determine dependency type

### Dependency Options

After creating, you may configure:
- Dependency type (FS, SS, FF, SF)
- Lag or lead time
- Constraints

## Deleting Dependencies

### Removing Links

1. Click on the dependency line
2. Dependency highlights
3. Press Delete key or use context menu
4. Dependency is removed

### Alternative Method

1. Open task details
2. Navigate to dependencies section
3. Remove dependency from list

## Editing Task Details

### Quick Edit

Double-click a task bar to open:
- Task name editing
- Quick property changes
- Status update

### Full Edit

For complete editing:
1. Double-click task bar
2. Click **Edit Details** or expand panel
3. Access all task properties

## Keyboard Shortcuts

| Shortcut | Action |
|----------|--------|
| Delete | Remove selected item |
| Escape | Cancel current operation |
| Ctrl+Z | Undo last change |
| Ctrl+Y | Redo last change |

## Auto-Scheduling

### How It Works

When enabled, editing one task may affect others:
- Moving a predecessor shifts successors
- Respects dependency constraints
- Maintains logical sequence

### Manual Mode

In manual mode:
- Tasks stay where placed
- Dependencies show but don't enforce
- Full control over dates

### Switching Modes

Toggle auto-schedule in:
- Plan settings
- View options menu

## Constraint Handling

### Task Constraints

Tasks may have constraints that limit editing:

| Constraint | Effect |
|------------|--------|
| Must Start On | Cannot move start date |
| Must Finish On | Cannot move end date |
| Start No Earlier Than | Minimum start date |
| Start No Later Than | Maximum start date |
| Finish No Earlier Than | Minimum end date |
| Finish No Later Than | Maximum end date |

### Constraint Indicators

Look for:
- Icons on task bars
- Color coding
- Tooltips explaining restrictions

### Overriding Constraints

To edit constrained tasks:
1. Open task details
2. Remove or modify constraint
3. Make date changes
4. Re-apply constraint if needed

## Editing Milestones

### Moving Milestones

1. Click and drag milestone diamond
2. Move to new date
3. Release to set

### Converting Tasks

- Change task to milestone by setting duration to 0
- Change milestone to task by adding duration

## Editing Summary Tasks

### Limitations

Summary (parent) tasks typically:
- Cannot be directly resized
- Dates determined by children
- Must edit children to change summary

### Manual Summary Control

In some modes:
- Summary dates can be set manually
- May extend beyond children
- Useful for phase markers

## Undo/Redo

### Reverting Changes

- **Undo**: Ctrl+Z (Windows) / Cmd+Z (Mac)
- **Redo**: Ctrl+Y (Windows) / Cmd+Y (Mac)

### History Limits

- Multiple levels of undo available
- History clears on page reload
- Save frequently for safety

## Multi-Select Editing

### Selecting Multiple Tasks

- Ctrl+Click to add to selection
- Shift+Click for range
- Selected tasks highlight

### Moving Multiple Tasks

1. Select multiple tasks
2. Drag any selected task
3. All move together

### Limitations

Multi-select editing:
- May only support horizontal moves
- Cannot resize multiple at once
- Cannot change durations proportionally

## Save and Sync

### Automatic Saving

Changes typically save automatically:
- After drag operation completes
- After resize completes
- After dependency creation

### Manual Save

If available:
- Click Save button
- Keyboard shortcut (Ctrl+S)

### Sync Indicator

Look for indicators showing:
- Saving in progress
- All changes saved
- Sync errors

## Best Practices

### Before Editing

- Review dependencies that may be affected
- Understand constraints in place
- Consider impact on critical path

### During Editing

- Make incremental changes
- Watch for constraint violations
- Check impact on other tasks

### After Editing

- Review schedule for conflicts
- Verify critical path
- Compare to baseline if needed

## Troubleshooting

### Cannot Move Task

- Check for constraints
- Verify dependencies allow movement
- Ensure Professional tier subscription

### Changes Not Saving

- Check network connection
- Look for error messages
- Try refreshing page

### Dependencies Won't Create

- Verify both tasks exist
- Check for circular dependency
- Ensure valid connection points

### Unexpected Task Movement

- Auto-scheduling may be moving dependent tasks
- Check for constraints
- Review dependency chain

## Related Topics

- [Timeline View](/docs/user-guides/gantt/timeline-view) - Understanding the chart
- [Critical Path](/docs/user-guides/gantt/critical-path) - Schedule impact
- [Tasks](/docs/user-guides/tasks) - Alternative editing methods