LCOV - code coverage report
Current view: top level - src/utils/foxtools - MFXMenuCheckIcon.h (source / functions) Coverage Total Hit
Test: lcov.info Lines: 0.0 % 1 0
Test Date: 2024-11-22 15:46:21 Functions: 0.0 % 1 0

            Line data    Source code
       1              : /****************************************************************************/
       2              : // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
       3              : // Copyright (C) 2004-2024 German Aerospace Center (DLR) and others.
       4              : // This program and the accompanying materials are made available under the
       5              : // terms of the Eclipse Public License 2.0 which is available at
       6              : // https://www.eclipse.org/legal/epl-2.0/
       7              : // This Source Code may also be made available under the following Secondary
       8              : // Licenses when the conditions for such availability set forth in the Eclipse
       9              : // Public License 2.0 are satisfied: GNU General Public License, version 2
      10              : // or later which is available at
      11              : // https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
      12              : // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
      13              : /****************************************************************************/
      14              : /// @file    MFXMenuCheckIcon.h
      15              : /// @author  Pablo Alvarez Lopez
      16              : /// @date    Jan 2021
      17              : ///
      18              : //
      19              : /****************************************************************************/
      20              : 
      21              : #pragma once
      22              : #include <config.h>
      23              : 
      24              : 
      25              : #include "fxheader.h"
      26              : #include <string>
      27              : 
      28              : /**
      29              : * The menu check widget is used to change a state in the
      30              : * application from a menu.  Menu checks may reflect
      31              : * the state of the application by graying out, becoming hidden,
      32              : * or by a check mark.
      33              : * When activated, a menu check sends a SEL_COMMAND to its target;
      34              : * the void* argument of the message contains the new state.
      35              : */
      36              : class MFXMenuCheckIcon : public FXMenuCommand {
      37              :     /// @brief FOX-declaration
      38            0 :     FXDECLARE(MFXMenuCheckIcon)
      39              : 
      40              : public:
      41              :     /// @brief Construct a menu check
      42              :     MFXMenuCheckIcon(FXComposite* p, const std::string& text, const std::string& shortcut, const std::string& info, const FXIcon* icon, FXObject* tgt = NULL, FXSelector sel = 0, FXuint opts = 0);
      43              : 
      44              :     /// @brief Return default width
      45              :     virtual FXint getDefaultWidth();
      46              : 
      47              :     /// @brief Return default height
      48              :     virtual FXint getDefaultHeight();
      49              : 
      50              :     /// @brief Set check state (TRUE, FALSE or MAYBE)
      51              :     void setCheck(FXbool s = TRUE);
      52              : 
      53              :     /// @brief Get check state (TRUE, FALSE or MAYBE)
      54              :     FXbool getCheck() const;
      55              : 
      56              :     /// @brief Get the box background color
      57              :     FXColor getBoxColor() const;
      58              : 
      59              :     /// @brief Set the box background color
      60              :     void setBoxColor(FXColor clr);
      61              : 
      62              :     /// @brief Save menu to a stream
      63              :     virtual void save(FXStream& store) const;
      64              : 
      65              :     /// @brief Load menu from a stream
      66              :     virtual void load(FXStream& store);
      67              : 
      68              :     /// @name FOX calls
      69              :     /// @{
      70              :     long onPaint(FXObject*, FXSelector, void*);
      71              :     long onButtonPress(FXObject*, FXSelector, void*);
      72              :     long onButtonRelease(FXObject*, FXSelector, void*);
      73              :     long onKeyPress(FXObject*, FXSelector, void*);
      74              :     long onKeyRelease(FXObject*, FXSelector, void*);
      75              :     long onHotKeyPress(FXObject*, FXSelector, void*);
      76              :     long onHotKeyRelease(FXObject*, FXSelector, void*);
      77              :     long onCheck(FXObject*, FXSelector, void*);
      78              :     long onUncheck(FXObject*, FXSelector, void*);
      79              :     long onUnknown(FXObject*, FXSelector, void*);
      80              :     long onCmdSetValue(FXObject*, FXSelector, void*);
      81              :     long onCmdSetIntValue(FXObject*, FXSelector, void*);
      82              :     long onCmdGetIntValue(FXObject*, FXSelector, void*);
      83              :     long onCmdAccel(FXObject*, FXSelector, void*);
      84              :     /// @}
      85              : 
      86              : protected:
      87              :     /// @brief default constructor
      88              :     MFXMenuCheckIcon();
      89              : 
      90              :     /// @brief Icon
      91              :     const FXIcon* myIcon;
      92              : 
      93              :     /// @brief State of menu
      94              :     FXuchar myCheck;
      95              : 
      96              :     /// @brief Box color
      97              :     FXColor myBoxColor;
      98              : 
      99              : private:
     100              :     /// @brief Invalidated copy constructor.
     101              :     MFXMenuCheckIcon(const MFXMenuCheckIcon&) = delete;
     102              : 
     103              :     /// @brief Invalidated assignment operator.
     104              :     MFXMenuCheckIcon& operator=(const MFXMenuCheckIcon&) = delete;
     105              : };
        

Generated by: LCOV version 2.0-1