File | Line |
---|
info/magnolia/templating/editor/client/model/focus/FocusModelImpl.java | 150 |
info/magnolia/templating/editor/client/model/focus/FocusModelImpl2.java | 151 |
if (root != null && storage.getEditBar(root) != null) {
storage.getEditBar(root).setVisible(true);
}
}
}
public void hideRoot() {
for (MgnlElement root : storage.getRootElements()) {
if (root != null && storage.getEditBar(root) != null) {
storage.getEditBar(root).setVisible(false);
}
}
}
public void computeOverlay () {
for (MgnlElement root : storage.getRootElements()) {
List<MgnlElement> mgnlElements = root.getDescendants();
mgnlElements.add(root);
for (MgnlElement mgnlElement : mgnlElements) {
if (storage.getOverlay(mgnlElement) == null) {
continue;
}
Element firstElement = mgnlElement.getFirstElement();
if (firstElement == null) {
continue;
}
storage.getOverlay(mgnlElement).getElement().getStyle().setTop(firstElement.getAbsoluteTop(), Unit.PX);
storage.getOverlay(mgnlElement).getElement().getStyle().setLeft(firstElement.getAbsoluteLeft(), Unit.PX);
storage.getOverlay(mgnlElement).getElement().getStyle().setWidth(firstElement.getAbsoluteRight() - firstElement.getAbsoluteLeft(), Unit.PX);
Element lastElement = mgnlElement.getLastElement();
if (lastElement != null) {
storage.getOverlay(mgnlElement).getElement().getStyle().setHeight(lastElement.getAbsoluteBottom() - storage.getOverlay(mgnlElement).getElement().getAbsoluteTop(), Unit.PX);
}
}
/* for (MgnlElement mgnlElement : mgnlElements) {
if (storage.getOverlay(mgnlElement) == null) {
continue;
}
double top = Double.MAX_VALUE;
double bottom = 0;
double left = Double.MAX_VALUE;
double right = 0;
for (Element element : storage.getElements(mgnlElement)) {
if (top > element.getAbsoluteTop()) top = element.getAbsoluteTop();
if (bottom < element.getAbsoluteBottom()) bottom = element.getAbsoluteBottom();
if (left > element.getAbsoluteLeft()) left = element.getAbsoluteLeft();
if (right < element.getAbsoluteRight()) right = element.getAbsoluteRight();
}
storage.getOverlay(mgnlElement).getElement().getStyle().setTop(top, Unit.PX);
storage.getOverlay(mgnlElement).getElement().getStyle().setLeft(left, Unit.PX);
storage.getOverlay(mgnlElement).getElement().getStyle().setWidth(right - left, Unit.PX);
storage.getOverlay(mgnlElement).getElement().getStyle().setHeight(bottom - top, Unit.PX);
}*/
}
}
} |
File | Line |
---|
info/magnolia/templating/editor/client/model/focus/FocusModelImpl.java | 51 |
info/magnolia/templating/editor/client/model/focus/FocusModelImpl2.java | 51 |
public FocusModelImpl2(ModelStorage storage) {
super();
this.storage = storage;
}
@Override
public void onMouseUp(Element element) {
}
@Override
public void onMouseUp(MgnlElement mgnlElement) {
hideRoot();
if (storage.getSelectedMgnlElement() != null) {
deSelect(storage.getSelectedMgnlElement());
}
select(mgnlElement);
storage.setSelectedMgnlElement(mgnlElement);
}
@Override
public void onMouseDown(Element element) {
// TODO Auto-generated method stub
}
@Override
public void reset() {
deSelect();
showRoot();
computeOverlay();
}
protected void select(MgnlElement mgnlElement) {
if (mgnlElement != null) {
if (storage.getOverlay(mgnlElement) != null) {
storage.getOverlay(mgnlElement).getElement().getStyle().setProperty("pointerEvents", "none"); |