LMMS
Loading...
Searching...
No Matches
juce_StretchableLayoutResizerBar.cpp
Go to the documentation of this file.
1/*
2 ==============================================================================
3
4 This file is part of the JUCE library.
5 Copyright (c) 2022 - Raw Material Software Limited
6
7 JUCE is an open source library subject to commercial or open-source
8 licensing.
9
10 By using JUCE, you agree to the terms of both the JUCE 7 End-User License
11 Agreement and JUCE Privacy Policy.
12
13 End User License Agreement: www.juce.com/juce-7-licence
14 Privacy Policy: www.juce.com/juce-privacy-policy
15
16 Or: You may also use this code under the terms of the GPL v3 (see
17 www.gnu.org/licenses).
18
19 JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
20 EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
21 DISCLAIMED.
22
23 ==============================================================================
24*/
25
26namespace juce
27{
28
30 const int index,
31 const bool vertical)
32 : layout (layout_),
33 itemIndex (index),
34 isVertical (vertical)
35{
39}
40
44
45//==============================================================================
47{
48 getLookAndFeel().drawStretchableLayoutResizerBar (g,
53}
54
56{
57 mouseDownPos = layout->getItemCurrentPosition (itemIndex);
58}
59
61{
62 const int desiredPos = mouseDownPos + (isVertical ? e.getDistanceFromDragStartX()
63 : e.getDistanceFromDragStartY());
64
65
66 if (layout->getItemCurrentPosition (itemIndex) != desiredPos)
67 {
68 layout->setItemPosition (itemIndex, desiredPos);
70 }
71}
72
78
79} // namespace juce
bool isMouseButtonDown(bool includeChildren=false) const
Definition juce_Component.cpp:3177
void setRepaintsOnMouseActivity(bool shouldRepaint) noexcept
Definition juce_Component.cpp:1881
Component * getParentComponent() const noexcept
Definition juce_Component.h:804
int getHeight() const noexcept
Definition juce_Component.h:274
void setMouseCursor(const MouseCursor &cursorType)
Definition juce_Component.cpp:1859
Component() noexcept
Definition juce_Component.cpp:517
bool isMouseOver(bool includeChildren=false) const
Definition juce_Component.cpp:3159
int getWidth() const noexcept
Definition juce_Component.h:271
LookAndFeel & getLookAndFeel() const noexcept
Definition juce_Component.cpp:2173
Definition juce_GraphicsContext.h:45
@ LeftRightResizeCursor
Definition juce_MouseCursor.h:59
@ UpDownResizeCursor
Definition juce_MouseCursor.h:60
Definition juce_MouseEvent.h:39
Definition juce_StretchableLayoutManager.h:83
void mouseDrag(const MouseEvent &) override
Definition juce_StretchableLayoutResizerBar.cpp:60
void paint(Graphics &) override
Definition juce_StretchableLayoutResizerBar.cpp:46
StretchableLayoutResizerBar(StretchableLayoutManager *layoutToUse, int itemIndexInLayout, bool isBarVertical)
Definition juce_StretchableLayoutResizerBar.cpp:29
~StretchableLayoutResizerBar() override
Definition juce_StretchableLayoutResizerBar.cpp:41
void mouseDown(const MouseEvent &) override
Definition juce_StretchableLayoutResizerBar.cpp:55
int mouseDownPos
Definition juce_StretchableLayoutResizerBar.h:99
StretchableLayoutManager * layout
Definition juce_StretchableLayoutResizerBar.h:98
bool isVertical
Definition juce_StretchableLayoutResizerBar.h:100
virtual void hasBeenMoved()
Definition juce_StretchableLayoutResizerBar.cpp:73
int itemIndex
Definition juce_StretchableLayoutResizerBar.h:99
* e
Definition inflate.c:1404
int g
Definition inflate.c:1573
static uintptr_t parent
Definition pugl.h:1644
Definition carla_juce.cpp:31