Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: ngscopeclient/scopehal-apps
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 47c1abe655f2
Choose a base ref
...
head repository: ngscopeclient/scopehal-apps
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: ed32a5748388
Choose a head ref
  • 1 commit
  • 1 file changed
  • 1 contributor

Commits on Sep 1, 2019

  1. Copy the full SHA
    ed32a57 View commit details
Showing with 73 additions and 3 deletions.
  1. +73 −3 psuclient/MainWindow.cpp
76 changes: 73 additions & 3 deletions psuclient/MainWindow.cpp
Original file line number Diff line number Diff line change
@@ -133,32 +133,102 @@ void MainWindow::CreateWidgets()
auto aframe = Gtk::manage(new Gtk::Frame);
aframe->set_label("Actual");
vbox->pack_start(*aframe, Gtk::PACK_SHRINK);
auto avbox = Gtk::manage(new Gtk::VBox);
aframe->add(*avbox);

auto avvbox = Gtk::manage(new Gtk::HBox);
avbox->pack_start(*avvbox, Gtk::PACK_SHRINK);
auto avlabel = Gtk::manage(new Gtk::Label);
avlabel->set_label("Voltage");
avlabel->set_size_request(75, 1);
avvbox->pack_start(*avlabel, Gtk::PACK_SHRINK);
auto aventry = Gtk::manage(new Gtk::Entry);
avvbox->pack_start(*aventry, Gtk::PACK_SHRINK);

auto avibox = Gtk::manage(new Gtk::HBox);
avbox->pack_start(*avibox, Gtk::PACK_SHRINK);
auto ailabel = Gtk::manage(new Gtk::Label);
ailabel->set_label("Current");
ailabel->set_size_request(75, 1);
avibox->pack_start(*ailabel, Gtk::PACK_SHRINK);
auto aientry = Gtk::manage(new Gtk::Entry);
avibox->pack_start(*aientry, Gtk::PACK_SHRINK);

//Voltage and current SET POINT box
auto tframe = Gtk::manage(new Gtk::Frame);
tframe->set_label("Target");
vbox->pack_start(*tframe, Gtk::PACK_SHRINK);

auto tvbox = Gtk::manage(new Gtk::VBox);
tframe->add(*tvbox);

auto tvvbox = Gtk::manage(new Gtk::HBox);
tvbox->pack_start(*tvvbox, Gtk::PACK_SHRINK);
auto tvlabel = Gtk::manage(new Gtk::Label);
tvlabel->set_label("Voltage");
tvlabel->set_size_request(75, 1);
tvvbox->pack_start(*tvlabel, Gtk::PACK_SHRINK);
auto tventry = Gtk::manage(new Gtk::Entry);
tvvbox->pack_start(*tventry, Gtk::PACK_SHRINK);

auto tvibox = Gtk::manage(new Gtk::HBox);
tvbox->pack_start(*tvibox, Gtk::PACK_SHRINK);
auto tilabel = Gtk::manage(new Gtk::Label);
tilabel->set_label("Current");
tilabel->set_size_request(75, 1);
tvibox->pack_start(*tilabel, Gtk::PACK_SHRINK);
auto tientry = Gtk::manage(new Gtk::Entry);
tvibox->pack_start(*tientry, Gtk::PACK_SHRINK);

//Miscellaneous settings box
auto sframe = Gtk::manage(new Gtk::Frame);
sframe->set_label("Settings");
vbox->pack_start(*sframe, Gtk::PACK_SHRINK);
hbox->pack_start(*sframe, Gtk::PACK_SHRINK);

auto sbox = Gtk::manage(new Gtk::VBox);
sframe->add(*sbox);

//Checkboxes for settings
auto sstart = Gtk::manage(new Gtk::CheckButton);
sstart->set_label("Soft start");
sbox->pack_start(*sstart, Gtk::PACK_SHRINK);

auto ocbox = Gtk::manage(new Gtk::HBox);
sbox->pack_start(*ocbox, Gtk::PACK_SHRINK);
auto oclabel = Gtk::manage(new Gtk::Label);
oclabel->set_text("Overcurrent mode");
ocbox->pack_start(*oclabel, Gtk::PACK_SHRINK);
auto occombo = Gtk::manage(new Gtk::ComboBoxText);
occombo->append("Current limit");
occombo->append("Shut down");
ocbox->pack_start(*occombo, Gtk::PACK_SHRINK);
oclabel->set_size_request(125, 1);

auto pebox = Gtk::manage(new Gtk::HBox);
sbox->pack_start(*pebox, Gtk::PACK_SHRINK);
auto pelabel = Gtk::manage(new Gtk::Label);
pelabel->set_text("Power");
pebox->pack_start(*pelabel, Gtk::PACK_SHRINK);

pelabel->set_size_request(125, 1);
auto pswitch = Gtk::manage(new Gtk::Switch);
pebox->pack_start(*pswitch, Gtk::PACK_SHRINK);

//Vertical box for graphs
auto gbox = Gtk::manage(new Gtk::VBox);
hbox->pack_start(*gbox, Gtk::PACK_SHRINK);

//Graphs for I/V
auto vgraph = Gtk::manage(new Graph);
vgraph->set_size_request(400, 100);
vgraph->set_size_request(600, 100);
vgraph->m_units = "V";
vgraph->m_minScale = 0;
vgraph->m_maxScale = 5;
vgraph->m_scaleBump = 1;
gbox->pack_start(*vgraph, Gtk::PACK_SHRINK);

auto igraph = Gtk::manage(new Graph);
igraph->set_size_request(400, 100);
igraph->set_size_request(600, 100);
igraph->m_units = "A";
igraph->m_minScale = 0;
igraph->m_maxScale = 5;