コード例 #1
0
void NodeComponent::mouseUp (const MouseEvent& e)
{
  if (e.mouseWasClicked() && e.getNumberOfClicks() == 2)
  {
    if (const AudioProcessorGraph::Node::Ptr f = audioEngine.getDoc().getNodeForId (nodeID))
    {
      AudioProcessor* const processor = f->getProcessor();
      if(!InternalPluginFormat::isInternalFormat(processor->getName()))
      {
        if (PluginWindow* const w = PluginWindow::getWindowFor (f, PluginWindow::Generic/*Normal*/))
          w->toFront (true);
      }
    }
  }
  else if (! e.mouseWasClicked())
  {
    audioEngine.getDoc().setChangedFlag (true);
    
    if (moving)
    {
      moving = false;
      audioEngine.getDoc().beginTransaction();
      audioEngine.getDoc().perform(new MoveNodeAction(audioEngine, *getGraphEditor(), nodeID, startPos, endPos), "move node");
    }
  }
}
コード例 #2
0
void ObjectsHolder::mouseUp(const MouseEvent& e)
{
    if (e.mouseWasClicked())
    {
    }

    if (e.mouseWasClicked() && ! e.mods.isAnyModifierKeyDown())
    {
        // object changed
        objController.getSelectedObjects().deselectAll();
    }
    lassoComp.endLasso();
}
コード例 #3
0
void CommentComponent::mouseDrag (const MouseEvent& e)
{

    if (! e.mods.isPopupMenu())
    {
        jassert (dynamic_cast <ObjectsHolder*> (getParentComponent()) != 0);
//        const Rectangle<int> area (((ObjectsHolder*) getParentComponent())->getComponentArea());

        if (selected && ! dragging)
        {
            dragging = ! e.mouseWasClicked();

            if (dragging)
            {
                owner.startDragging ();
            }
        }

        if (dragging)
        {
            owner.dragSelectedComps (e.getDistanceFromDragStartX(),
                                      e.getDistanceFromDragStartY());
        }
        update();
    }
}
コード例 #4
0
void Dockable::continueDocking (const MouseEvent& e)
{
    if (! (e.mouseWasClicked() || isDragging))
    {
        const String dragDescription (getDragDescription());
        if (dragDescription.isNotEmpty())
        {
            isDragging = true;

            Component* const dragSourceComponent = getDragComponent();

            DragAndDropContainer* const dragContainer
                = DragAndDropContainer::findParentDragContainerFor (dragSourceComponent);

            if (dragContainer != 0)
            {
                dragContainer->startDragging (dragDescription,
                                              dragSourceComponent,
                                              getDragImage ());
            }
            else
            {
                // to be able to do a drag-and-drop operation, the component needs to
                // be inside a component which is also a DragAndDropContainer.
                jassertfalse;
            }
        }
    }
}
コード例 #5
0
void ChildAlias::mouseDrag (const MouseEvent& e)
{
if (e.mods.isLeftButtonDown()){
   if (e.eventComponent == resizer)
   {
   }
   else
   {
      if (!e.mouseWasClicked ())
      {
		 constrainer->setMinimumOnscreenAmounts(getHeight(), getWidth(), getHeight(), getWidth());
         dragger.dragComponent (this,e, constrainer);
         applyToTarget ("");
		 if(type.containsIgnoreCase("juce::GroupComponent")||
					type.containsIgnoreCase("CabbageImage"))
			toBack();
      }
   }
   if(type.containsIgnoreCase("juce::GroupComponent")||
	   type.containsIgnoreCase("CabbageImage"))
	   toBack();
   else 
	   toFront(true);
}//end of left click check
}
コード例 #6
0
ファイル: juce_ComboBox.cpp プロジェクト: AndyJBuchanan/dexed
void ComboBox::mouseDrag (const MouseEvent& e)
{
    beginDragAutoRepeat (50);

    if (isButtonDown && ! e.mouseWasClicked())
        showPopupIfNotActive();
}
コード例 #7
0
//=================================================================================================
void ClipsContainer::mouseDown (const MouseEvent& event)
{
    if (event.mouseWasClicked() && event.mods.isLeftButtonDown())
        controller->deselectAll();

    if (getParentComponent() != nullptr)
        getParentComponent()->mouseDown(event);
}
コード例 #8
0
void ComponentLayoutEditor::mouseUp (const MouseEvent& e)
{
    lassoComp.endLasso();
    removeChildComponent (&lassoComp);

    if (e.mouseWasClicked() && ! e.mods.isAnyModifierKeyDown())
        layout.getSelectedSet().deselectAll();
}
コード例 #9
0
ファイル: GraphEditorPanel.cpp プロジェクト: furio/pyplasm
    void mouseUp (const MouseEvent& e)
    {
        if (e.mouseWasClicked() && e.getNumberOfClicks() == 2)
        {
            const AudioProcessorGraph::Node::Ptr f (graph.getNodeForId (filterID));

            if (f != nullptr)
            {
                PluginWindow* const w = PluginWindow::getWindowFor (f, false);

                if (w != nullptr)
                    w->toFront (true);
            }
        }
        else if (! e.mouseWasClicked())
        {
            graph.setChangedFlag (true);
        }
    }
