Changeset 721
- Timestamp:
- 07/30/07 22:13:36 (1 year ago)
- Files:
-
- other/dps/trunk/dsssps/components.d (modified) (6 diffs)
- other/dps/trunk/dsssps/dps.d (modified) (2 diffs)
- other/dps/trunk/dsssps/process.d (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
other/dps/trunk/dsssps/components.d
r715 r721 48 48 dpsApp.aui.AddPane( 49 49 (new DPSProcessWindow("dsss build" ~ buildName)), 50 Direction.wx RIGHT,50 Direction.wxBOTTOM, 51 51 "dsss build" ~ buildName); 52 52 dpsApp.aui.Update(); … … 59 59 dpsApp.aui.AddPane( 60 60 (new DPSProcessWindow("dsss build" ~ buildName ~ " -v")), 61 Direction.wx RIGHT,61 Direction.wxBOTTOM, 62 62 "dsss build" ~ buildName ~ " -v"); 63 63 dpsApp.aui.Update(); … … 69 69 dpsApp.aui.AddPane( 70 70 (new DPSProcessWindow("dsss distclean" ~ buildName)), 71 Direction.wx RIGHT,71 Direction.wxBOTTOM, 72 72 "dsss distclean" ~ buildName); 73 73 dpsApp.aui.Update(); … … 352 352 dpsApp.aui.AddPane( 353 353 (new DPSProcessWindow("dsss build " ~ name)), 354 Direction.wx RIGHT,354 Direction.wxBOTTOM, 355 355 "dsss build " ~ name); 356 356 dpsApp.aui.Update(); … … 362 362 dpsApp.aui.AddPane( 363 363 (new DPSProcessWindow("dsss build -v " ~ name)), 364 Direction.wx RIGHT,364 Direction.wxBOTTOM, 365 365 "dsss build -v " ~ name); 366 366 dpsApp.aui.Update(); … … 372 372 dpsApp.aui.AddPane( 373 373 (new DPSProcessWindow("dsss distclean " ~ name)), 374 Direction.wx RIGHT,374 Direction.wxBOTTOM, 375 375 "dsss distclean " ~ name); 376 376 dpsApp.aui.Update(); other/dps/trunk/dsssps/dps.d
r719 r721 49 49 // remove the prefix if applicable 50 50 if (prefix != "") { 51 Cout(prefix).newline;52 51 flist = flist.dup; 53 52 foreach (k, f; flist) { … … 182 181 /// The top-level frame in which the AUI sits 183 182 frame = new wxFrame(null, wxID_ANY, "DSSS Project Studio", 184 wxFrame.wxDefaultPosition, wxSize(800, 600)); 183 wxFrame.wxDefaultPosition, wxSize(800, 600), 184 wxFrame.wxDEFAULT_FRAME_STYLE | wxFrame.wxTAB_TRAVERSAL); 185 185 186 186 // The AUI controls the frame other/dps/trunk/dsssps/process.d
r717 r721 24 24 class DPSProcessWindow : wxTextCtrl { 25 25 Process proc; 26 wxTimer timer; 26 27 bool fin = false; 27 28 … … 40 41 41 42 // because we're not using a wxProcess, we just have to poll 42 EVT_IDLE(&OnIdle); 43 timer = new wxTimer(this); 44 EVT_TIMER(&OnTimer); 45 timer.Start(100); 43 46 } 44 47 45 void On Idle(Object s, wxEvent e)48 void OnTimer(Object s, wxEvent e) 46 49 { 47 if (fin) return;48 49 50 // check for new input [FIXME] 50 51 char[1024] buf; … … 57 58 } 58 59 } catch (Exception e) {} // ignore errors 59 (cast(wxIdleEvent) e).RequestMore();60 60 61 61 // check if we're done … … 65 65 66 66 // done, mark so 67 fin = true;67 timer.Stop(); 68 68 AppendText("\n\nProgram terminated.\n\nSTDERR:\n"); 69 69 … … 80 80 class DPSProcessRun : wxFrame { 81 81 Process proc; 82 wxTimer timer; 82 83 void delegate() endF; 83 84 … … 94 95 95 96 // because we're not using a wxProcess, we just have to poll 96 EVT_IDLE(&OnIdle); 97 timer = new wxTimer(this); 98 EVT_TIMER(&OnTimer); 99 timer.Start(100); 97 100 } 98 101 99 void On Idle(Object s, wxEvent e)102 void OnTimer(Object s, wxEvent e) 100 103 { 101 104 // check if it's dead … … 103 106 // boom! 104 107 endF(); 108 timer.Stop(); 105 109 Destroy(); 106 110 }
