1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148
|
/*
Copyright (C) 2007 Staikos Computing Services Inc.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public License
along with this library; see the file COPYING.LIB. If not, write to
the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.
*/
#include "config.h"
#include "UndoStepQt.h"
#include <qobject.h>
using namespace WebCore;
static QString undoNameForEditAction(const EditAction editAction)
{
switch (editAction) {
case EditActionUnspecified:
return QString();
case EditActionSetColor:
return QObject::tr("Set Color");
case EditActionSetBackgroundColor:
return QObject::tr("Set Background Color");
case EditActionTurnOffKerning:
return QObject::tr("Turn Off Kerning");
case EditActionTightenKerning:
return QObject::tr("Tighten Kerning");
case EditActionLoosenKerning:
return QObject::tr("Loosen Kerning");
case EditActionUseStandardKerning:
return QObject::tr("Use Standard Kerning");
case EditActionTurnOffLigatures:
return QObject::tr("Turn Off Ligatures");
case EditActionUseStandardLigatures:
return QObject::tr("Use Standard Ligatures");
case EditActionUseAllLigatures:
return QObject::tr("Use All Ligatures");
case EditActionRaiseBaseline:
return QObject::tr("Raise Baseline");
case EditActionLowerBaseline:
return QObject::tr("Lower Baseline");
case EditActionSetTraditionalCharacterShape:
return QObject::tr("Set Traditional Character Shape");
case EditActionSetFont:
return QObject::tr("Set Font");
case EditActionChangeAttributes:
return QObject::tr("Change Attributes");
case EditActionAlignLeft:
return QObject::tr("Align Left");
case EditActionAlignRight:
return QObject::tr("Align Right");
case EditActionCenter:
return QObject::tr("Center");
case EditActionJustify:
return QObject::tr("Justify");
case EditActionSetWritingDirection:
return QObject::tr("Set Writing Direction");
case EditActionSubscript:
return QObject::tr("Subscript");
case EditActionBold:
return QObject::tr("Bold");
case EditActionItalics:
return QObject::tr("Italic");
case EditActionSuperscript:
return QObject::tr("Superscript");
case EditActionUnderline:
return QObject::tr("Underline");
case EditActionOutline:
return QObject::tr("Outline");
case EditActionUnscript:
return QObject::tr("Unscript");
case EditActionDrag:
return QObject::tr("Drag");
case EditActionCut:
return QObject::tr("Cut");
case EditActionPaste:
return QObject::tr("Paste");
case EditActionPasteFont:
return QObject::tr("Paste Font");
case EditActionPasteRuler:
return QObject::tr("Paste Ruler");
case EditActionTyping:
return QObject::tr("Typing");
case EditActionCreateLink:
return QObject::tr("Create Link");
case EditActionUnlink:
return QObject::tr("Unlink");
case EditActionInsertList:
return QObject::tr("Insert List");
case EditActionFormatBlock:
return QObject::tr("Formatting");
case EditActionIndent:
return QObject::tr("Indent");
case EditActionOutdent:
return QObject::tr("Outdent");
}
ASSERT_NOT_REACHED();
return QString();
}
UndoStepQt::UndoStepQt(WTF::RefPtr<UndoStep> step)
: m_step(step)
, m_first(true)
{
m_text = undoNameForEditAction(step->editingAction());
}
UndoStepQt::~UndoStepQt()
{
}
void UndoStepQt::redo()
{
if (m_first) {
m_first = false;
return;
}
if (m_step)
m_step->reapply();
}
void UndoStepQt::undo()
{
if (m_step)
m_step->unapply();
}
QString UndoStepQt::text() const
{
return m_text;
}
// vim: ts=4 sw=4 et
|