Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- tg::Panel::Ptr main_panel = theme->load("Panel");
- main_panel->setSize(tg::bindSize(gui));
- tg::VerticalLayout::Ptr v_l = std::make_shared<tg::VerticalLayout>();
- v_l->setSize(tg::bindSize(main_panel));
- tg::MenuBar::Ptr tool_panel = theme->load("MenuBar"); //Main buttons dock
- tool_panel->addMenu("File");
- tool_panel->addMenuItem("File", "Load");
- tool_panel->addMenuItem("File", "Save");
- tool_panel->addMenuItem("File", "Save As");
- tool_panel->addMenuItem("File", "Render to file");
- tool_panel->addMenuItem("File", "Exit");
- tool_panel->addMenu("Options");
- tool_panel->addMenuItem("Options", "Editor");
- tool_panel->addMenuItem("Options", "Theme");
- tool_panel->addMenuItem("Options", "Window");
- tool_panel->addMenu("Compile");
- tool_panel->addMenuItem("Compile", "All");
- tool_panel->addMenuItem("Compile", "Vertex Shader");
- tool_panel->addMenuItem("Compile", "Fragment Shader");
- tool_panel->addMenu("Help");
- tool_panel->addMenuItem("Help", "Predefined values");
- tool_panel->addMenuItem("Help", "Vertex Shader");
- tool_panel->addMenuItem("Help", "Fragment Shader");
- //
- tg::HorizontalLayout::Ptr dev_panel = std::make_shared<tg::HorizontalLayout>(); //Render and Editor dock
- v_l->add(dev_panel, "DevPanel");
- v_l->setRatio(dev_panel, 20);
- v_l->add(tool_panel, "ToolPanel");
- tg::Picture::Ptr result_layer = std::make_shared<tg::Picture>(); //Left Render Texture window
- dev_panel->add(result_layer, "RenderResult");
- tg::VerticalLayout::Ptr editors_box = std::make_shared<tg::VerticalLayout>(); //Editors box
- dev_panel->add(editors_box, "EditorsBox");
- //Vertex shader
- tg::EditBox::Ptr vertex_editor = theme->load("EditBox");
- vertex_editor->setTextSize(12);
- vertex_editor->setText("\
- void main()\n\
- {\n\
- // transform the vertex position\n\
- gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;\n\n\
- // transform the texture coordinates\n\
- gl_TexCoord[0] = gl_TextureMatrix[0] * gl_MultiTexCoord0;\n\n\
- // forward the vertex color\n\
- gl_FrontColor = gl_Color;\n\
- }");
- editors_box->add(vertex_editor, "VertexShaderEditor");
- //Fragment shader
- tg::TextBox::Ptr fragment_editor = theme->load("TextBox");
- fragment_editor->setTextSize(12);
- fragment_editor->setText("uniform sampler2D texture;\n\
- void main()\n\
- {\n\
- // lookup the pixel in the texture\n\
- vec4 pixel = texture2D(texture, gl_TexCoord[0].xy);\n\n\
- // multiply it by the color\n\
- gl_FragColor = gl_Color * pixel;\n\
- }");
- editors_box->add(fragment_editor, "FragmentShaderEditor");
- main_panel->add(v_l);
- gui.add(main_panel, "MainPanel");
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement