#pragma once
#include "BaseForm.h"
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;


namespace ObjDataEdit
{
	/// <summary> 
	/// Summary for KeyItemForm
	///
	/// WARNING: If you change the name of this class, you will need to change the 
	///          'Resource File Name' property for the managed resource compiler tool 
	///          associated with all .resx files this class depends on.  Otherwise,
	///          the designers will not be able to interact properly with localized
	///          resources associated with this form.
	/// </summary>
#ifndef _Just_Show_DotNet_Form_
    public __gc class KeyItemForm : public System::Windows::Forms::Form
#else 
    public __gc class KeyItemForm : public BaseForm 
#endif
	{
	public: 
        KeyItemForm( char* FormName , char* DBName , char* OutputFile  , bool IsReadOnly , SearchFormTypeENUM FormType ) :  BaseForm( FormName , DBName , OutputFile  , IsReadOnly , FormType )
        {
            InitializeComponent();
            this->panel4_Base->Controls->Add(this->panel1);
        }
        
	protected: 
		void Dispose(Boolean disposing)
		{
			if (disposing && components)
			{
				components->Dispose();
			}
			__super::Dispose(disposing);
		}
    private: System::Windows::Forms::Panel *  panel1;
	private: System::Windows::Forms::ComboBox*  CB_KeyItemType;

    private: System::Windows::Forms::Label *  label3;
    private: System::Windows::Forms::Label *  label1;
    private: System::Windows::Forms::TextBox *  textBox1;
	private: System::Windows::Forms::GroupBox*  GB_LifeSkill;


	private: System::Windows::Forms::GroupBox*  groupBox1;
	private: System::Windows::Forms::Label*  label4;
	private: System::Windows::Forms::ComboBox*  comboBox2;
	private: System::Windows::Forms::Label*  label2;
	private: System::Windows::Forms::ComboBox*  comboBox1;
	private: System::Windows::Forms::Label*  label5;
	private: System::Windows::Forms::ComboBox*  comboBox3;
	private: System::Windows::Forms::ComboBox*  CB_SellType;
	private: System::Windows::Forms::Label*  label27;
	private: System::Windows::Forms::GroupBox*  groupBox10;
	private: System::Windows::Forms::ComboBox*  comboBox19;
	private: System::Windows::Forms::TextBox*  textBox2;



	private:
		/// <summary>
		/// Required designer variable.
		/// </summary>
		System::ComponentModel::Container* components;

		/// <summary>
		/// Required method for Designer support - do not modify
		/// the contents of this method with the code editor.
		/// </summary>
		void InitializeComponent(void)
		{
			this->panel1 = (new System::Windows::Forms::Panel());
			this->GB_LifeSkill = (new System::Windows::Forms::GroupBox());
			this->label5 = (new System::Windows::Forms::Label());
			this->comboBox3 = (new System::Windows::Forms::ComboBox());
			this->label4 = (new System::Windows::Forms::Label());
			this->comboBox2 = (new System::Windows::Forms::ComboBox());
			this->label2 = (new System::Windows::Forms::Label());
			this->comboBox1 = (new System::Windows::Forms::ComboBox());
			this->groupBox1 = (new System::Windows::Forms::GroupBox());
			this->CB_SellType = (new System::Windows::Forms::ComboBox());
			this->label27 = (new System::Windows::Forms::Label());
			this->groupBox10 = (new System::Windows::Forms::GroupBox());
			this->comboBox19 = (new System::Windows::Forms::ComboBox());
			this->textBox2 = (new System::Windows::Forms::TextBox());
			this->label3 = (new System::Windows::Forms::Label());
			this->textBox1 = (new System::Windows::Forms::TextBox());
			this->CB_KeyItemType = (new System::Windows::Forms::ComboBox());
			this->label1 = (new System::Windows::Forms::Label());
			this->panel1->SuspendLayout();
			this->GB_LifeSkill->SuspendLayout();
			this->groupBox1->SuspendLayout();
			this->groupBox10->SuspendLayout();
			this->SuspendLayout();
			// 
			// panel1
			// 
			this->panel1->Controls->Add(this->GB_LifeSkill);
			this->panel1->Controls->Add(this->groupBox1);
			this->panel1->Dock = System::Windows::Forms::DockStyle::Fill;
			this->panel1->Location = System::Drawing::Point(0, 0);
			this->panel1->Name = S"panel1";
			this->panel1->Size = System::Drawing::Size(792, 782);
			this->panel1->TabIndex = 0;
			// 
			// GB_LifeSkill
			// 
			this->GB_LifeSkill->Controls->Add(this->label5);
			this->GB_LifeSkill->Controls->Add(this->comboBox3);
			this->GB_LifeSkill->Controls->Add(this->label4);
			this->GB_LifeSkill->Controls->Add(this->comboBox2);
			this->GB_LifeSkill->Controls->Add(this->label2);
			this->GB_LifeSkill->Controls->Add(this->comboBox1);
			this->GB_LifeSkill->Dock = System::Windows::Forms::DockStyle::Top;
			this->GB_LifeSkill->Location = System::Drawing::Point(0, 93);
			this->GB_LifeSkill->Name = S"GB_LifeSkill";
			this->GB_LifeSkill->Size = System::Drawing::Size(792, 54);
			this->GB_LifeSkill->TabIndex = 86;
			this->GB_LifeSkill->TabStop = false;
			this->GB_LifeSkill->Text = S"生活技能上限";
			// 
			// label5
			// 
			this->label5->AutoSize = true;
			this->label5->Font = (new System::Drawing::Font(S"PMingLiU", 9, System::Drawing::FontStyle::Bold, System::Drawing::GraphicsUnit::Point, 
				(System::Byte)136));
			this->label5->ForeColor = System::Drawing::SystemColors::ActiveCaption;
			this->label5->Location = System::Drawing::Point(404, 24);
			this->label5->Name = S"label5";
			this->label5->Size = System::Drawing::Size(57, 12);
			this->label5->TabIndex = 87;
			this->label5->Text = S"等級上限";
			// 
			// comboBox3
			// 
			this->comboBox3->ItemHeight = 12;
			System::Object* __mcTemp__1[] = new System::Object*[5];
			__mcTemp__1[0] = S"20";
			__mcTemp__1[1] = S"40";
			__mcTemp__1[2] = S"60";
			__mcTemp__1[3] = S"80";
			__mcTemp__1[4] = S"100";
			this->comboBox3->Items->AddRange(__mcTemp__1);
			this->comboBox3->Location = System::Drawing::Point(467, 21);
			this->comboBox3->Name = S"comboBox3";
			this->comboBox3->Size = System::Drawing::Size(72, 20);
			this->comboBox3->TabIndex = 88;
			this->comboBox3->Tag = S"LifeSkillMaxLv";
			this->comboBox3->TextChanged += new System::EventHandler(this, &KeyItemForm::GetIntValue_TextChanged);
			// 
			// label4
			// 
			this->label4->AutoSize = true;
			this->label4->Font = (new System::Drawing::Font(S"PMingLiU", 9, System::Drawing::FontStyle::Bold, System::Drawing::GraphicsUnit::Point, 
				(System::Byte)136));
			this->label4->ForeColor = System::Drawing::SystemColors::ActiveCaption;
			this->label4->Location = System::Drawing::Point(204, 24);
			this->label4->Name = S"label4";
			this->label4->Size = System::Drawing::Size(70, 12);
			this->label4->TabIndex = 85;
			this->label4->Text = S"可學習等級";
			// 
			// comboBox2
			// 
			this->comboBox2->ItemHeight = 12;
			System::Object* __mcTemp__2[] = new System::Object*[5];
			__mcTemp__2[0] = S"15";
			__mcTemp__2[1] = S"35";
			__mcTemp__2[2] = S"55";
			__mcTemp__2[3] = S"75";
			__mcTemp__2[4] = S"95";
			this->comboBox2->Items->AddRange(__mcTemp__2);
			this->comboBox2->Location = System::Drawing::Point(280, 21);
			this->comboBox2->Name = S"comboBox2";
			this->comboBox2->Size = System::Drawing::Size(72, 20);
			this->comboBox2->TabIndex = 86;
			this->comboBox2->Tag = S"LifeSkillLearnLv";
			this->comboBox2->TextChanged += new System::EventHandler(this, &KeyItemForm::GetIntValue_TextChanged);
			// 
			// label2
			// 
			this->label2->AutoSize = true;
			this->label2->Font = (new System::Drawing::Font(S"PMingLiU", 9, System::Drawing::FontStyle::Bold, System::Drawing::GraphicsUnit::Point, 
				(System::Byte)136));
			this->label2->ForeColor = System::Drawing::SystemColors::ActiveCaption;
			this->label2->Location = System::Drawing::Point(15, 24);
			this->label2->Name = S"label2";
			this->label2->Size = System::Drawing::Size(57, 12);
			this->label2->TabIndex = 83;
			this->label2->Text = S"技能類型";
			// 
			// comboBox1
			// 
			this->comboBox1->DropDownStyle = System::Windows::Forms::ComboBoxStyle::DropDownList;
			this->comboBox1->ItemHeight = 12;
			System::Object* __mcTemp__3[] = new System::Object*[12];
			__mcTemp__3[0] = S"打鐵";
			__mcTemp__3[1] = S"木工";
			__mcTemp__3[2] = S"製甲";
			__mcTemp__3[3] = S"裁縫";
			__mcTemp__3[4] = S"烹飪";
			__mcTemp__3[5] = S"煉金";
			__mcTemp__3[6] = S"挖礦";
			__mcTemp__3[7] = S"砍材";
			__mcTemp__3[8] = S"採藥";
			__mcTemp__3[9] = S"釣魚";
			__mcTemp__3[10] = S"種植";
			__mcTemp__3[11] = S"補捉寵物";
			this->comboBox1->Items->AddRange(__mcTemp__3);
			this->comboBox1->Location = System::Drawing::Point(79, 21);
			this->comboBox1->Name = S"comboBox1";
			this->comboBox1->Size = System::Drawing::Size(112, 20);
			this->comboBox1->TabIndex = 84;
			this->comboBox1->Tag = S"LifeSkillType";
			this->comboBox1->SelectedIndexChanged += new System::EventHandler(this, &KeyItemForm::GetIndex_SelectedIndexChanged);
			// 
			// groupBox1
			// 
			this->groupBox1->Controls->Add(this->CB_SellType);
			this->groupBox1->Controls->Add(this->label27);
			this->groupBox1->Controls->Add(this->groupBox10);
			this->groupBox1->Controls->Add(this->label3);
			this->groupBox1->Controls->Add(this->textBox1);
			this->groupBox1->Controls->Add(this->CB_KeyItemType);
			this->groupBox1->Controls->Add(this->label1);
			this->groupBox1->Dock = System::Windows::Forms::DockStyle::Top;
			this->groupBox1->Location = System::Drawing::Point(0, 0);
			this->groupBox1->Name = S"groupBox1";
			this->groupBox1->Size = System::Drawing::Size(792, 93);
			this->groupBox1->TabIndex = 85;
			this->groupBox1->TabStop = false;
			// 
			// CB_SellType
			// 
			this->CB_SellType->DropDownStyle = System::Windows::Forms::ComboBoxStyle::DropDownList;
			this->CB_SellType->ItemHeight = 12;
			System::Object* __mcTemp__4[] = new System::Object*[25];
			__mcTemp__4[0] = S"一般";
			__mcTemp__4[1] = S"劇情";
			__mcTemp__4[2] = S"食物";
			__mcTemp__4[3] = S"甜食";
			__mcTemp__4[4] = S"藥水";
			__mcTemp__4[5] = S"礦石";
			__mcTemp__4[6] = S"木材";
			__mcTemp__4[7] = S"藥草";
			__mcTemp__4[8] = S"獵物";
			__mcTemp__4[9] = S"種子";
			__mcTemp__4[10] = S"花盆";
			__mcTemp__4[11] = S"作物";
			__mcTemp__4[12] = S"魚";
			__mcTemp__4[13] = S"工具";
			__mcTemp__4[14] = S"製造材料";
			__mcTemp__4[15] = S"配方 - 打鐵";
			__mcTemp__4[16] = S"配方 - 木工";
			__mcTemp__4[17] = S"配方 - 製甲";
			__mcTemp__4[18] = S"配方 - 裁縫";
			__mcTemp__4[19] = S"配方 - 煉金";
			__mcTemp__4[20] = S"配方 - 烹飪";
			__mcTemp__4[21] = S"衝等寶石";
			__mcTemp__4[22] = S"效果光球";
			__mcTemp__4[23] = S"金錢";
			__mcTemp__4[24] = S"符文";
			this->CB_SellType->Items->AddRange(__mcTemp__4);
			this->CB_SellType->Location = System::Drawing::Point(79, 54);
			this->CB_SellType->Name = S"CB_SellType";
			this->CB_SellType->Size = System::Drawing::Size(82, 20);
			this->CB_SellType->TabIndex = 171;
			this->CB_SellType->Tag = S"SellType";
			this->CB_SellType->SelectedIndexChanged += new System::EventHandler(this, &KeyItemForm::GetIndex_SelectedIndexChanged);
			// 
			// label27
			// 
			this->label27->AutoSize = true;
			this->label27->Font = (new System::Drawing::Font(S"PMingLiU", 9, System::Drawing::FontStyle::Bold, System::Drawing::GraphicsUnit::Point, 
				(System::Byte)136));
			this->label27->ForeColor = System::Drawing::SystemColors::ActiveCaption;
			this->label27->Location = System::Drawing::Point(18, 58);
			this->label27->Name = S"label27";
			this->label27->Size = System::Drawing::Size(57, 12);
			this->label27->TabIndex = 172;
			this->label27->Text = S"商品分類";
			// 
			// groupBox10
			// 
			this->groupBox10->Controls->Add(this->comboBox19);
			this->groupBox10->Controls->Add(this->textBox2);
			this->groupBox10->Location = System::Drawing::Point(206, 41);
			this->groupBox10->Name = S"groupBox10";
			this->groupBox10->Size = System::Drawing::Size(195, 46);
			this->groupBox10->TabIndex = 173;
			this->groupBox10->TabStop = false;
			this->groupBox10->Text = S"價值";
			// 
			// comboBox19
			// 
			this->comboBox19->DropDownStyle = System::Windows::Forms::ComboBoxStyle::DropDownList;
			this->comboBox19->ItemHeight = 12;
			System::Object* __mcTemp__5[] = new System::Object*[2];
			__mcTemp__5[0] = S"遊戲幣";
			__mcTemp__5[1] = S"點數幣";
			this->comboBox19->Items->AddRange(__mcTemp__5);
			this->comboBox19->Location = System::Drawing::Point(6, 16);
			this->comboBox19->Name = S"comboBox19";
			this->comboBox19->Size = System::Drawing::Size(84, 20);
			this->comboBox19->TabIndex = 87;
			this->comboBox19->Tag = S"PricesType";
			this->comboBox19->SelectedIndexChanged += new System::EventHandler(this, &KeyItemForm::GetIndex_SelectedIndexChanged);
			// 
			// textBox2
			// 
			this->textBox2->Location = System::Drawing::Point(96, 17);
			this->textBox2->Name = S"textBox2";
			this->textBox2->Size = System::Drawing::Size(84, 22);
			this->textBox2->TabIndex = 82;
			this->textBox2->Tag = S"Cost";
			this->textBox2->Text = S"0";
			this->textBox2->TextChanged += new System::EventHandler(this, &KeyItemForm::GetIntValue_TextChanged);
			// 
			// label3
			// 
			this->label3->AutoSize = true;
			this->label3->Font = (new System::Drawing::Font(S"PMingLiU", 9, System::Drawing::FontStyle::Bold, System::Drawing::GraphicsUnit::Point, 
				(System::Byte)136));
			this->label3->ForeColor = System::Drawing::SystemColors::ActiveCaption;
			this->label3->Location = System::Drawing::Point(12, 22);
			this->label3->Name = S"label3";
			this->label3->Size = System::Drawing::Size(57, 12);
			this->label3->TabIndex = 81;
			this->label3->Text = S"物件分類";
			// 
			// textBox1
			// 
			this->textBox1->Location = System::Drawing::Point(269, 18);
			this->textBox1->Name = S"textBox1";
			this->textBox1->Size = System::Drawing::Size(120, 22);
			this->textBox1->TabIndex = 84;
			this->textBox1->Tag = S"QuestID";
			this->textBox1->Text = S"textBox1";
			this->textBox1->TextChanged += new System::EventHandler(this, &KeyItemForm::GetIntValue_TextChanged);
			// 
			// CB_KeyItemType
			// 
			this->CB_KeyItemType->DropDownStyle = System::Windows::Forms::ComboBoxStyle::DropDownList;
			this->CB_KeyItemType->ItemHeight = 12;
			System::Object* __mcTemp__6[] = new System::Object*[8];
			__mcTemp__6[0] = S"不可見物品";
			__mcTemp__6[1] = S"任務條件";
			__mcTemp__6[2] = S"功能開啟";
			__mcTemp__6[3] = S"地圖";
			__mcTemp__6[4] = S"技能書";
			__mcTemp__6[5] = S"配方表";
			__mcTemp__6[6] = S"生活技能上限";
			__mcTemp__6[7] = S"每日重置物品";
			this->CB_KeyItemType->Items->AddRange(__mcTemp__6);
			this->CB_KeyItemType->Location = System::Drawing::Point(79, 18);
			this->CB_KeyItemType->Name = S"CB_KeyItemType";
			this->CB_KeyItemType->Size = System::Drawing::Size(112, 20);
			this->CB_KeyItemType->TabIndex = 82;
			this->CB_KeyItemType->Tag = S"Type";
			this->CB_KeyItemType->SelectedIndexChanged += new System::EventHandler(this, &KeyItemForm::GetIndex_SelectedIndexChanged);
			// 
			// label1
			// 
			this->label1->Location = System::Drawing::Point(207, 22);
			this->label1->Name = S"label1";
			this->label1->Size = System::Drawing::Size(56, 16);
			this->label1->TabIndex = 83;
			this->label1->Text = S"相關任務";
			// 
			// KeyItemForm
			// 
			this->AutoScaleBaseSize = System::Drawing::Size(5, 15);
			this->ClientSize = System::Drawing::Size(792, 782);
			this->Controls->Add(this->panel1);
			this->Name = S"KeyItemForm";
			this->Text = S"KeyItemForm";
			this->panel1->ResumeLayout(false);
			this->GB_LifeSkill->ResumeLayout(false);
			this->GB_LifeSkill->PerformLayout();
			this->groupBox1->ResumeLayout(false);
			this->groupBox1->PerformLayout();
			this->groupBox10->ResumeLayout(false);
			this->groupBox10->PerformLayout();
			this->ResumeLayout(false);

		}		


#ifndef _Just_Show_DotNet_Form_
    private:
        System::Void GetStr_TextChanged(System::Object *  sender, System::EventArgs *  e);
        System::Void GetValue_ValueChanged(System::Object *  sender, System::EventArgs *  e);
        System::Void ChangeFlag(System::Object *  sender, System::EventArgs *  e);
        System::Void GetIndex_SelectedIndexChanged(System::Object *  sender, System::EventArgs *  e);
        System::Void GetIntValue_TextChanged(System::Object *  sender, System::EventArgs *  e);
        System::Void BaseForm_Closing(System::Object *  sender, System::ComponentModel::CancelEventArgs *  e);
        System::Void SearchObj_DClick(System::Object *  sender, System::EventArgs *  e);

#endif
    protected:
        //######################################################################################################
        //主要需要繼承的涵式
        virtual ReaderClass< DB_GameObjDbStruct >* ObjReader( );        
        virtual void    OnActive();
        virtual void    OnSelectObj( bool LockOk );
        virtual void    OnOutputObjSetting( DB_GameObjDbStruct* TempObj );
        virtual void    OnTimeProc();
        virtual int     ObjSize();
		virtual void    OnValueChange( );
        //######################################################################################################

	};
}