    void rowClicked(const QModelIndex &index);
    SignalModel *model = nullptr;
  
  signals:
    void highlight(const Signal *sig);
    void showChart(const MessageId &id, const Signal *sig, bool show, bool merge);
  
  private:
    void rowsChanged();
    void leaveEvent(QEvent *event);
  
 
</s> remove   void selectSignal(const Signal *sig, bool expand = false);
 </s> add   void selectSignal(const cabana::Signal *sig, bool expand = false); </s> remove   void signalHovered(const Signal *sig);
 </s> add   void signalHovered(const cabana::Signal *sig); </s> remove   void insertItem(SignalModel::Item *parent_item, int pos, const Signal *sig);
  void handleSignalAdded(uint32_t address, const Signal *sig);
  void handleSignalUpdated(const Signal *sig);
  void handleSignalRemoved(const Signal *sig);
 </s> add   void insertItem(SignalModel::Item *parent_item, int pos, const cabana::Signal *sig);
  void handleSignalAdded(uint32_t address, const cabana::Signal *sig);
  void handleSignalUpdated(const cabana::Signal *sig);
  void handleSignalRemoved(const cabana::Signal *sig); </s> remove   void signalAdded(uint32_t address, const Signal *sig);
  void signalRemoved(const Signal *sig);
  void signalUpdated(const Signal *sig);
 </s> add   void signalAdded(uint32_t address, const cabana::Signal *sig);
  void signalRemoved(const cabana::Signal *sig);
  void signalUpdated(const cabana::Signal *sig); </s> remove   void addSignal(const MessageId &id, const Signal &sig);
  void updateSignal(const MessageId &id, const QString &sig_name, const Signal &sig);
 </s> add   void addSignal(const MessageId &id, const cabana::Signal &sig);
  void updateSignal(const MessageId &id, const QString &sig_name, const cabana::Signal &sig);
  void highlight(const cabana::Signal *sig);
  void showChart(const MessageId &id, const cabana::Signal *sig, bool show, bool merge);
    void rowClicked(const QModelIndex &index);
    SignalModel *model = nullptr;
  
  signals:
  void highlight(const cabana::Signal *sig);
  void showChart(const MessageId &id, const cabana::Signal *sig, bool show, bool merge);
  void highlight(const cabana::Signal *sig);
  void showChart(const MessageId &id, const cabana::Signal *sig, bool show, bool merge);
  
  private:
    void rowsChanged();
    void leaveEvent(QEvent *event);
  
keep keep keep keep replace replace keep keep keep keep keep
 cabana: refactor Msg and Signal into dbc.cc (#27552) 
tools/cabana/signaledit.h