Beispiel #1
0
MainFrame::MainFrame()
{
	mAllLookFeel = new AllLookFeel;
	mAllLookFeel->InitEditorHelper();

	mMainMenu = new MainMenu;
	mMainStatusBar = new MainStatusBar;

	mLookFeelEditor= new LookFeelEditor;
	mLayoutEditor = new LayoutEditor;

	SetEditorMode(EM_Lookfeel);

	Layout();
}
Beispiel #2
0
OpenWarSurface::OpenWarSurface(glm::vec2 size, float pixelDensity) : Surface(size, pixelDensity),
    _buttonRendering(nullptr),
    _editorModel(nullptr),
    _editorGesture(nullptr),
    _buttonsTopLeft(nullptr),
    _buttonsTopRight(nullptr),
    _buttonGesture(nullptr),
    _buttonItemHand(nullptr),
    _buttonItemPaint(nullptr),
    _buttonItemErase(nullptr),
    _buttonItemSmear(nullptr),
    _buttonItemHills(nullptr),
    _buttonItemTrees(nullptr),
    _buttonItemWater(nullptr),
    _buttonItemFords(nullptr),
    _scriptHintRenderer(nullptr),
    _battleLayer(nullptr)
{
    _battleLayer = new BattleLayer();
    _battleLayer->SetContainer(this);

    _buttonRendering = new ButtonRendering(renderers::singleton, pixelDensity);

    _buttonsTopLeft = new ButtonGrid(_buttonRendering, ButtonAlignment::TopLeft);
    _buttonsTopRight = new ButtonGrid(_buttonRendering, ButtonAlignment::TopRight);

    _buttonsTopLeft->SetContainer(this);
    _buttonsTopRight->SetContainer(this);

    _buttonGesture = new ButtonGesture(this);
    _buttonGesture->buttonViews.push_back(_buttonsTopLeft);
    _buttonGesture->buttonViews.push_back(_buttonsTopRight);

    ButtonArea* toolButtonArea = _buttonsTopLeft->AddButtonArea(4);
    _buttonItemHand = toolButtonArea->AddButtonItem(_buttonRendering->buttonEditorToolHand);
    _buttonItemSmear = toolButtonArea->AddButtonItem(_buttonRendering->buttonEditorToolSmear);
    _buttonItemPaint = toolButtonArea->AddButtonItem(_buttonRendering->buttonEditorToolPaint);
    _buttonItemErase = toolButtonArea->AddButtonItem(_buttonRendering->buttonEditorToolErase);

    ButtonArea* featureButtonArea = _buttonsTopLeft->AddButtonArea(4);
    _buttonItemHills = featureButtonArea->AddButtonItem(_buttonRendering->buttonEditorToolHills);
    _buttonItemTrees = featureButtonArea->AddButtonItem(_buttonRendering->buttonEditorToolTrees);
    _buttonItemWater = featureButtonArea->AddButtonItem(_buttonRendering->buttonEditorToolWater);
    _buttonItemFords = featureButtonArea->AddButtonItem(_buttonRendering->buttonEditorToolFords);

    _buttonItemHand->SetAction([this]() {
        SetEditorMode(EditorMode::Hand);
    });
    _buttonItemPaint->SetAction([this]() {
        SetEditorMode(EditorMode::Paint);
    });
    _buttonItemErase->SetAction([this]() {
        SetEditorMode(EditorMode::Erase);
    });
    _buttonItemSmear->SetAction([this]() {
        SetEditorMode(EditorMode::Smear);
    });
    _buttonItemHills->SetAction([this]() {
        SetEditorFeature(TerrainFeature::Hills);
    });
    _buttonItemTrees->SetAction([this]() {
        SetEditorFeature(TerrainFeature::Trees);
    });
    _buttonItemWater->SetAction([this]() {
        SetEditorFeature(TerrainFeature::Water);
    });
    _buttonItemFords->SetAction([this]() {
        SetEditorFeature(TerrainFeature::Fords);
    });

    _buttonItemHand->SetKeyboardShortcut('1');
    _buttonItemSmear->SetKeyboardShortcut('2');
    _buttonItemPaint->SetKeyboardShortcut('3');
    _buttonItemErase->SetKeyboardShortcut('4');
    _buttonItemHills->SetKeyboardShortcut('5');
    _buttonItemTrees->SetKeyboardShortcut('6');
    _buttonItemWater->SetKeyboardShortcut('7');
    _buttonItemFords->SetKeyboardShortcut('8');

    OnFrameChanged();
    UpdateButtonsAndGestures();

    _scriptHintRenderer = new GradientLineShape3(GetGraphicsContext());
}