52 lines
1.4 KiB
C++
52 lines
1.4 KiB
C++
|
|
#include "main_window.hpp"
|
||
|
|
|
||
|
|
#include <FL/Fl_Box.H>
|
||
|
|
#include <FL/Fl_Menu_Bar.H>
|
||
|
|
#include <FL/Fl_Tabs.H>
|
||
|
|
#include <FL/Fl_Group.H>
|
||
|
|
|
||
|
|
extern "C" {
|
||
|
|
#include "xtlite/xtlite.h"
|
||
|
|
}
|
||
|
|
|
||
|
|
MainWindow::MainWindow()
|
||
|
|
: Fl_Double_Window(1000, 680, "xtlite — modular audio workstation")
|
||
|
|
{
|
||
|
|
begin();
|
||
|
|
|
||
|
|
Fl_Menu_Bar *menu = new Fl_Menu_Bar(0, 0, 1000, 28);
|
||
|
|
menu->add("File/New", 0, nullptr);
|
||
|
|
menu->add("File/Open...", 0, nullptr);
|
||
|
|
menu->add("File/Save", 0, nullptr);
|
||
|
|
menu->add("Help/About", 0, nullptr);
|
||
|
|
|
||
|
|
Fl_Tabs *tabs = new Fl_Tabs(8, 36, 984, 600);
|
||
|
|
tabs->begin();
|
||
|
|
|
||
|
|
Fl_Group *sequencer = new Fl_Group(8, 60, 984, 576, "Sequencer");
|
||
|
|
sequencer->begin();
|
||
|
|
new Fl_Box(24, 84, 940, 40,
|
||
|
|
"Sequencer placeholder — timeline and clips are not implemented yet.");
|
||
|
|
sequencer->end();
|
||
|
|
|
||
|
|
Fl_Group *mixer = new Fl_Group(8, 60, 984, 576, "Mixer");
|
||
|
|
mixer->begin();
|
||
|
|
new Fl_Box(24, 84, 940, 40,
|
||
|
|
"Mixer placeholder — channels and meters are not implemented yet.");
|
||
|
|
mixer->end();
|
||
|
|
|
||
|
|
Fl_Group *graph = new Fl_Group(8, 60, 984, 576, "Modular Graph");
|
||
|
|
graph->begin();
|
||
|
|
new Fl_Box(24, 84, 940, 40,
|
||
|
|
"Modular graph placeholder — the C graph API is the current prototype.");
|
||
|
|
graph->end();
|
||
|
|
|
||
|
|
tabs->end();
|
||
|
|
end();
|
||
|
|
resizable(tabs);
|
||
|
|
}
|
||
|
|
|
||
|
|
void MainWindow::show(int argc, char **argv)
|
||
|
|
{
|
||
|
|
Fl_Double_Window::show(argc, argv);
|
||
|
|
}
|