Ticket #2309 (closed tweak: obsolete)

Opened 15 years ago

Last modified 13 years ago

dnd-apply-templates-2 Apply templates via drop over page structure palette

Reported by: deyan Owned by: deni
Priority: major Milestone: X3
Component: uncategorized Version: 2.0
Keywords: Cc:
Category: unknown Effort:
Importance: 65 Ticket_group:
Estimated Number of Hours: 0 Add Hours to Ticket: 0
Billable?: yes Total Hours: 0
Analysis_owners: deyan Design_owners: deni
Imp._owners: deni Test_owners:
Analysis_reviewers: deni Changelog:
Design_reviewers: meddle Imp._reviewers: meddle, deyan
Test_reviewers: Analysis_score: 3
Design_score: 3 Imp._score: 3
Test_score: 0

Description

Add ability to apply templates via drag and drop (over Page structure palette). When a template is dragged over frame, the template should be applied to this frame. When a page template is dragged over page, the template should be applied to the page.

Change History

comment:1 Changed 15 years ago by dido

  • Category set to unknown
  • Analysis_score set to 0
  • Importance set to 65
  • Test_score set to 0
  • Design_score set to 0
  • Imp._score set to 0

comment:2 Changed 15 years ago by deni

  • Owner set to deni
  • Status changed from new to s1a_analysis_started

comment:3 Changed 15 years ago by deni

  • Status changed from s1a_analysis_started to s1b_analysis_finished

comment:4 follow-up: ↓ 6 Changed 15 years ago by deni

  • Status changed from s1b_analysis_finished to s1c_analysis_ok

comment:5 Changed 15 years ago by deni

  • Status changed from s1c_analysis_ok to s2a_design_started

comment:6 in reply to: ↑ 4 Changed 15 years ago by deni

Replying to deni: Dropping a frame template, will not do anything (even if it is dropped over a frame in the page thumbnail).

comment:7 Changed 15 years ago by deni

  • Design_owners set to deni
  • Imp._owners set to deni
  • Analysis_reviewers set to deni
  • Analysis_score changed from 0 to 3

comment:8 Changed 15 years ago by deni

  • Status changed from s2a_design_started to s2b_design_finished
  • Depends on #2308. Please review them together.
  • Move the logic for extracting a page template from a transferable and applying it to a specific page in a helper method in TemplateUtil. It will be used in LibraryTabLogic and PagePreviewLogic.
  • Register a SophieDragDropHandler to the page preview palette so that it can accept drops - in PagePreviewPalette.initHead().
  • Add the following operations in PagePreviewLogic:
    • ON_DND_PRE_IMPORT - indicates that the page preview palette supports dropping {TemplateRefData
    • ON_DND_APPLY_TEMPLATE - handles dropping a page template over the palette.
      • Finds the page over which the template was dropped using JList.locationToIndex(Point location). Additional checks whether the point is contained in the page thumbnail will be needed when implementing #2312.
      • Applies the template using TemplateUtil.applyPageTemplate(DndTransferable, PageH, BookH).
      • Goes to the page that was changed.

comment:9 Changed 15 years ago by deni

  • Status changed from s2b_design_finished to s2c_design_ok

comment:10 Changed 15 years ago by deni

  • Status changed from s2c_design_ok to s3a_implementation_started

comment:11 Changed 15 years ago by deni

  • Status changed from s3a_implementation_started to s3b_implementation_finished
  • I read the description now and found out that this ticket is about page structure palette, not page preview... But I like the idea of dropping templates over the page preview palette, so I'll make it im_fi.
  • Source code: [8622]

comment:12 Changed 15 years ago by meddle

  • Status changed from s3b_implementation_finished to s3c_implementation_ok
  • Design_score changed from 0 to 3
  • Design_reviewers set to meddle
  • Imp._score changed from 0 to 3
  • Imp._reviewers set to meddle, deyan

Merged to the trunk at [8630].

Yes, the implementation was for PSP not for PPP, but I wrote the code for the PSP... this took me some time, because the tree palette works differently. Don't use NaiveImmList when declaring variables, use the interface ImmList.

comment:13 Changed 13 years ago by meddle

  • Status changed from s3c_implementation_ok to closed
  • Resolution set to obsolete

Closing all the tickets before M Y1

Note: See TracTickets for help on using tickets.