From 33d71198a65f2c45274a15408223113770d4042c Mon Sep 17 00:00:00 2001 From: dos-reis Date: Sun, 29 May 2011 03:45:41 +0000 Subject: Rename C++ source files to have .cc extension --- src/gui/debate.cc | 67 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 src/gui/debate.cc (limited to 'src/gui/debate.cc') diff --git a/src/gui/debate.cc b/src/gui/debate.cc new file mode 100644 index 00000000..ba58c522 --- /dev/null +++ b/src/gui/debate.cc @@ -0,0 +1,67 @@ +// Copyright (C) 2011, Gabriel Dos Reis. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// - Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// +// - Redistributions in binary form must reproduce the above copyright +// notice, this list of conditions and the following disclaimer in +// the documentation and/or other materials provided with the +// distribution. +// +// - Neither the name of OpenAxiom. nor the names of its contributors +// may be used to endorse or promote products derived from this +// software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +// IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +// TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +// PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER +// OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +// LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#include +#include "debate.h" +#include + +namespace OpenAxiom { + + static void + start_interpreter(Conversation* conv) { + QStringList args; + args << "--no-server" << "--role=slave"; + conv->oracle()->start("open-axiom",args); + } + + Debate::Debate(QWidget* parent) + : QScrollArea(parent), conv(*this) { + setWidget(&conv); + setViewportMargins(0, 0, 0, 0); + viewport()->setAutoFillBackground(true); + viewport()->setBackgroundRole(conv.backgroundRole()); + setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded); + setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOn); + adjustSize(); + start_interpreter(exchanges()); + } + + Debate::~Debate() { } + + void Debate::resizeEvent(QResizeEvent* e) { + QScrollArea::resizeEvent(e); + if (conv.length() != 0) + conv.resize(viewport()->size()); + setSizePolicy(QSizePolicy::MinimumExpanding, + QSizePolicy::MinimumExpanding); + } + +} -- cgit v1.2.3