ComplexStatsWin::ComplexStatsWin() { CtrlLayoutOK(*this, t_("Complex statistics")); interval.Add(siDay, t_("Day")); interval.Add(siMonth,t_("Month")); interval.Add(siDateRange,t_("Date range")); interval.SetData(siDay); interval.WhenAction = THISBACK(when_interval_changes); day_date.SetData(GetSysDate()); day_date.WhenAction = THISBACK(refresh); month_date.SetData(GetSysDate()); month_date.Enable(false); month_date.WhenAction = THISBACK(refresh); date_from.SetData(GetSysDate()); date_from.Enable(false); date_from.WhenAction = THISBACK(refresh); date_to.SetData(GetSysDate()); date_to.Enable(false); date_to.WhenAction = THISBACK(refresh); products.AddColumn(NAME, t_("Product")); products.AddColumn(NAME, t_("Count")); clients.AddColumn(NAME, t_("Title")); clients.AddColumn(FIRST_NAME, t_("FName")); clients.AddColumn(LAST_NAME, t_("Surname")); tablist.Add(products.SizePos(), t_("Sold")); tablist.Add(clients.SizePos(), t_("Clients")); refresh(); }
CtrlPosTest::CtrlPosTest() { SetRect(Size(400,400)); Sizeable().Zoomable(); CtrlLayout(vis); CtrlLayout(sb); sb.Width(sb.GetSize().cx); vis.AddFrame(sb); vis.pc.Add(es.HCenterPos(50).VCenterPos(20)); st.SetText("STATIC"); vis.pc.Add(st.LeftPos(10,50).TopPos(20,20)); CtrlLayout(ft); ft.Height(ft.GetSize().cy); AddFrame(ft); CtrlLayout(bot); bot.Height(50); vis.pc.AddFrame(bot); ft.visit <<= THISBACK(VisitCB); ft.clear <<= THISBACK(ClearCB); ft.enable <<= THISBACK(EnableCB); ft.disable <<= THISBACK(DisableCB); ft.deep <<= THISBACK(DeepCB); ft.frame <<= THISBACK(FrameCB); ft.view <<= THISBACK(ViewCB); ft.deep <<= true; DeepCB(); ft.frame <<= true; FrameCB(); ft.view <<= true; ViewCB(); Add(sc.SizePos()); sc.AddPane(vis); sc.WhenScrolled = callback(&hk, &CtrlPos::Update); hk.WhenLeftSelect = THISBACK(OnSelect); hk.SetSource(&vis); hk.SetFocus(); }
//Main game Fifteen::Fifteen() { SetGameAreaBackground(); SetGameArray(); SetTimeCallback(REFRESH, THISBACK(DrawGameArea)); SetTimeCallback(-SEC, THISBACK(CountTime)); SetTimeCallback(REFRESH, THISBACK(GameOver)); SetTimeCallback(REFRESH, THISBACK(ClickTile)); newgame <<= THISBACK (SetGameArray); solve <<= THISBACK (SolutionClick); help <<= THISBACK(HelpClick); CtrlLayout(*this, "Piętnastka"); }
VisGenDlg::VisGenDlg(LayoutData& layout, const Vector<int>& cursor) : layout(layout) { type <<= 0; CtrlLayoutOKCancel(*this, "Code generator"); type <<= THISBACK(Type); name <<= pars <<= toupper1 <<= quotes1 <<= name1 <<= toupper2 <<= quotes2 <<= name2 <<= THISBACK(Refresh); Refresh(); view.Highlight(CodeEditor::HIGHLIGHT_CPP); view.HideBar(); view.SetFont(Courier(12)); if(cursor.GetCount()) sel <<= cursor; else for(int i = 0; i < layout.item.GetCount(); i++) sel.Add(i); }
void FormView::CreateObjectMenu(Bar& bar, int id) { int selCount = GetSelected().GetCount(); if (selCount > 1) bar.Add(t_("Align selected"), THISBACK(AlignObjectMenu)); if (selCount != GetObjectCount()) bar.Add(t_("Invert selection"), THISBACK(InvertSelection)); if ((selCount != GetObjectCount()) || selCount > 1) bar.Separator(); if (selCount == 1) { bar.Add(t_("Outline"), THISBACK1(ToggleOutlineDraw, id)).Check(IsOutlineDraw(id)); bar.Separator(); } if (selCount <= 1) { bar.Add(t_("Top"), THISBACK1(MoveToTopObject, id)); bar.Add(t_("Up"), THISBACK1(MoveUpObject, id)); bar.Add(t_("Down"), THISBACK1(MoveDownObject, id)); bar.Add(t_("Bottom"), THISBACK1(MoveToBottomObject, id)); bar.Separator(); } bar.Add(t_("Delete"), THISBACK(RemoveSelection)); if (selCount >= 1) { bar.Separator(); bar.Add(t_("Properties"), THISBACK1(OpenObjectProperties, GetSelected())); } }
NAMESPACE_UPP #define BackColor SColorFace() /////////////////////////////////////////////////////////////////////////////////////////////// // constructor PixRasterBaseCtrl::PixRasterBaseCtrl(PixRasterCtrl *t, bool hScroll, bool vScroll) { // connects to associated RasterCtrl pixRasterCtrl = t; // whether control has scrollbars hasHScrollBar = hScroll; hasVScrollBar = vScroll; // adds scrollbar if(hasHScrollBar) { AddFrame(hScrollBar.Horz()); hScrollBar <<= THISBACK(OnScroll); } if(hasVScrollBar) { AddFrame(vScrollBar.Vert()); vScrollBar <<= THISBACK(OnScroll); } // marks cache as invalid imageCache.SetValid(false); // no marker selected selectedMarker = NULL; highlightMarker = NULL; dragPolygon.Clear(); } // END constructor class PixRasterBaseCtrl
DocEdit::DocEdit() { updownleave = false; cx = 0; filter = NULL; after = 0; font = StdFont(); AutoHideSb(); SetFrame(ViewFrame()); AddFrame(sb); sb.SetLine(8); sb.WhenScroll = THISBACK(Scroll); InsertLines(0, 1); eofline = true; }
void LevelEditor::LoadMap() { Map map; for (int i = 0; i < _pos; ++i) map.GetLevels().Add(Level()); map.GetLevels().Add(Level(*_level)); map.SetName(_map->GetName()); EditView.LoadMap(map, true); EditView.SetCurrentLevel(_pos); EditView.GetCurrentLevel()->WhenChangePoint = THISBACK(OnChangePoint); EditView.HighQuality(false); }
CmdBuildOptionsWindow(const String& package, const String& method, const String& mainconfigparam, const String& output, int targetmode, int hydra1_threads, int linkmode, bool blitzbuild, bool createmap, bool verbosebuild) : cmdPackage(package), cmdMethod(method) { CtrlLayout(*this, t_("Command line options for building")); MinimizeBox().CloseBoxRejects(); threads <<= hydra1_threads; threads.NotNull(false); cmdAssembly = GetVarsName(); cmdBuildMode = (targetmode == 1 ? "r" : targetmode == 2 ? "1" : targetmode == 3 ? "2" : "d"); if (mainconfigparam.GetCount()) { cmdMainConfig = mainconfigparam; cmdMainConfig.Replace(" ", ","); cmdMainConfig.Insert(0, " +"); } if (blitzbuild) blitz <<= true; switch(linkmode) { case 1: shared <<= true; break; case 2: sharedbuild <<= true; break; } exportproject <<= 0; map <<= createmap; verbose <<= verbosebuild; out <<= output; out.SetConvert(Single<PathConvert>()); outoption <<= true; umk <<= true; rebuild.WhenAction = blitz.WhenAction = msgonfail.WhenAction = silent.WhenAction = map.WhenAction = verbose.WhenAction = makefile.WhenAction = savetargetdir.WhenAction = exportproject.WhenAction = umk.WhenAction = threads.WhenAction = out.WhenAction = outoption.WhenAction = THISBACK(GenerateCmd); shared.WhenAction = THISBACK(OnShared); sharedbuild.WhenAction << THISBACK(OnSharedBuild); btnCopy.WhenPush = callback(&cmd, &TextCtrl::Copy); }
void SeriesTab::Init(ScatterCtrl& scatter) { CtrlLayout(*this); SizePos(); pscatter = &scatter; list.Reset(); list.SetLineCy(EditField::GetStdHeight()); list.AddColumn(t_("Name")); for(int i = 0; i < scatter.GetCount(); i++) list.Add(scatter.GetLegend(i)); list.SetCursor(0); list.WhenSel = THISBACK(UpdateFields); markstyle.Add(t_("No mark")); for(int i = 0; i < MarkPlot::GetCount(); i++) markstyle.Add(MarkPlot::TypeName(i)); markstyle.SetIndex(0); UpdateFields(); linecolor <<= THISBACK(Change); fillcolor <<= THISBACK(Change); visible <<= THISBACK(Change); dash <<= THISBACK(Change); linethickness <<= THISBACK(Change); markstyle <<= THISBACK(Change); markcolor <<= THISBACK(Change); markwidth <<= THISBACK(Change); rename <<= THISBACK(Rename); name.SetFocus(); }
Crush::Crush() { arcCrush.AddColumn(t_("Artista")); arcCrush.AddColumn(t_("Disco")); arcCrush.SetSortColumn(0); arcCrush.Set(0, 0, "Morbid Angel"); arcCrush.Set(0, 1, "Domination"); arcCrush.Set(1, 0, "Cradle of Filth"); arcCrush.Set(1, 1, "The Principle of Evil Made Flesh"); btnCrush <<= THISBACK(CrushThis); Zoomable().Sizeable(); CtrlLayout(*this, "Crush Example"); }
void MapEditor::OnAddLevel() { int row = LevelList.GetRowCount(); Level level; level.SetName(NFormat(t_("Level #%d"), _map.GetLevels().GetCount() + 1)); level.WhenMapList = THISBACK(OnLevelMapList); level.WhenCalculate = THISBACK1(OnLevelMapCalc, row); if (level.OpenProperties() != IDOK) return; _map.GetLevels().Add(level); UpdateLevelList(); }
//меню файл void AnimeList::FileMenu(Bar& bar) { bar.Add("Open", CtrlImg::open(), THISBACK(Open)); bar.Add("Save", CtrlImg::save(), THISBACK(Save)); bar.Add("Save As...", CtrlImg::save_as(), THISBACK(SaveAs)); bar.Separator(); bar.Add("Close File", THISBACK(CloseFile)); bar.Separator(); bar.Add("Last File", THISBACK(OpenLastFile)); bar.Separator(); bar.Add("Print to File", CtrlImg::print(), THISBACK(PrintFile)); bar.Separator(); bar.Add("Exit", THISBACK(Quit)); }
void LayoutDesigner::ItemBar(Bar& bar) { int m = itemi.GetCount(); bar.Add(layouti >= 0, "New item", THISBACK(AddItem)) .Key(K_ENTER); bar.Add(m, "Remove item", THISBACK(Delete)) .Key(K_DELETE); bar.Add(m, "Move item up", THISBACK(MoveUp)) .Key(K_CTRL_UP); bar.Add(m, "Move item down", THISBACK(MoveDown)) .Key(K_CTRL_DOWN); bar.MenuSeparator(); bar.Add("Alignment", THISBACK(AlignBar)); bar.Add("Size", THISBACK(SizeBar)); bar.Add("Springs", THISBACK(SpringsBar)); bar.MenuSeparator(); bar.Add(m, "Matrix..", THISBACK(Matrix)) .Key(K_CTRL_M); }
void MeasuresTab::Init(ScatterCtrl& scatter) { CtrlLayout(*this); SizePos(); pscatter = &scatter; xMin <<= scatter.GetXMin(); xMax <<= scatter.GetXRange() + scatter.GetXMin(); yMin <<= scatter.GetYMin(); yMax <<= scatter.GetYRange() + scatter.GetYMin(); yMin2 <<= scatter.GetYMin2(); yMax2 <<= scatter.GetY2Range() + scatter.GetYMin2(); butUpdate.WhenAction = THISBACK(Change); Change(); }
void DataTab::OnTab() { int index = tab.Get(); if (index < 0) return; ScatterCtrl &scatter = *pscatter; ArrayCtrl &data = series[index].data; data.Reset(); data.MultiSelect().SetLineCy(EditField::GetStdHeight()); data.SetVirtualCount(int(scatter.GetCount(index))); dataSourceX.pscatter = dataSourceY.pscatter = pscatter; dataSourceX.index = dataSourceY.index = index; data.AddRowNumColumn("x").SetConvert(dataSourceX); data.AddRowNumColumn("y").SetConvert(dataSourceY); data.WhenBar = THISBACK(OnArrayBar); }
TopWindow::TopWindow() { GuiLock __; GuiPlatformConstruct(); TransparentBackPaint(); background = PaintRect(Single<DialogBackground>(), Null); SetStyle(StyleDefault()); center = 1; minsize = Size(80, 20); maximizebox = minimizebox = sizeable = tool = noclosebox = false; state = OVERLAPPED; WhenClose = THISBACK(Close); overlapped.Clear(); dokeys = true; fullscreen = frameless = urgent = false; close_rejects = false; }
// do setup work here Options::Options() { CtrlLayout(*this,"Options"); Icon(OptionsImg::Options()); // set callback for the save button btnSave <<= THISBACK(onbtnSave); // get the values from the config file VectorMap<String, String> cfg = LoadIniFile(cfgfile); int dontsplash = ScanInt(cfg.Get("Splash", Null)); int savewinpos = ScanInt(cfg.Get("SaveWinPos", Null)); // set option controls with current value from config file optSplash = dontsplash; optSaveWinPos = savewinpos; }
void LayoutDesigner::AlignBar(Bar& bar) { int m = itemi.GetCount(); bar.Add(m, "Vertical center in layout", TB_VERTCENTER(), THISBACK(VertCenter)) .Key(K_CTRL_F9); bar.Add(m, "Align label", TB_ALIGNLBL(), THISBACK(AlignLbl)) .Key(K_ALT_F9); bar.Add(m, "Horizontal center in layout", TB_HORZCENTER(), THISBACK(HorzCenter)) .Key(K_CTRL|K_SHIFT_F9); bar.Separator(); bar.Add(m > 1, "Left", TB_ALIGNLEFT(), THISBACK(AlignLeft)) .Key(K_ALT_LEFT); bar.Add(m > 1, "Horizontal center", TB_ALIGNHCENTER(), THISBACK(AlignHCenter)) .Key(K_SHIFT_F9); bar.Add(m > 1, "Right", TB_ALIGNRIGHT(), THISBACK(AlignRight)) .Key(K_ALT_RIGHT); bar.Separator(); bar.Add(m > 1, "Top", TB_ALIGNTOP(), THISBACK(AlignTop)) .Key(K_ALT_UP); bar.Add(m > 1, "Vertical center", TB_ALIGNVCENTER(), THISBACK(AlignVCenter)) .Key(K_F9); bar.Add(m > 1, "Bottom", TB_ALIGNBOTTOM(), THISBACK(AlignBottom)) .Key(K_ALT_DOWN); }
void TimerTest::Test() { int a = AtomicInc(demo); ASSERT(a==2); Info("O"); RLOG("O"); a = AtomicDec(demo); if(a<=0) return; ASSERT(a>=0); #ifdef REPEAT_TEST #else t.SetTimeCallback(TIMEOUT, THISBACK(Test), (int)this); #endif }
ScatterCtrl_Demo::ScatterCtrl_Demo() { CtrlLayout(*this, "Scatter Test"); for (int i = 0; i < Examples().GetCount(); ++i) Examples()[i].ctrl()->Init(); examplesList.NoHorzGrid().NoVertGrid(); examplesList.AddColumn("Example name"); for (int i = 0; i < Examples().GetCount(); ++i) { examplesList.Add(Examples()[i].name); Add((*(Examples()[i].ctrl())).HSizePosZ(180, 4).VSizePosZ(4, 8)); examplesRects.Add(Examples()[i].ctrl()); } examplesList.Add("Pie chart"); tabPie.Init(); Add(tabPie.HSizePosZ(180, 4).VSizePosZ(4, 8)); examplesRects.Add(&tabPie); for (int i = 0; i < examplesRects.GetCount(); ++i) examplesRects[i]->Hide(); bPreview <<= THISBACK(Preview); bSavePNG <<= THISBACK(SavePNG); bSaveJPG <<= THISBACK(SaveJPG); #ifdef PLATFORM_WIN32 bSaveEMF <<= THISBACK(SaveEMF); #else bSaveEMF.Hide(); #endif bCopyClipboard <<= THISBACK(CopyClipboard); paintMode.Add(ScatterDraw::MD_ANTIALIASED, "Painter Antialiased") .Add(ScatterDraw::MD_NOAA, "Painter No-Antialiased") .Add(ScatterDraw::MD_SUBPIXEL, "Painter Subpixel") .Add(ScatterDraw::MD_DRAW, "Draw"); paintMode <<= THISBACK(SetMode); paintMode.SetData(ScatterDraw::MD_ANTIALIASED); SetMode(); examplesList.WhenSel = THISBACK(OnSel); examplesList.SetCursor(13); OnSel(); Sizeable().Zoomable().Icon(MyImages::i1()); }
Bar::Item& MenuBar::AddItem(Event<> cb) { LLOG("MenuBar::AddItem " << Name()); MenuItemBase *q; if(IsChild()) q = new TopMenuItem; else q = new MenuItem; item.Add(q); pane.Add(q, Null); q->SetFont(font); q->LeftGap(Nvl(leftgap, style->leftgap)); q->TextGap(style->textgap); q->Style(style); q->MaxIconSize(IsNull(maxiconsize) ? style->maxiconsize : maxiconsize); *q <<= THISBACK(CloseMenu); *q << cb; return *q; }
void DataTab::Init(ScatterCtrl& scatter) { CtrlLayout(*this); SizePos(); pscatter = &scatter; tab.Reset(); series.Clear(); for(int c = 0; c < scatter.GetCount(); c++) if (!IsNull(scatter.GetCount(c))) { WithDataSeries <StaticRect> &dataseries = series.Add(); CtrlLayout(dataseries); tab.Add(dataseries.SizePos(), scatter.GetLegend(c)); } OnTab(); tab <<= THISBACK(OnTab); }
// reacts on link selection inside content pane void HelpViewer::contentLinkCb(String const &link) { // clear forward buffer stack.Trim(tos+1); // updates history int tocId = mainTocTree.GetCursor(); if(tocId > 0) { String curLink = mainTocTree.Get(); stack.Add(curLink); tos++; toolBar.Set(THISBACK(toolBarCb)); } // shows link inside main pane showLink(link); }
void LegendTab::Init(ScatterCtrl& scatter) { CtrlLayout(*this); SizePos(); pscatter = &scatter; showLegend <<= scatter.GetShowLegend(); showLegend <<= THISBACK(Change); legendPosition <<= (scatter.GetLegendAnchor() == ScatterDraw::LEGEND_TOP ? 0 : 1); legendPosition <<= THISBACK(Change); legendAnchorRT = true; switch(scatter.GetLegendAnchor()) { case ScatterDraw::LEGEND_ANCHOR_LEFT_TOP: legendAnchorLT = true; break; case ScatterDraw::LEGEND_ANCHOR_RIGHT_TOP: legendAnchorRT = true; break; case ScatterDraw::LEGEND_ANCHOR_LEFT_BOTTOM: legendAnchorLB = true; break; case ScatterDraw::LEGEND_ANCHOR_RIGHT_BOTTOM: legendAnchorRB = true; break; } legendAnchorLT <<= THISBACK1(ChangeAnchor, &legendAnchorLT); legendAnchorRT <<= THISBACK1(ChangeAnchor, &legendAnchorRT); legendAnchorLB <<= THISBACK1(ChangeAnchor, &legendAnchorLB); legendAnchorRB <<= THISBACK1(ChangeAnchor, &legendAnchorRB); fillColor <<= scatter.GetLegendFillColor(); fillColor <<= THISBACK(Change); borderColor <<= scatter.GetLegendBorderColor(); borderColor <<= THISBACK(Change); Point p = scatter.GetLegendPos(); tableHoriz <<= p.x; tableHoriz <<= THISBACK(Change); tableVert <<= p.y; tableVert <<= THISBACK(Change); numCols <<= scatter.GetLegendNumCols(); numCols <<= THISBACK(Change); rowSpacing <<= scatter.GetLegendRowSpacing(); rowSpacing <<= THISBACK(Change); Change(); }
void Tab5_Dynamic::Init() { CtrlLayout(*this); SizePos(); scatter.SetRange(10, 100); scatter.AddSeries(s1).Legend("U-t").Units("V", "s").NoMark(); scatter.AddSeries(s2).Legend("I-t").Units("A", "s").NoMark(); bStart <<=(THISBACK(Start)); bStop <<=(THISBACK(Stop)); bReset <<=(THISBACK(Reset)); bPgDown <<=(THISBACK(PgDown)); bPgUp <<=(THISBACK(PgUp)); bPlus <<=(THISBACK(Plus)); bMinus <<=(THISBACK(Minus)); t = 0; bStop.Disable(); }
RichTextView::RichTextView() { cx = 3968; sizetracking = false; sb.SetLine(100); sb.WhenScroll = THISBACK(Scroll); zoom = Null; background = SColorPaper; vcenter = false; margin = Rect(0, 0, 0, 0); highlight = -1; hldec = true; WhenLink = callback(LaunchWebBrowser); anchor = cursor = sell = selh = 0; SetFrame(ViewFrame()); AddFrame(sb); NoWantFocus(); lazy = true; shrink_oversized_objects = true; }
void LayoutDesigner::EditBar(Bar& bar) { bar.Add("Cut", CtrlImg::cut(), THISBACK(Cut)) .Key(K_CTRL_X); bar.Add("Copy", CtrlImg::copy(), THISBACK(Copy)) .Key(K_CTRL_C); bar.Add("Paste", CtrlImg::paste(), THISBACK(Paste)) .Key(K_CTRL_V); bar.Add("Duplicate", THISBACK(Duplicate)) .Key(K_CTRL_D); bar.Add("Delete", CtrlImg::remove(), THISBACK(Delete)) .Key(K_DELETE); bar.MenuSeparator(); bar.Add("Select All", THISBACK(SelectAll)) .Key(K_CTRL_A); }
DispatcherTest::DispatcherTest() { CtrlLayout(*this, "Window title"); splitv1.Vert(); for(int i = 0; i < 10; i++) { WithDispatch<EditInt, Value>* pctrl = new WithDispatch<EditInt, Value>(); ctrls.Add(pctrl); pctrl->MinMax(0, 100); disp.Register(*pctrl); splitv1 << *pctrl; } splitv2.Vert(); for(int i = 0; i < 10; i++) { ProgressIndicatorWithDispatch<Value>* pctrl = new ProgressIndicatorWithDispatch<Value>(); ctrls.Add(pctrl); pctrl->SetTotal(100); disp.Register(*pctrl); splitv2 << *pctrl; } splith.Horz() << splitv1 << splitv2; Add(splith.HSizePos().VSizePos(50, 0)); Sizeable().Zoomable(); sl.MinMax(0,100); sl <<= THISBACK(sliderCB); // sli.MinMax(0,100); // sli <<= THISBACK(slideriCB); //for beauty only, send once to see stuff already sl.SetData(75); sliderCB(); // sli.SetData(75); }
NAMESPACE_UPP #define LLOG(x) // LOG(x) LineEdit::LineEdit() { isdrag = false; nohbar = false; showtabs = false; tabsize = 4; font = StdFont(); // Courier(16); SetFrame(ViewFrame()); sb.NoBox(); AddFrame(sb); sb.WhenScroll = THISBACK(Scroll); cutline = true; bordercolumn = -1; bordercolor = Null; overwrite = false; filter = NULL; showspaces = false; }