Ignore:
Timestamp:
08/31/20 16:26:59 (4 years ago)
Author:
bnemhaus
Message:

New feature: when creating a frameset, if the item being used is linked and you hold shift, it will use the items on the linked frame to populate the zero frame of the new frameset

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/expeditee/gio/gesture/StandardGestureActions.java

    r1513 r1532  
    669669                                ItemSpecificGestureData data = (ItemSpecificGestureData) gesture.getData();
    670670                                if (data.getCurrentItem() != null) {
    671                                         CreateFrameset(data.getCurrentItem());
     671                                        CreateFrameset(data.getCurrentItem(), data.isShiftDown());
    672672                                }
    673673                        }
     
    29472947        /**
    29482948         * Creates a new Frameset with the name given by the Item
    2949          *
    2950          * @param name
     2949         * @param useLinkForZeroFrame if true, will try to use the content from
     2950         * the frame specified by the link as the zero frame for new frameset
    29512951         */
    2952         private static void CreateFrameset(Item item) {
     2952        private static void CreateFrameset(Item item, boolean useLinkForZeroFrame) {
    29532953                if (item == null) {
    29542954                        MessageBay.displayMessage("There is no selected item to use for the frameset name");
     
    29612961                }
    29622962
     2963                // Collect Items to place on new zero frame.
     2964                Collection<Item> zeroLinkItems = null;
    29632965                // Don't create frameset if the item is linked
    2964                 if (item.getLink() != null) {
    2965                         MessageBay.displayMessage("A frameset can not be created from a linked item");
     2966                if (item.getLink() != null && !useLinkForZeroFrame) {
     2967                        MessageBay.displayMessage("A frameset can not be created from a linked item without holding shift.  Hold shift while pressing F6 to use items on linked frame to populate zero frame.");
    29662968                        return;
     2969                } else if (item.getLink() != null && useLinkForZeroFrame) {
     2970                        Frame frameToUseForZeroFrameCreation = FrameIO.LoadFrame(item.getLink());
     2971                        if (frameToUseForZeroFrameCreation != null) {
     2972                                zeroLinkItems = frameToUseForZeroFrameCreation.getBody(true).cloneList();
     2973                        }
    29672974                }
    29682975
     
    29802987                                String groupName = name.substring(7);
    29812988                                // create the new group
    2982                                 linkTo = FrameIO.CreateNewGroup(groupName);
     2989                                linkTo = FrameIO.CreateNewGroup(groupName, zeroLinkItems);
    29832990                        } else {
    29842991                                // create the new frameset
    2985                                 linkTo = FrameIO.CreateNewFrameset(name);
     2992                                linkTo = FrameIO.CreateNewFrameset(name, zeroLinkItems);
    29862993                        }
    29872994                        DisplayController.setCursor(Item.DEFAULT_CURSOR);
Note: See TracChangeset for help on using the changeset viewer.