コード例 #10
0
void PaintRoutineEditor::mouseUp (const MouseEvent& e)
{
    lassoComp.endLasso();

    if (e.mouseWasClicked() && ! e.mods.isAnyModifierKeyDown())
    {
        graphics.getSelectedElements().deselectAll();
        graphics.getSelectedPoints().deselectAll();
    }
}
コード例 #11
0
ファイル: juce_Label.cpp プロジェクト: Emisense/S3Test
void Label::mouseUp (const MouseEvent& e)
{
    if (editSingleClick
         && e.mouseWasClicked()
         && contains (e.getPosition())
         && ! e.mods.isPopupMenu())
    {
        showEditor();
    }
}
コード例 #12
0
ファイル: ClickableLabel.cpp プロジェクト: altalogix/SFZero
void sfzero::ClickableLabel::mouseUp(const MouseEvent &e)
{
  bool goodClick = e.mouseWasClicked() && contains(e.getPosition()) && !e.mods.isPopupMenu();

  if (goodClick)
  {
    BailOutChecker checker(this);
    clickListeners.callChecked(checker, &ClickListener::labelClicked, this);
  }
}
コード例 #13
0
void AudioOutConnector::mouseUp(const MouseEvent& e)
{
   	if (e.mouseWasClicked() && e.getNumberOfClicks() == 2)
	{
        showGainPanel();
	}

    owner.getSelectedObjects().addToSelectionOnMouseUp (this, e.mods, false,
                                                        mouseDownSelectStatus);
    update();
}
コード例 #14
0
void BaseConnector::mouseUp(const MouseEvent& e)
{
    if (e.mouseWasClicked() && e.getNumberOfClicks() == 2)
    {
        propertiesWindow->makeVisible(true);
    }

    owner.getSelectedObjects().addToSelectionOnMouseUp (this, e.mods, false,
                                                        mouseDownSelectStatus);
    update();
}
コード例 #15
0
    void mouseUp (const MouseEvent& e)
    {
        if (selectRowOnMouseUp && e.mouseWasClicked() && isEnabled())
        {
            owner.selectRowsBasedOnModifierKeys (row, e.mods, true);

            const int columnId = owner.getHeader().getColumnIdAtX (e.x);

            if (columnId != 0 && owner.getModel() != nullptr)
                owner.getModel()->cellClicked (row, columnId, e);
        }
    }
コード例 #16
0
//=================================================================================================
void ClipsContainer::mouseUp (const MouseEvent& event)
{
    // 右键单击弹出菜单,
    if (event.mouseWasClicked() && event.mods.isPopupMenu())
    {
        popupMenu();
        controller->expandContainerWidthIfNeeded();
    }

    if (getParentComponent() != nullptr)
        getParentComponent()->mouseUp(event);
}
コード例 #17
0
    void mouseUp (const MouseEvent& e) override
    {
        if (selectRowOnMouseUp && e.mouseWasClicked() && isEnabled())
        {
            owner.selectRowsBasedOnModifierKeys (row, e.mods, true);

            const int columnId = owner.getHeader().getColumnIdAtX (e.x);

            if (columnId != 0)
                if (TableListBoxModel* m = owner.getModel())
                    m->cellClicked (row, columnId, e);
        }
    }
