Path: blob/main/src/netedit/dialogs/GNEGeometryPointDialog.h
169678 views
/****************************************************************************/1// Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo2// Copyright (C) 2001-2025 German Aerospace Center (DLR) and others.3// This program and the accompanying materials are made available under the4// terms of the Eclipse Public License 2.0 which is available at5// https://www.eclipse.org/legal/epl-2.0/6// This Source Code may also be made available under the following Secondary7// Licenses when the conditions for such availability set forth in the Eclipse8// Public License 2.0 are satisfied: GNU General Public License, version 29// or later which is available at10// https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html11// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later12/****************************************************************************/13/// @file GNEGeometryPointDialog.h14/// @author Pablo Alvarez Lopez15/// @date Jan 202116///17// A dialog for set Geometry Points18/****************************************************************************/19#pragma once20#include <config.h>2122#include "GNEDialog.h"2324// ===========================================================================25// class definitions26// ===========================================================================2728class GNEGeometryPointDialog : public GNEDialog {29/// @brief FOX-declaration abstract30FXDECLARE_ABSTRACT(GNEGeometryPointDialog)3132public:33/// @brief constructor34GNEGeometryPointDialog(GNEApplicationWindow* applicationWindow, const Position& pos);3536/// @brief destructor37~GNEGeometryPointDialog();3839/// @brief get edited position40const Position& getEditedPosition() const;4142/// @brief run internal test43void runInternalTest(const InternalTestStep::DialogArgument* dialogArgument);4445/// @name FOX-callbacks46/// @{4748/// @brief event after change position in TextFields49long onCmdChangeGeometryPoint(FXObject* sender, FXSelector sel, void* ptr);5051/// @brief event after press accept button52long onCmdAccept(FXObject* sender, FXSelector sel, void* ptr);5354/// @brief event after press cancel button55long onCmdCancel(FXObject* sender, FXSelector sel, void* ptr);5657/// @brief event after press cancel button58long onCmdReset(FXObject*, FXSelector, void*);5960/// @}6162protected:63/// @brief FOX need this64GNEGeometryPointDialog();6566/// @brief viewNet67GNEViewNet* myViewNet;6869/// @brief text field for X, Y70FXTextField* myTextFieldXY = nullptr;7172/// @brief text field for lon, Lat73FXTextField* myTextFieldLonLat = nullptr;7475/// @brief edited position76Position myEditedPosition;7778/// @brief original position (used for reset)79const Position myOriginalPos;8081/// @brief flag for geo82const bool myGeo;8384private:85/// @brief accept button86FXButton* myKeepOldButton = nullptr;8788/// @brief cancel button89FXButton* myCancelButton = nullptr;9091/// @brief cancel button92FXButton* myResetButton = nullptr;9394/// @brief Invalidated copy constructor95GNEGeometryPointDialog(const GNEGeometryPointDialog&) = delete;9697/// @brief Invalidated assignment operator98GNEGeometryPointDialog& operator=(const GNEGeometryPointDialog&) = delete;99};100101102