internal void setHoverButton(IconCenter.ButtonPosition pos) { switch (pos) { case IconCenter.ButtonPosition.B_BottomHalf: break; case IconCenter.ButtonPosition.B_BottomRemain: break; case IconCenter.ButtonPosition.B_Center: break; case IconCenter.ButtonPosition.B_LeftHalf: break; case IconCenter.ButtonPosition.B_LeftRemain: break; case IconCenter.ButtonPosition.B_RightHalf: break; case IconCenter.ButtonPosition.B_RightRemain: break; case IconCenter.ButtonPosition.B_TopHalf: break; case IconCenter.ButtonPosition.B_TopRemain: break; default: break; } }
void DockItOn(DockingContainer popup) { DockingContainer dockParent = _selectedDockingContainer; IconCenter.ButtonPosition pos = _posToDock; if (pos == IconCenter.ButtonPosition.NotOnTheButton) { return; } switch (pos) { case IconCenter.ButtonPosition.B_BottomHalf: dockParent.addChild(popup, DockStyle.Bottom); break; case IconCenter.ButtonPosition.B_BottomRemain: dockParent.addChild(popup, DockStyle.Bottom, true); break; case IconCenter.ButtonPosition.B_Center: dockParent.addChild(popup, DockStyle.Fill); break; case IconCenter.ButtonPosition.B_LeftHalf: dockParent.addChild(popup, DockStyle.Left); break; case IconCenter.ButtonPosition.B_LeftRemain: dockParent.addChild(popup, DockStyle.Left, true); break; case IconCenter.ButtonPosition.B_RightHalf: dockParent.addChild(popup, DockStyle.Right); break; case IconCenter.ButtonPosition.B_RightRemain: dockParent.addChild(popup, DockStyle.Right, true); break; case IconCenter.ButtonPosition.B_TopHalf: dockParent.addChild(popup, DockStyle.Top); break; case IconCenter.ButtonPosition.B_TopRemain: dockParent.addChild(popup, DockStyle.Top, true); break; } this.Connect(popup.Name, popup); popup.setNowInPopup(false); popup.hidePopup(); this.Refresh(); }
void ShowSelection(IconCenter.ButtonPosition pos, DockingContainer dockParent, DockingContainer popup) { if (pos == IconCenter.ButtonPosition.NotOnTheButton) { _selection.Hide(); return; } _selectedDockingContainer = dockParent; _posToDock = pos; Size popupSize = popup.ClientSize; Rectangle dockScreen = CoodinateHandling.GetScreenRect(dockParent); Size parentSize = dockParent.Parent.ClientSize; Rectangle selectionRect = new Rectangle(dockScreen.Location, dockScreen.Size); switch (pos) { case IconCenter.ButtonPosition.B_BottomHalf: selectionRect.Y += selectionRect.Height = dockScreen.Height / 2; break; case IconCenter.ButtonPosition.B_BottomRemain: if (dockScreen.Height + popupSize.Height > parentSize.Height) { selectionRect.Y += selectionRect.Height = dockScreen.Height / 2; } else { selectionRect.Height = popupSize.Height; selectionRect.Y += dockScreen.Height - popupSize.Height; } break; case IconCenter.ButtonPosition.B_Center: //그대로 break; case IconCenter.ButtonPosition.B_LeftHalf: selectionRect.Width /= 2; break; case IconCenter.ButtonPosition.B_LeftRemain: if (dockScreen.Width + popupSize.Width > parentSize.Width) { selectionRect.Width /= 2; } else { selectionRect.Width = popupSize.Width; } break; case IconCenter.ButtonPosition.B_RightHalf: selectionRect.X += selectionRect.Width = selectionRect.Width / 2; break; case IconCenter.ButtonPosition.B_RightRemain: if (dockScreen.Width + popupSize.Width > parentSize.Width) { selectionRect.Width /= 2; } else { selectionRect.Width = popupSize.Width; } selectionRect.X += dockScreen.Width - selectionRect.Width; break; case IconCenter.ButtonPosition.B_TopHalf: selectionRect.Height /= 2; break; case IconCenter.ButtonPosition.B_TopRemain: if (dockScreen.Height + popupSize.Height > parentSize.Height) { selectionRect.Height = selectionRect.Height /= 2; } else { selectionRect.Height = popupSize.Height; } break; case IconCenter.ButtonPosition.NotOnTheButton: _selection.Hide(); break; } _selection.SetBounds(selectionRect.X, selectionRect.Y, selectionRect.Width, selectionRect.Height); _selection.Show(); _selection.BringToFront(); this.Refresh(); }