コード例 #18
0
ファイル: juce_TreeView.cpp プロジェクト: Labmind/GUI
    void mouseUp (const MouseEvent& e)
    {
        updateButtonUnderMouse (e);

        if (needSelectionOnMouseUp && e.mouseWasClicked())
        {
            Rectangle<int> pos;
            TreeViewItem* const item = findItemAt (e.y, pos);

            if (item != 0)
                selectBasedOnModifiers (item, e.mods);
        }
    }
コード例 #19
0
void SplittableWaveDisplay::mouseDown(const MouseEvent &e){
    std::cout<<"Clicked \n";
    if (!e.mouseWasClicked()){
        mouseDrag(e);
    }
    
    if(e.mods.isShiftDown()){
        if (!e.mods.isAltDown()){
            }
        
    }
    else{}
        waveDisplay.mouseDown(e);
}
コード例 #20
0
void ChildAlias::mouseDrag (const MouseEvent& e)
{
    if (e.eventComponent == resizer)
    {
    }
    else
    {
        if (!e.mouseWasClicked ())
        {
            dragger.dragComponent (this,e);
            applyToTarget ();
        }
    }
}
コード例 #21
0
void InterpolationSpacePreset::mouseUp (const MouseEvent& e)
{
  if (! e.mouseWasClicked())
  {
    endBounds = getBounds();
    
    if(dragging && startBounds != endBounds)
    {
      audioEngine.getDoc().beginTransaction();
      audioEngine.getDoc().perform(new MovePresetAction(dynamic_cast<PMixInterpolationSpaceLayout*>(getParentComponent()), getComponentID(), startBounds, endBounds), TRANS("change preset bounds"));
    }
  }
  
  dragging = false;
}
コード例 #22
0
void LinkComponent::mouseUp(const MouseEvent& e)
{
    if (e.mouseWasClicked() && e.getNumberOfClicks() == 2)
	{
		getObjectsHolder()->editObjectProperties(this);
	}
    else if (e.mods.isPopupMenu())
    {
        showContextMenu();
        return; // this may be deleted now..
    }
    owner.getSelectedObjects().addToSelectionOnMouseUp (this, e.mods, false, 
                                                      mouseDownSelectStatus);
    update();
}
コード例 #23
0
void ObjectComponent::mouseUp (const MouseEvent& e)
{
    if (dragging)
        owner.endDragging();

	if (e.mouseWasClicked() && e.getNumberOfClicks() == 2)
	{
        propertiesWindow->makeVisible(true);
	}

    owner.getSelectedObjects().addToSelectionOnMouseUp (this, e.mods, dragging, 
                                                        mouseDownSelectStatus);

    update();
}
コード例 #24
0
ファイル: juce_ListBox.cpp プロジェクト: sonic59/JuceEditor
    void mouseDrag (const MouseEvent& e)
    {
        if (isEnabled() && owner.getModel() != nullptr && ! (e.mouseWasClicked() || isDragging))
        {
            const SparseSet<int> selectedRows (owner.getSelectedRows());

            if (selectedRows.size() > 0)
            {
                const var dragDescription (owner.getModel()->getDragSourceDescription (selectedRows));

                if (! (dragDescription.isVoid() || (dragDescription.isString() && dragDescription.toString().isEmpty())))
                {
                    isDragging = true;
                    owner.startDragAndDrop (e, dragDescription);
                }
            }
        }
    }
コード例 #25
0
void ComponentOverlayComponent::mouseDrag (const MouseEvent& e)
{
    if (! e.mods.isPopupMenu())
    {
        if (selected && ! dragging)
        {
            dragging = ! e.mouseWasClicked();

            if (dragging)
                layout.startDragging();
        }

        if (dragging)
        {
            layout.dragSelectedComps (e.getDistanceFromDragStartX(),
                                      e.getDistanceFromDragStartY());
        }
    }
}
コード例 #26
0
    void mouseDrag (const MouseEvent& e)
    {
        if (! (isDragging || e.mouseWasClicked()))
        {
            isDragging = true;

            if (DragAndDropContainer* const dnd = DragAndDropContainer::findParentDragContainerFor (this))
            {
                dnd->startDragging (Toolbar::toolbarDragDescriptor, getParentComponent(), Image::null, true);

                if (ToolbarItemComponent* const tc = getToolbarItemComponent())
                {
                    tc->isBeingDragged = true;

                    if (tc->getEditingMode() == ToolbarItemComponent::editableOnToolbar)
                        tc->setVisible (false);
                }
            }
        }
    }
