FpGUI - FpGUI

fpGUI
Fpgui.png
Тұрақты шығарылым
v1.4.1 / 2 қыркүйек 2015 ж; 5 жыл бұрын (2015-09-02)
Алдын ала қарау
- / -
Репозиторий Мұны Wikidata-да өзгертіңіз
ЖазылғанПаскаль нысаны
Операциялық жүйеUnix /Linux /BSD (X11 ), Windows, OpenSolaris, ARM-Linux және WinCE құрылғылары.
ТүріВиджет құралдар жинағы
ЛицензияLGPL статикалық байланыстыру ерекшеліктерімен
Веб-сайтfpgui.sourceforge.желі

fpGUI, Free Pascal GUI құралдар жинағы, а кросс-платформа Graeme Geldenhuys жасаған графикалық қолданушы интерфейсінің инструменттер жинағы. fpGUI болып табылады ашық ақпарат көзі және ақысыз бағдарламалық жасақтама, өзгертілген LGPL лицензиясы бойынша лицензияланған. Құралдар жинағы Тегін Паскаль компилятор, онда жазылған деген мағынаны білдіреді Паскаль нысаны тіл.

fpGUI тек графикалық түрден тұрады виджеттер немесе компоненттер және кросс-платформалы 2D сурет кітапханасы. Ол дерекқор қабаттарын, 3D графикасын, XML талдаушыларын және т.с.с жүзеге асырмайды, сонымен қатар GTK немесе Qt сияқты үшінші тарап кітапханаларына сенбейді. Барлық қосымшалар стандартқа сәйкес келетін Free Pascal компоненттер кітапханасында (FCL) тікелей қол жетімді Тегін Паскаль құрастырушы.

Тарих

FpGUI-дің алғашқы нұсқасын Себастьян Гюнтер 2000 жылы жазған. Содан кейін бұл жоба 2002 жылы тоқтатылды. FpGUI бұрынғы OO GTK орамасының ізбасары болды, fpGTK және көптеген виджеттер жиынтығына мүмкіндік беретін жаңа бастама болды. әсіресе win32. Инструмент кейбір ішкі FPC инструменттері үшін пайдаланылды (мысалы, fpdoc редакторы), бірақ құралдар жиынтығы шынымен пайдалы бола алмайтын және өмірде соңғы қолданушылар қолдана алатын көптеген нәрселер болды. Бұл құралдардың көпшілігі жетілуге ​​көшкен Елазар 2004-2006 уақыт аралығында.

Грэм Гелденхуйс 2006 жылдың ортасында Себастьян қалдырған құралдар жинағын қалпына келтірді. Ол келесі жылға арналған құралдар жинағын жасауды жалғастырды. Үш қосалқы жобаны (fpGFX, fpIMG және fpGUI) fpGUI бір жобасына біріктіру. Грэм компоненттердің санын және артқы графикалық деңгейдің санын кеңейтіп, жалпы құралдар жиынтығын жақсартты. Бұл кезеңде қолдау көрсетілетін платформалар болды Linux және FreeBSD арқылы X11 және GDI арқылы Microsoft Windows. Бірнеше айдан кейін Фелипе Монтейро де Карвальо Windows Mobile құрылғыларына қолдау көрсетіп, графикалық қолдау мен дизайнды кеңейтетін әзірлеушілер тобына қосылды. Фелипе сонымен қатар Carbon арқылы Mac OS X қолдауымен жұмыс істей бастады.

2007 жылдың маусым айының басында Грэм бастапқы базада кейбір маңызды дизайн мәселелерін тапты. Бұл fpGUI-дің нақты қосымшаларда шынымен пайдалы болуына жол бермеді. Көптеген прототиптерден кейін fpGUI жобасы толығымен қайта жазылды. Өткен тәжірибе көп көмектесті және жаңа дизайнерлік идеялар іске асырылды. Код дизайны таза дизайнмен әлдеқайда қарапайым болды. Үлкен өзгертулердің бірі - қазір барлық виджеттер көп тұтқалы (терезелі) дизайнға негізделген. Әрбір виджеттің терезе тұтқасы бар. Ұқсас дизайнға сәйкес келетін басқа GUI инструменттері GTK, Xt және FLTK бірнешеуін атау. Қарама-қарсы дизайнды ұстанатын GUI инструменттері - бұл ең соңғы құралдар жиынтығы Qt[1] және MSEgui.

Бағдарламаның мысалы

Төмендегі бағдарлама оң жақта «Шығу» батырмасы бар жалғыз терезені көрсетеді. Терезенің кенепінде (фонда) fpGUI көмегімен қолданылатын барлық стандартты кіріктірілген кескіндерді салады.

