Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Расчёт затрат на электроэнергию. ⇐ ПредыдущаяСтр 6 из 6
Стоимость электроэнергии, потребляемой за год, определяется по формуле: ЗЭЛ = РЭВМ*ТЭВМ*СЭЛ*А, где Рэвм – суммарная мощность ЭВМ, Сэл – стоимость 1кВт*ч электроэнергии, А – коэффициент интенсивного использования мощности машины. Согласно техническому паспорту ЭВМ Рэвм = 0, 45 кВт, стоимость 1кВт/ч. электроэнергии для предприятий Сэл = 3, 48 руб., интенсивность использования машины А=0, 98. Тогда расчётное значение затрат на электроэнергию: ЗЭЛ = 0, 45*900*3, 48*0, 98=1381, 212 руб. Расчёт затрат на текущий ремонт. Затраты на текущий и профилактический ремонт принимаются равными 5% от стоимости ЭВМ: ЗТР=0, 05*СБАЛ Таким образом, получим: ЗТР=0, 05*16500=825 руб. Расчёт затрат на вспомогательные материалы. Затраты на материалы, необходимые для обеспечения нормальной работы ПЭВМ составляют около 1% от стоимости ЭВМ: ЗЕМ= 0, 01*16500 = 165 руб. Прочие затраты по эксплуатации ПЭВМ. Прочие косвенные затраты, связанные с эксплуатацией ПЭВМ, состоят из амортизационных отчислений на здания, стоимости услуг сторонних организаций и составляют 5% от стоимости ЭВМ: ЗПР= 0, 05*16500 = 825 руб. Годовые издержки на заработную плату обслуживающего персонала. Издержки на заработную плату обслуживающего персонала складываются из основной заработной платы, дополнительной и отчислений на заработную плату: Ззп = ЗОСНЗП+ЗДОПЗП+ЗОТЧЗП Таким образом, получим: Ззп = 150000+90000+81600=321600 руб. Сумма основной заработной платы определяется исходя из общей численности работающих в штате: ЗОСНЗП = 12*∑ ЗiОКЛ где ЗiОКЛ – тарифная ставка i-го работника в мес. руб.; В штат обслуживающего персонала должны входить инженер-электронщик с месячным окладом 15000 руб. и электрослесарь с окладом 10000 руб. Тогда, учитывая, что данный персонал обслуживает 2 машин, имеет издержки на основную заработную плату обслуживающего персонала, составят: ЗОСНЗП = 12*(15000+10000)=300000 руб. Сумма дополнительной заработной платы составляет 60% от основной заработной платы: ЗДОПЗП = 0, 6*300000 = 180000 руб. Сумма отчислений на социальные нужды составляет 34% от суммы дополнительной и основной заработных плат: ЗОТЧЗП = 0, 34*(300000+180000) = 163200 руб. Тогда годовые издержки на заработную плату обслуживающего персонала составят: ЗЗП = 300000+180000+163200=643200 руб. Полные затраты на эксплуатацию ЭВМ в течение года составят: ЗЭВМ = 643200 +2062, 5+1381, 212+165+825+825 = 648 457, 712 руб. Тогда цена машино-часа арендуемого времени составит: СЧАС = 648 451, 712 /1784 = 363, 48. А затраты на оплату машинного времени составят: ЗМЕСПП = 363, 48*39, 32= 14292 руб. Расчёт общих расходов. Общие расходы это расходы на освещение, отопление, коммунальные услуги и т.п. Общие затраты на создание программного продукта составят: ЗСПП= 389, 8 +7191, 6+2062, 5+14292=23 935, 9 руб. .Можно сделать следующие выводы: В результате расчета, затраты на создание данного программного продуктасоставили 23 935, 9 руб. Снизить затраты на создание можно, например, используя следующие методы: повысить эффективность работы программиста, путем использования более современных ЭВМ; при этом, а также при бережном и аккуратном отношении к компьютерной технике автоматически уменьшатся затраты на ремонт, а значит и необходимость привлечения дополнительного обслуживающего персонала будет гораздо реже. Можно сократить количество компьютерной техники, для работы программиста. В связи с тем, что три четверти расходов идут на оплату труда программиста, возможно, уменьшить его заработную плату, или уменьшить необходимое количество программистов, создающих программу. Можно сократить оклад инженера-электронщика и электрослесаря или объединить их обязанности в должности одного работника. Заключение В процессе дипломного проектирования было разработано программное обеспечение конфигурирующее космический симулятор Celestia, и ее дополнения. Данное ПО описано в проектной части и приложении данной работы. Рассчитанные показатели экономической эффективности данной разработки говорят о целесообразности вложения денежных средств в ее реализацию и внедрение. Внедрение данной программы призвано облегчить работу астрономов-любителей и обычных пользователей Celestia, а их количество во всем мире очень большое. Для реализации программной части информационной системы выбран язык программирования С++. Итогом выполнения дипломной работы послужила разработка бксплатного программного продукта с открытым исходным кодом, позволяющего редактировать множество дополнительных параметров Celestia, Lua-инструментов, а также управлять отображением различных объектов, включая космические аппараты. Для удобства также реализован импорт и экспорт всех параметров в специальный конфигурационный файл. Список использованной литературы
1. Виснадул, Б.Д. Гагарина, Л. Г. Кокорева, Е.В. Технология разработки программных продуктов – 2008. 2. Рудаков, А.В. Технология разработки программных продуктов – 2006. 3. ГОСТ 19.202-78 – Требования к содержанию и оформлению – 1980. 4. ГОСТ 19.402-78 – Описание программы – 1980. Приложение 1 Текст программы Unit1.h #ifndef Unit1H #define Unit1H //--------------------------------------------------------------------------- #include < Classes.hpp> #include < Controls.hpp> #include < StdCtrls.hpp> #include < Forms.hpp> #include < ComCtrls.hpp> #include < Buttons.hpp> #include < ExtCtrls.hpp> #include < jpeg.hpp> #include < CheckLst.hpp> #include < Vcl.Dialogs.hpp> #include < IdBaseComponent.hpp> #include < IdComponent.hpp> #include < IdHTTP.hpp> #include < IdTCPClient.hpp> #include < IdTCPConnection.hpp> #include < Vcl.Imaging.pngimage.hpp> #include < Vcl.Menus.hpp> //--------------------------------------------------------------------------- class TMainForm: public TForm { __published: // IDE-managed Components TPageControl *PageControl1; TTabSheet *MainTab; TTabSheet *ObjectTab; TTabSheet *LuaTab; TTabSheet *AboutTab; TGroupBox *GroupBox1; TEdit *EditDir1; TEdit *Edit3; TBitBtn *BitBtn1; TBitBtn *BitBtn2; TGroupBox *GroupBox2; TCheckBox *CheckBox1; TCheckBox *CheckBox2; TCheckBox *CheckBox4; TGroupBox *GroupBox3; TCheckBox *CheckBox5; TCheckBox *CheckBox6; TCheckBox *CheckBox7; TCheckBox *CheckBox8; TBitBtn *BitBtn3; TEdit *Edit2; TLabel *LabelCelestia; TLabel *LabelLink2; TLabel *LabelDirComment; TLabel *Label5; TLabel *Label6; TLabel *Label7; TLabel *LabelAbout; TLabel *Label1; TLabel *Label2; TGroupBox *GroupBox4; TImage *Image2; TImage *Image3; TImage *Image4; TRadioButton *RadioButton1; TRadioButton *RadioButton2; TRadioButton *RadioButton3; TEdit *EditDir2; TEdit *EditDir3; TTabSheet *SettingTab; TGroupBox *GroupBox5; TButton *ButtonDir1; TButton *ButtonDir2; TButton *ButtonDir3; TLabel *LabelDir1; TLabel *LabelDir2; TLabel *LabelDir3; TLabel *Label3; TLabel *Label4; TLabel *Label10; TCheckBox *CheckBox10; TLabel *Label11; TLabel *Label12; TLabel *Label14; TLabel *Label16; TLabel *Label19; TEdit *Edit5; TGroupBox *GroupBox7; TButton *Button1; TEdit *EditScreenDir; TComboBox *ComboBox1; TEdit *EditStartScript; TLabel *Label22; TEdit *EditDemoScript; TLabel *Label23; TLabel *Label21; TLabel *Label20; TLabel *Label24; TLabel *Label25; TCheckBox *CheckBox11; TCheckBox *CheckBox12; TCheckBox *CheckBox13; TScrollBar *ScrollBar1; TScrollBar *ScrollBar2; TEdit *Edit1; TLabel *Label26; TLabel *Label27; TGroupBox *GroupBox8; TCheckBox *CheckBox14; TLabel *Label28; TEdit *Edit4; TLabel *Label29; TComboBox *ComboBox2; TCheckBox *CheckBox15; TCheckBox *CheckBox16; TCheckBox *CheckBox17; TRadioGroup *RadioGroup1; TCheckBox *CheckBox18; TCheckBox *CheckBox19; TGroupBox *GroupBox6; TCheckBox *CheckBox21; TLabeledEdit *PlayerEdit; TButton *Button2; TGroupBox *GroupBox9; TGroupBox *GroupBox10; TGroupBox *GroupBox11; TLabel *Label9; TBitBtn *BitBtn4; TLabel *Label17; TButton *Button3; TButton *Button4; TLabel *Label18; TOpenDialog *PlayerDialog; TTabSheet *Page1; TTabSheet *Page2; TCheckBox *CheckBox9; TCheckBox *CheckBox3; TCheckBox *CheckBox22; TPageControl *PageControl2; TCheckBox *CheckBox20; TCheckBox *CheckBox23; TCheckBox *CheckBox24; TCheckBox *CheckBox25; TCheckBox *CheckBox26; TCheckBox *CheckBox27; TCheckBox *CheckBox28; TCheckBox *CheckBox29; TCheckBox *CheckBox30; TCheckBox *CheckBox31; TCheckBox *CheckBox32; TLabel *Label30; TCheckBox *CheckBox33; TCheckBox *CheckBox34; TCheckBox *CheckBox35; TCheckBox *CheckBox36; TCheckBox *CheckBox37; TCheckBox *CheckBox38; TCheckBox *CheckBox39; TCheckBox *CheckBox40; TCheckBox *CheckBox41; TCheckBox *CheckBox42; TCheckBox *CheckBox43; TCheckBox *CheckBox44; TCheckBox *CheckBox45; TCheckBox *CheckBox46; TCheckBox *CheckBox47; TCheckBox *CheckBox48; TCheckBox *CheckBox49; TCheckBox *CheckBox50; TCheckBox *CheckBox51; TCheckBox *CheckBox52; TCheckBox *CheckBox53; TCheckBox *CheckBox54; TCheckBox *CheckBox55; TCheckBox *CheckBox56; TLabel *Label31; TCheckBox *CheckBox57; TCheckBox *CheckBox58; TCheckBox *CheckBox59; TCheckBox *CheckBox60; TCheckBox *CheckBox61; TOpenDialog *ImportDialog; TLabel *Label32; TSaveDialog *ExportDialog; TLabel *Label8; TLabel *Label13; TGroupBox *GroupBox12; TLabel *Link1; TLabel *Link2; TLabel *Link3; TLabel *Link4; TIdHTTP *Web; TImage *Image5; TImage *Image6; TImage *Image7; TImage *Image8; TLabel *Label15; TLabel *Label33; TCheckBox *CheckBox62; TGroupBox *GroupBox13; TCheckBox *CheckBox63; TPopupMenu *PopMenu; TMenuItem *Hlp; void __fastcall LabelLink2Click(TObject *Sender); void __fastcall LabelLink2MouseLeave(TObject *Sender); void __fastcall BitBtn1Click(TObject *Sender); void __fastcall BitBtn3Click(TObject *Sender); void __fastcall BitBtn2Click(TObject *Sender); void __fastcall Edit2KeyPress(TObject *Sender, char & Key); void __fastcall Edit3KeyPress(TObject *Sender, char & Key); void __fastcall Edit2Click(TObject *Sender); void __fastcall Edit3Click(TObject *Sender); void __fastcall BitBtn4Click(TObject *Sender); void __fastcall FormShow(TObject *Sender); void __fastcall RadioButton1Click(TObject *Sender); void __fastcall RadioButton2Click(TObject *Sender); void __fastcall RadioButton3Click(TObject *Sender); void __fastcall Edit2Change(TObject *Sender); void __fastcall Edit3Change(TObject *Sender); void __fastcall ButtonDir1Click(TObject *Sender); void __fastcall ButtonDir2Click(TObject *Sender); void __fastcall ButtonDir3Click(TObject *Sender); void __fastcall Image2Click(TObject *Sender); void __fastcall Image3Click(TObject *Sender); void __fastcall Image4Click(TObject *Sender); void __fastcall Label10MouseLeave(TObject *Sender); void __fastcall Label10Click(TObject *Sender); void __fastcall Label14MouseLeave(TObject *Sender); void __fastcall Label14Click(TObject *Sender); void __fastcall Label16MouseLeave(TObject *Sender); void __fastcall Label16Click(TObject *Sender); void __fastcall Button1Click(TObject *Sender); void __fastcall Edit5Change(TObject *Sender); void __fastcall Edit5Click(TObject *Sender); void __fastcall Edit5KeyPress(TObject *Sender, char & Key); void __fastcall ScrollBar1Change(TObject *Sender); void __fastcall ScrollBar2Change(TObject *Sender); void __fastcall Edit1Change(TObject *Sender); void __fastcall Edit1Click(TObject *Sender); void __fastcall Edit4Change(TObject *Sender); void __fastcall Edit4Click(TObject *Sender); void __fastcall Edit4KeyPress(TObject *Sender, char & Key); void __fastcall CheckBox16Click(TObject *Sender); void __fastcall Button2Click(TObject *Sender); void __fastcall CheckBox22Click(TObject *Sender); void __fastcall Button3Click(TObject *Sender); void __fastcall Label32MouseMove(TObject *Sender, TShiftState Shift, int X, int Y); void __fastcall Label32MouseLeave(TObject *Sender); void __fastcall Label32Click(TObject *Sender); void __fastcall Label16MouseMove(TObject *Sender, TShiftState Shift, int X, int Y); void __fastcall Label14MouseMove(TObject *Sender, TShiftState Shift, int X, int Y); void __fastcall LabelLink2MouseMove(TObject *Sender, TShiftState Shift, int X, int Y); void __fastcall Label10MouseMove(TObject *Sender, TShiftState Shift, int X, int Y); void __fastcall Button4Click(TObject *Sender); void __fastcall Label8MouseLeave(TObject *Sender); void __fastcall Label8MouseMove(TObject *Sender, TShiftState Shift, int X, int Y); void __fastcall Label8Click(TObject *Sender); void __fastcall Label13MouseLeave(TObject *Sender); void __fastcall Label13MouseMove(TObject *Sender, TShiftState Shift, int X, int Y); void __fastcall Label13Click(TObject *Sender); void __fastcall Link1MouseLeave(TObject *Sender); void __fastcall Link1MouseMove(TObject *Sender, TShiftState Shift, int X, int Y); void __fastcall Link1Click(TObject *Sender); void __fastcall Link2MouseLeave(TObject *Sender); void __fastcall Link2MouseMove(TObject *Sender, TShiftState Shift, int X, int Y); void __fastcall Link2Click(TObject *Sender); void __fastcall Link3MouseLeave(TObject *Sender); void __fastcall Link3MouseMove(TObject *Sender, TShiftState Shift, int X, int Y); void __fastcall Link3Click(TObject *Sender); void __fastcall Link4MouseLeave(TObject *Sender); void __fastcall Link4MouseMove(TObject *Sender, TShiftState Shift, int X, int Y); void __fastcall Link4Click(TObject *Sender); void __fastcall Label15MouseLeave(TObject *Sender); void __fastcall Label15MouseMove(TObject *Sender, TShiftState Shift, int X, int Y); void __fastcall Label15Click(TObject *Sender); void __fastcall Label33MouseLeave(TObject *Sender); void __fastcall Label33MouseMove(TObject *Sender, TShiftState Shift, int X, int Y); void __fastcall Label33Click(TObject *Sender); void __fastcall HlpClick(TObject *Sender);
private: // User declarations public: // User declarations __fastcall TMainForm(TComponent* Owner); String __fastcall GetVer(String FileName); void ObjectProv(String PodFolder, String Folder, String SSC, TCheckBox *Check); void ObjectSave(String PodFolder, String Folder, TCheckBox *Check); void ObjectVos(String PodFolder, String Folder, String SSC, TCheckBox *Check, bool extras); void EndingProv(String Dir, String Folder, String SSC, TCheckBox *Check); void EndingSave(String Dir, String Folder, String SSC, TCheckBox *Check); void EndingVos(String Dir, String Folder, String SSC, TCheckBox *Check); void CheckAll(bool checked); void HSatRingsProv(String Path, TCheckBox *Check); void HSatRingsSave(String Path, TCheckBox *Check); }; //--------------------------------------------------------------------------- extern PACKAGE TMainForm *MainForm; //--------------------------------------------------------------------------- #endif
Unit1.cpp //---------------------------------------------------------------------------
#include < vcl.h> #pragma hdrstop
#include " Unit1.h" #include " FileCtrl.hpp" #include " IniFiles.hpp"
//--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource " *.dfm" TIniFile* EP; TIniFile* Settings; TIniFile* Links; TMemIniFile* Lang; bool startfolder, AutoSave; String S[7], sl; String LuaAdr; String Link[4]; String CelestiaVersion; String Language, LanguageFile; String LinkLocale[15]; String StringsLocale[15]; String MessegesLocale[15]; TMainForm *MainForm; //---------------------------------------------------------------------------
//////////////////////////////////////////////////////////////////////////////// // ПРОВЕРКИ ПРИ СТАРТЕ // ////////////////////////////////////////////////////////////////////////////////
__fastcall TMainForm:: TMainForm(TComponent* Owner) : TForm(Owner) { //ЗАГРУЗКА ЛОКАЛИЗАЦИИ wchar_t charlang[255]; LCID lc = GetSystemDefaultLCID(); GetLocaleInfo(lc, LOCALE_SENGLANGUAGE, charlang, sizeof(charlang)); Language = charlang; LanguageFile=ExtractFilePath(Application-> ExeName)+" manager\\language\\" +Language+".lng";
Lang = new TMemIniFile(LanguageFile); Application-> Title=Lang-> ReadString(" Strings", " AppName", " Celestia Config Manager" )+" v" +GetVer(Application-> ExeName); MainForm-> Caption=Application-> Title;
//Вкладка " Основные" Label19-> Caption=Lang-> ReadString(" Main", " Label19", " You are using: " )+" "; Label32-> Caption=Lang-> ReadString(" Main", " Label32", " Download new version" ); LinkLocale[1]=Lang-> ReadString(" Links", " Link1", " http: //sourceforge.net/projects/celestia/files/Celestia-win32-bin/" ); ExportDialog-> Filter=Lang-> ReadString(" Strings", " EIDialogFilter", " Configuration files" )+" |*.cfg"; ImportDialog-> Filter=Lang-> ReadString(" Strings", " EIDialogFilter", " Configuration files" )+" |*.cfg"; PlayerDialog-> Filter=Lang-> ReadString(" Strings", " PlayerDialogFilter", " Executable files" )+" |*.exe"; MainTab-> Caption=Lang-> ReadString(" Main", " MainTab", " Main" ); GroupBox1-> Caption=Lang-> ReadString(" Main", " GroupBox1", " Extras directories" ); LabelDir1-> Caption=Lang-> ReadString(" Main", " LabelDir1", " Standard addons directory (default)" ); LabelDir2-> Caption=Lang-> ReadString(" Main", " LabelDir2", " Addons directory (default)" ); LabelDir3-> Caption=Lang-> ReadString(" Main", " LabelDir3", " Personal addons directory (optional)" ); LabelDirComment-> Caption=Lang-> ReadString(" Main", " LabelDirComment", " There are addons folders for the program. You can add or change folders which Celestia will look for installed addons." ); Label5-> Caption=Lang-> ReadString(" Main", " Label5", " How many sample points use to render orbit paths: " ); Label1-> Caption=Lang-> ReadString(" Main", " Label1", " Allowed values: from 80 to 400" ); Label6-> Caption=Lang-> ReadString(" Main", " Label6", " Number of segments in which ring systems are rendered: " ); Label2-> Caption=Lang-> ReadString(" Main", " Label2", " Allowed values: from 100 to 2000" ); GroupBox4-> Caption=Lang-> ReadString(" Main", " GroupBox4", " Cursor in Celestia" ); RadioButton1-> Caption=Lang-> ReadString(" Main", " RadioButton1", " Crosshair" ); RadioButton2-> Caption=Lang-> ReadString(" Main", " RadioButton2", " Inverted crosshair" ); RadioButton3-> Caption=Lang-> ReadString(" Main", " RadioButton3", " Arrow" ); GroupBox7-> Caption=Lang-> ReadString(" Main", " GroupBox7", " Scripts" ); Label20-> Caption=Lang-> ReadString(" Main", " Label20", " Script screenshot directory" ); Label21-> Caption=Lang-> ReadString(" Main", " Label21", " Script system access policy" ); ComboBox1-> Items-> Add(Lang-> ReadString(" Strings", " ComboBox1Item1", " Ask" )); ComboBox1-> Items-> Add(Lang-> ReadString(" Strings", " ComboBox1Item2", " Allow" )); ComboBox1-> Items-> Add(Lang-> ReadString(" Strings", " ComboBox1Item3", " Deny" )); Label22-> Caption=Lang-> ReadString(" Main", " Label22", " Init script" ); Label23-> Caption=Lang-> ReadString(" Main", " Label23", " Demonstration script" ); Label24-> Caption=Lang-> ReadString(" Main", " Label24", " Speed of rotation of observer's camera, when holding keyboard arrows < - or -> " ); Label26-> Caption=Lang-> ReadString(" Main", " Label26", " Note: This parameter affects the camera rotation speed in 'Planetarium' mode, being near planet surface." ); Label25-> Caption=Lang-> ReadString(" Main", " Label25", " Mouse rotation sensitivity: " ); Label27-> Caption=Lang-> ReadString(" Main", " Label27", " Note: The value 0.0 disables this function." ); GroupBox6-> Caption=Lang-> ReadString(" Main", " GroupBox6", " Incidental music Celestia EP v2.0" ); CheckBox21-> Caption=Lang-> ReadString(" Main", " CheckBox21", " Enabled" ); PlayerEdit-> EditLabel-> Caption=Lang-> ReadString(" Main", " PlayerEdit", " Path to your media player (required): " ); Hlp-> Caption=Lang-> ReadString(" Main", " Help", " Help" ); BitBtn1-> Caption=Lang-> ReadString(" Strings", " SaveButton", " Save" );
//Вкладка " Объекты и время" ObjectTab-> Caption=Lang-> ReadString(" ObjectsTime", " ObjectTab", " Objects and time" ); GroupBox2-> Caption=Lang-> ReadString(" ObjectsTime", " GroupBox2", " Show" ); CheckBox1-> Caption=Lang-> ReadString(" ObjectsTime", " CheckBox1", " Sun flares" ); CheckBox2-> Caption=Lang-> ReadString(" ObjectsTime", " CheckBox2", " Jupiter rings" ); CheckBox10-> Caption=Lang-> ReadString(" ObjectsTime", " CheckBox10", " Mars Features (pack by Leserg)" ); LinkLocale[2]=Lang-> ReadString(" Links", " Link2", " http: //en.celestiaproject.ru/? p=82" ); Label13-> Caption=Lang-> ReadString(" Strings", " Download", " Download" ); CheckBox17-> Caption=Lang-> ReadString(" ObjectsTime", " CheckBox17", " Kuiper Belt" ); LinkLocale[3]=Lang-> ReadString(" Links", " Link3", " http: //en.celestiaproject.ru/? p=76" ); Label33-> Caption=Lang-> ReadString(" Strings", " Download", " Download" ); CheckBox18-> Caption=Lang-> ReadString(" ObjectsTime", " CheckBox18", " Dynamic clouds of Jupiter" ); LinkLocale[4]=Lang-> ReadString(" Links", " Link4", " http: //en.celestiaproject.ru/? p=53" ); Label15-> Caption=Lang-> ReadString(" Strings", " Download", " Download" ); CheckBox19-> Caption=Lang-> ReadString(" ObjectsTime", " CheckBox19", " Io 3D volcanoes" ); CheckBox20-> Caption=Lang-> ReadString(" ObjectsTime", " CheckBox20", " Space lift" ); LinkLocale[5]=Lang-> ReadString(" Links", " Link5", " http: //en.celestiaproject.ru/? p=89" ); Label8-> Caption=Lang-> ReadString(" Strings", " Download", " Download" ); CheckBox61-> Caption=Lang-> ReadString(" ObjectsTime", " CheckBox61", " Oort Cloud" ); LinkLocale[6]=Lang-> ReadString(" Links", " Link6", " http: //en.celestiaproject.ru/? p=85" ); Label16-> Caption=Lang-> ReadString(" Strings", " Download", " Download" ); CheckBox62-> Caption=Lang-> ReadString(" ObjectsTime", " CheckBox62", " Highlight the particles of Saturn rings (only Celestia EP v3.0)" );
//Космические аппараты GroupBox5-> Caption=Lang-> ReadString(" ObjectsTime", " GroupBox5", " Spacecrafts, which doesn't exists anymore" ); Page1-> Caption=Lang-> ReadString(" ObjectsTime", " Page1", " Page 1" ); Page2-> Caption=Lang-> ReadString(" ObjectsTime", " Page2", " Page 2" ); CheckBox9-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox9", " Mir" ); CheckBox3-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox3", " Galileo" ); CheckBox23-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox23", " Cassini-Huygens" ); CheckBox24-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox24", " Satellite 1" ); CheckBox25-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox25", " Satellite 2" ); CheckBox26-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox26", " Satellite 3" ); CheckBox27-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox27", " Salyut 7" ); CheckBox28-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox28", " Mariner" ); CheckBox29-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox29", " Venus Express" ); CheckBox30-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox30", " Chandra X-Ray Observatory" ); CheckBox31-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox31", " Corot" ); CheckBox32-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox32", " Herschel" ); CheckBox33-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox33", " Voyager 1 and 2" ); CheckBox34-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox34", " New Horizons" ); CheckBox35-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox35", " Spitzer" ); CheckBox36-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox36", " ISO" ); CheckBox37-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox37", " Envisat" ); CheckBox38-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox38", " AMSAT-OSCAR 7" ); CheckBox39-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox39", " Apollo 10 and 11" ); CheckBox40-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox40", " Dawn" ); CheckBox41-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox41", " Deep Impact" ); CheckBox42-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox42", " Giotto" ); CheckBox43-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox43", " Helios 1 and 2" ); CheckBox44-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox44", " ICE" ); CheckBox45-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox45", " Luna and Lunokhod" ); CheckBox46-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox46", " LRO" ); CheckBox47-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox47", " Magellan" ); CheckBox48-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox48", " Mars Express" ); CheckBox49-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox49", " MGS" ); CheckBox50-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox50", " MRO" ); CheckBox51-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox51", " Messenger" ); CheckBox52-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox52", " Nozomi" ); CheckBox53-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox53", " Phoenix Lander" ); CheckBox54-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox54", " Pioneers" ); CheckBox55-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox55", " Planck" ); CheckBox56-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox56", " Rosetta" ); CheckBox57-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox57", " Ulysses" ); CheckBox58-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox58", " Venera" ); CheckBox59-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox59", " Viking" ); CheckBox60-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox60", " Zond 3" ); CheckBox22-> Caption=Lang-> ReadString(" Spacecrafts", " CheckBox22", " Select all" ); BitBtn2-> Caption=Lang-> ReadString(" Strings", " SaveButton", " Save" );
//Вкладка " Lua-инструменты" CheckBox4-> Caption=Lang-> ReadString(" LuaTools", " CheckBox4", " Show at Celestia startup" ); GroupBox3-> Caption=Lang-> ReadString(" LuaTools", " GroupBox3", " Show automatically" ); CheckBox5-> Caption=Lang-> ReadString(" LuaTools", " CheckBox5", " Information about objects" ); CheckBox6-> Caption=Lang-> ReadString(" LuaTools", " CheckBox6", " Coordinates" ); CheckBox11-> Caption=Lang-> ReadString(" LuaTools", " CheckBox11", " Magnification mode" ); CheckBox12-> Caption=Lang-> ReadString(" LuaTools", " CheckBox12", " H-R Diagram" ); CheckBox7-> Caption=Lang-> ReadString(" LuaTools", " CheckBox7", " Keplerian params" ); CheckBox13-> Caption=Lang-> ReadString(" LuaTools", " CheckBox13", " Virtual pad" ); CheckBox8-> Caption=Lang-> ReadString(" LuaTools", " CheckBox8", " Compass" ); GroupBox13-> Caption=Lang-> ReadString(" LuaTools", " GroupBox13", " Objects from the addons catalog" ); CheckBox63-> Caption=Lang-> ReadString(" LuaTools", " CheckBox63", " Asteroid Belt" ); GroupBox8-> Caption=Lang-> ReadString(" LuaTools", " GroupBox8", " Advanced settings" ); CheckBox14-> Caption=Lang-> ReadString(" LuaTools", " CheckBox14", " Show local time" ); CheckBox15-> Caption=Lang-> ReadString(" LuaTools", " CheckBox15", " Center compass" ); CheckBox16-> Caption=Lang-> ReadString(" LuaTools", " CheckBox16", " Alt-azimuth mode disabled" ); Label29-> Caption=Lang-> ReadString(" LuaTools", " Label29", " Date format: " ); ComboBox2-> Items-> Add(Lang-> ReadString(" Strings", " ComboBox2Item1", " Country default" )); ComboBox2-> Items-> Add(Lang-> ReadString(" Strings", " ComboBox2Item2", " dd/mm/yyyy" )); ComboBox2-> Items-> Add(Lang-> ReadString(" Strings", " ComboBox2Item3", " mm/dd/yyyy" )); ComboBox2-> Items-> Add(Lang-> ReadString(" Strings", " ComboBox2Item4", " yyyy/mm/dd" )); Label28-> Caption=Lang-> ReadString(" LuaTools", " Label28", " Custom goto duration" ); RadioGroup1-> Caption=Lang-> ReadString(" LuaTools", " RadioGroup1", " Color scheme" ); RadioGroup1-> Items-> Add(Lang-> ReadString(" Strings", " RadioGroup1Item1", " Colorless transparent" )); RadioGroup1-> Items-> Add(Lang-> ReadString(" Strings", " RadioGroup1Item2", " Translucent blue" )); RadioGroup1-> Items-> Add(Lang-> ReadString(" Strings", " RadioGroup1Item3", " Green translucent" )); RadioGroup1-> Items-> Add(Lang-> ReadString(" Strings", " RadioGroup1Item4", " Purple translucent" )); Label11-> Caption=" " +Lang-> ReadString(" LuaTools", " Label11", " Lua Tools not found! " ); Label12-> Caption=Lang-> ReadString(" Strings", " Download", " Download" )+": "; Label14-> Caption=Lang-> ReadString(" Links", " Link7", " http: //en.celestiaproject.ru/? cat=29" ); LinkLocale[7]=Lang-> ReadString(" Links", " Link7", " http: //en.celestiaproject.ru/? cat=29" ); BitBtn3-> Caption=Lang-> ReadString(" Strings", " SaveButton", " Save" );
//Вкладка " Управление настройками" SettingTab-> Caption=Lang-> ReadString(" ManageSettings", " SettingsTab", " Manage settings" ); GroupBox9-> Caption=Lang-> ReadString(" ManageSettings", " GroupBox9", " Import settings" ); Label17-> Caption=Lang-> ReadString(" ManageSettings", " Label17", " It is possible to import a file with settings, which was exported earlier. You'll get the exact configuration, which was exported." ); Button3-> Caption=Lang-> ReadString(" ManageSettings", " Button3", " Select file to import" ); GroupBox10-> Caption=Lang-> ReadString(" ManageSettings", " GroupBox10", " Export settings" ); Label18-> Caption=Lang-> ReadString(" ManageSettings", " Label18", " It is possible to export settings to a file. It's convenient, if you'd have to reinstall Celestia or the entire operating system, and the default settings are not for you." ); Button4-> Caption=Lang-> ReadString(" ManageSettings", " Button4", " Export settings to file" ); GroupBox11-> Caption=Lang-> ReadString(" ManageSettings", " GroupBox11", " Restore default settings" ); Label9-> Caption=Lang-> ReadString(" ManageSettings", " Label9", " When restoring an original settings, default values are applied to all Celestia parameters, Lua-tools and addons." ); BitBtn4-> Caption=Lang-> ReadString(" ManageSettings", " BitBtn4", " Perform recovery" );
//Вкладка " О программе" AboutTab-> Caption=Lang-> ReadString(" About", " AboutTab", " About" ); Label7-> Caption=Lang-> ReadString(" About", " Label7", " Configuration manager was developed for Celestia 1.6.1, Celestia Educational and Celestia Extended Pack. It's designed to make Celestia configuration precise, and for managing its addons. It supports most of the spacecrafts, and following Lua-tools: Lua Edu Tools v1.2 beta 8, Lua Edu Tools v1.2 beta 9, Lua Universal Tools v1.0 and Lua Universal Tools v2.0." ); Label3-> Caption=Lang-> ReadString(" About", " Label3", " Thanks to: Sergey Leonov a.k.a Leserg for testing of the first version and useful tips; Artyom Volgin a.k.a Zemlyanin for ideas on functionality and testing of all versions." ); LabelCelestia-> Caption=Lang-> ReadString(" About", " LabelCelestia", " Celestia in Russia" )+": "; Label4-> Caption=Lang-> ReadString(" About", " Label4", " Discussion" )+": "; Label10-> Caption=Lang-> ReadString(" About", " Label10", " on shatters.net/forum" ); LinkLocale[8]=Lang-> ReadString(" Links", " Link8", " #" ); //ссылка на тему англоязычного форума (форум недоступен) GroupBox12-> Caption=Lang-> ReadString(" About", " GroupBox12", " Recommended downloads" )+": ";
//Оставшиеся строки StringsLocale[1]=Lang-> ReadString(" Strings", " Unknown", " unknown" ); StringsLocale[2]=" " +Lang-> ReadString(" Strings", " Outdated", " (outdated)" ); StringsLocale[3]=Lang-> ReadString(" Strings", " Version", " Version" ); StringsLocale[4]=Lang-> ReadString(" Strings", " NoNetwork", " No Internet connection" ); StringsLocale[5]=" " +Lang-> ReadString(" Strings", " LUT2Notice", " In Lua Universal Tools v2.0 some parameters are not used." ); StringsLocale[6]=Lang-> ReadString(" Strings", " LuaTools", " Lua Tools" ); StringsLocale[7]=Lang-> ReadString(" Strings", " ExtrasDir", " Choose folder with the addons for Celestia" )+": "; StringsLocale[8]=Lang-> ReadString(" Strings", " ScreenDir", " Choose folder to save screenshots" )+": "; StringsLocale[9]=Lang-> ReadString(" Strings", " AltAzimuthOn", " Alt-azimuth mode enabled" ); StringsLocale[10]=Lang-> ReadString(" Strings", " AltAzimuthOff", " Alt-azimuth mode disabled" ); StringsLocale[11]=Lang-> ReadString(" Strings", " NoLocalizedHelp", " Help file in your language not found. Open Help in English? " );
//Сообщения MessegesLocale[1]=Lang-> ReadString(" Messages", " Message1", " To run the utility, place it in the root directory of Celestia." ); MessegesLocale[2]=Lang-> ReadString(" Messages", " Message2", " Invalid value! " ); MessegesLocale[3]=Lang-> ReadString(" Messages", " Message3", " Invalid addons folder! The first field must be specified." ); MessegesLocale[4]=Lang-> ReadString(" Messages", " Message4", " The 'Init script' must be specified! " ); MessegesLocale[5]=Lang-> ReadString(" Messages", " Message5", " The 'Demo script' must be specified! " ); MessegesLocale[6]=Lang-> ReadString(" Messages", " Message6", " Settings were saved successfully! " ); MessegesLocale[7]=Lang-> ReadString(" Messages", " Message7", " Do you really want to restore default settings? " ); MessegesLocale[8]=Lang-> ReadString(" Messages", " Message8", " Default settings were restored successfully! " ); MessegesLocale[9]=Lang-> ReadString(" Messages", " Message9", " Settings were imported successfully! " ); MessegesLocale[10]=Lang-> ReadString(" Messages", " Message10", " Settings were successfully exported to a file" );
//ПРОВЕРКА РАСПОЛОЖЕНИЯ ПРОГРАММЫ if (FileExists(ExtractFilePath(Application-> ExeName)+" celestia.cfg" ) & & FileExists(ExtractFilePath(Application-> ExeName)+" celestia.exe" ) || FileExists(ExtractFilePath(Application-> ExeName)+" celestia161-ED.exe" ) || FileExists(ExtractFilePath(Application-> ExeName)+" Celestia EP.exe" )) { startfolder = true; MkDir(ExtractFilePath(Application-> ExeName)+ " temp" ); Label30-> Caption=" |\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|"; Label31-> Caption=" |\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|\n|"; } else { if (Application-> MessageBox(MessegesLocale[1].c_str(), Application-> Title.c_str(), MB_OK | MB_ICONEXCLAMATION)==MB_OK) { startfolder = false; } } } //---------------------------------------------------------------------------
//Функция получения версии exe файла String __fastcall TMainForm:: GetVer(String FileName) { String Version; DWORD h; DWORD Size = GetFileVersionInfoSize(FileName.c_str(), & h); if (Size == 0) { Version = StringsLocale[1].c_str(); return Version; }
TCHAR *buf; buf = (TCHAR *)GlobalAlloc(GMEM_FIXED, Size); if (GetFileVersionInfo(FileName.c_str(), h, Size, buf)! = 0) { PVSFixedFileInfo ValueBuf; UINT Len; if (VerQueryValue(buf, L" \\", & (void *)ValueBuf, & Len)! = 0) Version = String().sprintf(L" %d.%d.%d", HIWORD(ValueBuf-> dwFileVersionMS), LOWORD(ValueBuf-> dwFileVersionMS), HIWORD(ValueBuf-> dwFileVersionLS), LOWORD(ValueBuf-> dwFileVersionLS)); } GlobalFree(buf); return Version; } //---------------------------------------------------------------------------
void __fastcall TMainForm:: FormShow(TObject *Sender) { if (! startfolder) Application-> Terminate(); else { //Включаем видимость формы MainForm-> AlphaBlend=false;
//Считывание версии Celestia if (FileExists(ExtractFilePath(Application-> ExeName)+" celestia161-ED.exe" )) CelestiaVersion=" Celestia 1.6.1 Educational"; else { if (FileExists(ExtractFilePath(Application-> ExeName)+" \\documents\\" +" Информация о Celestia EP v3.0.pdf" )) { CelestiaVersion=" Celestia Extended Pack v3.0"; CheckBox62-> Enabled=true; }
if (FileExists(ExtractFilePath(Application-> ExeName)+" \\documents\\" +" Информация о Celestia EP v2.0.pdf" )) { CelestiaVersion=" Celestia Extended Pack v2.0"; GroupBox6-> Visible=true; }
if (FileExists(ExtractFilePath(Application-> ExeName)+" Информация о Celestia EP v1.1.txt" )) CelestiaVersion=" Celestia Extended Pack v1.1";
if (FileExists(ExtractFilePath(Application-> ExeName)+" Информация о Celestia EP.txt" )) CelestiaVersion=" Celestia Extended Pack v1.0"; } if (CelestiaVersion! =" " ) Label19-> Caption=Label19-> Caption+CelestiaVersion; else { //Проверка версии Celestia Label19-> Caption=Label19-> Caption+" Celestia " +GetVer(ExtractFilePath(Application-> ExeName)+" celestia.exe" ); if(GetVer(ExtractFilePath(Application-> ExeName)+" celestia.exe" )! =" 1.6.1" ) { Label19-> Caption=Label19-> Caption+StringsLocale[2]; Label32-> Visible=true; } }
//Авторская защита LabelAbout-> Caption=" © Alexell\n" +StringsLocale[3]+": " +GetVer(Application-> ExeName)+" (28.04.2014)"; LabelLink2-> Caption=" www.celestiaproject.ru";
//Установка прокси для режима Debug #ifdef _DEBUG Web-> ProxyParams-> BasicAuthentication=true; Web-> ProxyParams-> ProxyServer=" 192.168.200.110"; Web-> ProxyParams-> ProxyPort=3128; Web-> ProxyParams-> ProxyUsername=" sunduk"; Web-> ProxyParams-> ProxyPassword=" gbplf"; #endif
//Блок ссылок " Рекомендуем скачать" TStringList *TMP = new TStringList; try { if(Language==" Russian" ) TMP-> Text=Web-> Get(" http: //files.celestiaproject.ru/config_manager/links_ru.ini" ); else TMP-> Text=Web-> Get(" http: //files.celestiaproject.ru/config_manager/links_en.ini" );
TMP-> SaveToFile(ExtractFilePath(Application-> ExeName)+" manager\\" +" links.ini" ); } catch(...){} delete TMP;
Links = new TIniFile(ExtractFilePath(Application-> ExeName)+" manager\\" +" links.ini" ); Link1-> Caption=Links-> ReadString(" Link1", " Caption", StringsLocale[4]); Link2-> Caption=Links-> ReadString(" Link2", " Caption", StringsLocale[4]); Link3-> Caption=Links-> ReadString(" Link3", " Caption", StringsLocale[4]); Link4-> Caption=Links-> ReadString(" Link4", " Caption", StringsLocale[4]); Link[1]=Links-> ReadString(" Link1", " URL", StringsLocale[4]); Link[2]=Links-> ReadString(" Link2", " URL", StringsLocale[4]); Link[3]=Links-> ReadString(" Link3", " URL", StringsLocale[4]); Link[4]=Links-> ReadString(" Link4", " URL", StringsLocale[4]); delete Links;
//ПРОВЕРКА ВКЛАДКИ " ОСНОВНЫЕ" TStringList *MainProv=new TStringList; TStringList *DirList=new TStringList; String OrbitP=" OrbitPathSamplePoints "; String RingsP=" RingSystemSections "; int op; int rp; String OrbitDigit=" "; String RingDigit=" "; MainProv-> LoadFromFile(ExtractFilePath(Application-> ExeName) + " celestia.cfg" );
//Считывание папок с дополнениями S[3]=ExtractFilePath(Application-> ExeName); DirList-> LoadFromFile(S[3]+" celestia.cfg" ); for (int i=0; i< DirList-> Count; i++) if ((DirList-> Strings[i].Pos(" ExtrasDirectories" )> 0) & & (DirList-> Strings[i][1]! = '#')) { S[0]=" "; S[1]=" "; S[2]=" "; int cr, kaw=0; sl=DirList-> Strings[i]; if ((cr=sl.Pos(" [" ))> 0) for (; cr< =sl.Length(); cr++) { if (sl[cr]=='" ') kaw++; else if (kaw%2==1) S[3& (kaw/2)] += sl[cr]; if (sl[cr]==']') break; } EditDir1-> Text = S[0]; EditDir2-> Text = S[1]; EditDir3-> Text = S[2]; }
//Считывание точек орбит for (int i=0; i< MainProv-> Count; i++) if ((op=MainProv-> Strings[i].Pos(OrbitP))> 0) for (int k=op; k< =MainProv-> Strings[i].Length(); k++) if (isdigit(MainProv-> Strings[i][k])) OrbitDigit+=MainProv-> Strings[i][k]; Edit2-> Text=OrbitDigit;
//Считывание сегментов колец for (int i=0; i< MainProv-> Count; i++) if ((rp=MainProv-> Strings[i].Pos(RingsP))> 0) for (int k=rp; k< =MainProv-> Strings[i].Length(); k++) if (isdigit(MainProv-> Strings[i][k])) RingDigit+=MainProv-> Strings[i][k]; Edit3-> Text=RingDigit;
//Считывание курсора for (int i=0; i< MainProv-> Count; i++) { if(MainProv-> Strings[i].Pos(" Cursor \" " )) { if(MainProv-> Strings[i]==" Cursor \" crosshair\" " ) { RadioButton1-> Checked=true; RadioButton2-> Checked=false; RadioButton3-> Checked=false; } if(MainProv-> Strings[i]==" Cursor \" inverting crosshair\" " ) { RadioButton1-> Checked=false; RadioButton2-> Checked=true; RadioButton3-> Checked=false; } if(MainProv-> Strings[i]==" Cursor \" arrow\" " ) { RadioButton1-> Checked=false; RadioButton2-> Checked=false; RadioButton3-> Checked=true; } } }
//Проверка папки скриншотов S[3]=ExtractFilePath(Application-> ExeName); DirList-> LoadFromFile(S[3]+" celestia.cfg" ); for (int i=0; i< DirList-> Count; i++) if ((DirList-> Strings[i].Pos(" ScriptScreenshotDirectory" )> 0) & & (DirList-> Strings[i][1]! = '#')) { S[4]=" "; if (DirList-> Strings[i]==" ScriptScreenshotDirectory \" \" " ) S[4]=" "; else { int cr; sl=DirList-> Strings[i]; if ((cr=sl.Pos(" \" " ))> 0) for (; cr< =sl.Length(); cr++) { if (sl[cr]=='" ') S[4] += sl[cr+1]; else { if (sl[cr+1]=='" ') break; else S[4] += sl[cr+1]; } } } EditScreenDir-> Text = S[4]; }
//Проверка параметра ScriptSystemAccessPolicy for (int i=0; i< MainProv-> Count; i++) { if(MainProv-> Strings[i].Pos(" ScriptSystemAccessPolicy" )) { if (MainProv-> Strings[i]==" ScriptSystemAccessPolicy \" ask\" " ) ComboBox1-> ItemIndex=0; if (MainProv-> Strings[i]==" ScriptSystemAccessPolicy \" allow\" " ) ComboBox1-> ItemIndex=1; if (MainProv-> Strings[i]==" ScriptSystemAccessPolicy \" deny\" " ) ComboBox1-> ItemIndex=2; } }
//Проверка стартового скрипта S[3]=ExtractFilePath(Application-> ExeName); S[5]=" "; DirList-> LoadFromFile(S[3]+" celestia.cfg" ); for (int i=0; i< DirList-> Count; i++) if ((DirList-> Strings[i].Pos(" InitScript" )> 0) & & (DirList-> Strings[i][1]! = '#')) { int cr; sl=DirList-> Strings[i]; if ((cr=sl.Pos(" \" " ))> 0) for (; cr< =sl.Length(); cr++) { if (sl[cr]=='" ') S[5] += sl[cr+1]; else { if (sl[cr+1]=='" ') break; else S[5] += sl[cr+1]; } } EditStartScript-> Text = S[5]; }
//Проверка Demo сценария S[3]=ExtractFilePath(Application-> ExeName); S[6]=" "; DirList-> LoadFromFile(S[3]+" celestia.cfg" ); for (int i=0; i< DirList-> Count; i++) if ((DirList-> Strings[i].Pos(" DemoScript" )> 0) & & (DirList-> Strings[i][1]! = '#')) { int cr; sl=DirList-> Strings[i]; if ((cr=sl.Pos(" \" " ))> 0) for (; cr< =sl.Length(); cr++) { if (sl[cr]=='" ') S[6] += sl[cr+1]; else { if (sl[cr+1]=='" ') break; else S[6] += sl[cr+1]; } } EditDemoScript-> Text = S[6]; }
//Считывание скорости вращения String RotateP=" RotateAcceleration "; String RotateDigit=" ";
for (int i=0; i< MainProv-> Count; i++) if (op=MainProv-> Strings[i].Pos(RotateP)> 0) for (int k=22; k< =MainProv-> Strings[i].Length(); k++) if (MainProv-> Strings[i][k]=='.') break; else RotateDigit+=MainProv-> Strings[i][k]; Edit5-> Text=RotateDigit; ScrollBar1-> Position=StrToInt(Edit5-> Text);
//Считывание чувствительности мыши String MouseRotP=" MouseRotationSensitivity "; String MouseDigit=" "; float pos, postemp; FormatSettings.DecimalSeparator='.'; for (int i=0; i< MainProv-> Count; i++) { if (MainProv-> Strings[i].Pos(MouseRotP)> 0) { for (int k=27; k< =MainProv-> Strings[i].Length(); k++) MouseDigit+=MainProv-> Strings[i][k]; } }
Edit1-> Text=MouseDigit; postemp=StrToFloat(MouseDigit); pos=postemp*10; ScrollBar2-> Position=pos; FormatSettings.DecimalSeparator=', ';
//Проверка музыкального проигрывателя для Celestia EP v2.0 if(GroupBox6-> Visible==true) { EP = new TIniFile(ExtractFilePath(Application-> ExeName)+" celestia_ep.ini" ); if(EP-> ReadString(" Settings", " Music", " " )==" true" ) CheckBox21-> Checked=true; else CheckBox21-> Checked=false;
Популярное:
|
Последнее изменение этой страницы: 2016-04-11; Просмотров: 863; Нарушение авторского права страницы