view anagram/vaclgui/dvplug.hpp @ 0:13d2b8934445

Import AnaGram (near-)release tree into Mercurial.
author David A. Holland
date Sat, 22 Dec 2007 17:52:45 -0500
parents
children
line wrap: on
line source

/*
 * AnaGram, A System for Syntax Directed Programming
 * Copyright 1997-2002 Parsifal Software. All Rights Reserved.
 * See the file COPYING for license and usage terms.
 *
 * dvplug.hpp
 */

#ifndef DVPLUG_HPP
#define DVPLUG_HPP

#include "agarray.h"
#include "dc.h"
#include "dview.hpp"
#include "wdata.h"


class AgDataViewPlug
 : public WindowData
 , public WindowConnector
{
private:
  dc_ref displayControl;
  AgDataView *dataView;

public:
  AgDataViewPlug(dc_ref control)
    : displayControl(control)
    , dataView(0)
  {}

  virtual ~AgDataViewPlug();

  void disconnect();
  void setFocus();
  int getCursorLine();
  AgDataViewPlug *windowData() { return this; }
  virtual void synchCursor(unsigned);

  static IColor color[10];

  void connect(AgDataView *dataView_) {
    //LOGSECTION("AgDataViewPlug::connect");
    dataView = dataView_;
  }
  AgArray<AgMenuItem> auxMenu();
  virtual void show();

  AgString getLine(unsigned k);
  AgString findHelpTopic();
  unsigned nColumns();
  unsigned nLines();
  int nextChildId();

  AgString fileName();
  AgString headTitle();
  AgString columnHeadTitle();
  AgString footTitle();

  int syntaxDependent();
};

#endif /* DVPLUG_HPP */