бағдарлама stdimglist;{$ mode objfpc} {$ H +}қолданады  Сабақтар, SysUtils,  fpg_base, fpg_негізгі, fpg_form, fpg_imgfmt_bmp, fpg_түймешігі;түрі  TMainForm = сынып(TfpgForm)  жеке    btnжақын: Tfpgтүймешігі;    рәсім   btnCloseClick(Жіберуші: Нысан);  қорғалған    рәсім   HandlePaint; жоққа шығару;  қоғамдық    конструктор Жасаңыз(иесі: TComponent); жоққа шығару;    рәсім   AfterCreate; жоққа шығару;  Соңы;{TMainForm}рәсім TMainForm.AfterCreate;баста  SetPosition(100,100,700,500);  WindowTitle := 'fpGUI стандартты сурет тізімі';  // Төменгі оң жақ бұрыштағы батырманы орналастырыңыз.  btnжақын := CreateButton(өзіндік, Ені-90, Биіктігі-35, 75, «Шығу», @btnCloseClick);  btnжақын.ImageName := 'stdimg.quit';  btnжақын.Зәкірлер := [Дұрыс, Төменде];Соңы;рәсім TMainForm.btnCloseClick(Жіберуші: Нысан);баста  Жабық;Соңы;рәсім TMainForm.HandlePaint;var  n: бүтін;  х: TfpgCoord;  ж: TfpgCoord;  сл: TStringList;  имм: TfpgImage;баста  Кенеп.BeginDraw; // қос буферлеу басталады  мұрагерлік HandlePaint;  сл  := TStringList.Жасаңыз;  х   := 8;  ж   := 8;  fpg кескіндер.Суреттер тізімі(сл);    үшін n := 0 дейін сл.Санақ-1 істеу  баста    Кенеп.DrawString(х, ж, сл[n]+':');        имм := TfpgImage(сл.Нысандар[n]);    егер имм <> нөл содан кейін      Кенеп.DrawImage(х+130, ж, имм);    Inc(ж, имм.Биіктігі+8);    егер ж > Биіктігі-32 содан кейін // ең үлкен кескіндердің биіктігі 32-ге тең    баста      Inc(х, 200);      ж := 8;    Соңы;  Соңы;  Кенеп.EndDraw;  сл.Тегін;Соңы;конструктор TMainForm.Жасаңыз(иесі: TComponent);баста  мұрагерлік Жасаңыз(иесі);(* V1.4-ке ДЕЙІН:  // Төменгі оң жақ бұрыштағы батырманы орналастырыңыз.  btnClose: = CreateButton (өзін, ені-90, биіктігі-35, 75, 'шығу', @btnCloseClick);  btnClose.ImageName: = 'stdimg.quit';  btnClose.Anchors: = [anRight, anBottom];*)Соңы;рәсім MainProc;var  фрм : TMainForm;баста  fpgApplication.Инициализациялау;  фрм := TMainForm.Жасаңыз(нөл);  тырысу    фрм.Көрсету;    fpgApplication.Жүгіру;  ақыры    фрм.Тегін;  Соңы;Соңы;баста  MainProc;Соңы.

Мұнда Linux астында іске қосылған кезде жоғарыда аталған бағдарламаның скриншоты келтірілген.
Fpgui stdimglist.png

Лицензиялау

fpGUI статикалық түрде бағдарламаларға байланысты және лицензияланған меншіктік бағдарламалармен статикалық байланыстыруға мүмкіндік беру үшін арнайы жасалған LGPL модификацияланған нұсқасын қолдану арқылы лицензияланған. Сізге fpGUI құралдар жиынтығына енгізілген кез-келген өзгертулер қажет - ештеңе жоқ.

FpGUI-мен жазылған бағдарлама

  • Математика магистрі
    Компьютерлік оқыту жүйесінде қолданылады. Сондай-ақ франчайзиді есепке алу мен басқарудың негізгі пакеті.
  • Қазіргі уақытта fpGUI құрамына кіретін Visual Form Designer. Бұл әзірлеушіге пайдаланушы интерфейстерін әлдеқайда жылдам қарқынмен құруға мүмкіндік береді.
  • Unimesur және әртүрлі құралдар
    Жан-Марк жазған Юнимесур бағдарламасы сұйықтар мен газдардың ағындарын, масса мен көлем бірліктері арасындағы өлшемдерді түрлендіруге мүмкіндік береді. Барлық нәтижелер конверсия факторларының дәлдігіне тексерілді.
  • fpGUI DocView
    Ан INF анықтама файлы қазіргі уақытта Windows жүйесінде жұмыс істейтін қарау құралы,[2] Linux және FreeBSD. INF - бұл fpGUI-нің әдепкі анықтама форматы, сонымен бірге пайдаланылатын анықтама форматы OS / 2 (және сонымен бірге) eComStation және ArcaOS ).
  • Паскальды тестілеудің ақысыз негіздері
    Консоль мен GUI тест жүгіргіші бар кросс-платформалық блоктың сынағы.

Сондай-ақ қараңыз

Әдебиеттер тізімі

  1. ^ «Trolltech зертханаларының блогтары» Qt басып кірген шетелдіктер - барлық жыпылықтаудың соңы ». Архивтелген түпнұсқа 2010-03-03. Алынған 2008-03-08.
  2. ^ Ескі 16-биттен айырмашылығы IPF .inf/.hlp DocView көрермендерін 64 биттік Windows-та пайдалануға болады

Сыртқы сілтемелер