コード例 #27
0
void PaintElement::mouseDrag (const MouseEvent& e)
{
    if (! e.mods.isPopupMenu())
    {
        jassert (dynamic_cast <PaintRoutineEditor*> (getParentComponent()) != 0);
        const Rectangle<int> area (((PaintRoutineEditor*) getParentComponent())->getComponentArea());

        if (selected && ! dragging)
        {
            dragging = ! e.mouseWasClicked();

            if (dragging)
                owner->startDragging (area);
        }

        if (dragging)
            owner->dragSelectedComps (e.getDistanceFromDragStartX(),
                                      e.getDistanceFromDragStartY(),
                                      area);
    }
}
コード例 #28
0
ファイル: juce_TreeView.cpp プロジェクト: Labmind/GUI
    void mouseDrag (const MouseEvent& e)
    {
        if (isEnabled()
             && ! (isDragging || e.mouseWasClicked()
                    || e.getDistanceFromDragStart() < 5
                    || e.mods.isPopupMenu()))
        {
            isDragging = true;

            Rectangle<int> pos;
            TreeViewItem* const item = findItemAt (e.getMouseDownY(), pos);

            if (item != 0 && e.getMouseDownX() >= pos.getX())
            {
                const String dragDescription (item->getDragSourceDescription());

                if (dragDescription.isNotEmpty())
                {
                    DragAndDropContainer* const dragContainer
                        = DragAndDropContainer::findParentDragContainerFor (this);

                    if (dragContainer != 0)
                    {
                        pos.setSize (pos.getWidth(), item->itemHeight);
                        Image dragImage (Component::createComponentSnapshot (pos, true));
                        dragImage.multiplyAllAlphas (0.6f);

                        Point<int> imageOffset (pos.getPosition() - e.getPosition());
                        dragContainer->startDragging (dragDescription, &owner, dragImage, true, &imageOffset);
                    }
                    else
                    {
                        // to be able to do a drag-and-drop operation, the treeview needs to
                        // be inside a component which is also a DragAndDropContainer.
                        jassertfalse;
                    }
                }
            }
        }
    }
コード例 #29
0
void ConnectorComponent::mouseDrag (const MouseEvent& e)
{
  if ((! dragging) && ! e.mouseWasClicked())
  {
    dragging = true;
    
    audioEngine.getDoc().removeConnection (sourceNodeId, sourceNodeChannel, destNodeId, destNodeChannel);
    
    double distanceFromStart, distanceFromEnd;
    getDistancesFromEnds (e.x, e.y, distanceFromStart, distanceFromEnd);
    const bool isNearerSource = (distanceFromStart < distanceFromEnd);
    
    getGraphEditor()->beginConnectorDrag (isNearerSource ? 0 : sourceNodeId,
                                         sourceNodeChannel,
                                         isNearerSource ? destNodeId : 0,
                                         destNodeChannel,
                                         e);
  }
  else if (dragging)
  {
    getGraphEditor()->dragConnector (e);
  }
}
コード例 #30
0
    void mouseDrag (const MouseEvent& e) override
    {
        if (isEnabled() && owner.getModel() != nullptr && ! (e.mouseWasClicked() || isDragging))
        {
            SparseSet<int> rowsToDrag;

            if (owner.selectOnMouseDown || owner.isRowSelected (row))
                rowsToDrag = owner.getSelectedRows();
            else
                rowsToDrag.addRange (Range<int>::withStartAndLength (row, 1));

            if (rowsToDrag.size() > 0)
            {
                const var dragDescription (owner.getModel()->getDragSourceDescription (rowsToDrag));

                if (! (dragDescription.isVoid() || (dragDescription.isString() && dragDescription.toString().isEmpty())))
                {
                    isDragging = true;
                    owner.startDragAndDrop (e, rowsToDrag, dragDescription, true);
                }
            }
        }
    }