• R/O
  • SSH
  • HTTPS

marathon: コミット


コミットメタ情報

リビジョン335 (tree)
日時2007-06-17 00:14:55
作者hogepiyo

ログメッセージ

*** empty log message ***

変更サマリ

差分

--- marathon/trunk/MapEditorWX/src/MapEditorWX.cpp (revision 334)
+++ marathon/trunk/MapEditorWX/src/MapEditorWX.cpp (revision 335)
@@ -250,5 +250,7 @@
250250 //TODO カーソル
251251 ::wxSetCursor(cursors[toolType]);
252252 }else{
253+ //矢印にする
254+ ::wxSetCursor(cursors[0]);
253255 }
254256 }
--- marathon/trunk/MapEditorWX/src/MapEditorMainFrame.cpp (revision 334)
+++ marathon/trunk/MapEditorWX/src/MapEditorMainFrame.cpp (revision 335)
@@ -78,9 +78,14 @@
7878
7979 //ダイアログ
8080 //TODO dlg
81+ //tool
8182 this->toolDialog.Create(this, wxID_ANY);
8283 this->toolDialog.Show();
8384
85+ //height
86+ this->heightDialog.Create(this, wxID_ANY);
87+ this->heightDialog.Show();
88+
8489 //ペン・ブラシのセットアップ
8590 this->setupPenAndBrush(wxGetApp().setting.getColorSetting());
8691
@@ -97,10 +102,10 @@
97102 //TODO
98103 //テスト
99104 //プラットフォームダイアログ
100- PlatformDialog dlg;
105+/* PlatformDialog dlg;
101106 dlg.Create(this, wxID_ANY);
102107 int id = dlg.ShowModal();
103- hpl::error::halt("%d", id);
108+ hpl::error::halt("%d", id);*/
104109 }
105110 MapEditorMainFrame::~MapEditorMainFrame()
106111 {
@@ -419,3 +424,59 @@
419424 wxMenuItemList lst = menu->GetMenuItems();
420425 // lst.
421426 }
427+
428+/**
429+ 新しいモードに切り替えます
430+*/
431+void MapEditorMainFrame::changeEditMode(int mode)
432+{
433+ //モードのチェックをすべてはずします
434+ this->uncheckModesOnMenu();
435+
436+ //チェックをつけます
437+ //TODO
438+ if(mode != EditModeType::EM_DRAW){
439+ //選択状態を解除
440+ wxGetApp().selectData.clear();
441+
442+ //線・点・プラットフォーム・オブジェクト
443+ //以上のプロパティダイアログを消します
444+ this->linePropDialog.Show(false);
445+ this->pointPropDialog.Show(false);
446+ this->polyPropDialog.Show(false);
447+ this->objPropDialog.Show(false);
448+ }
449+ if(mode != EditModeType::EM_FLOOR_TEXTURE &&
450+ mode != EditModeType::EM_CEILING_TEXTURE)
451+ {
452+ //テクスチャモード以外
453+ //hide texture palette
454+ this->textureDialog.Show(false);
455+ }
456+
457+ if(mode != EditModeType::EM_POLYGON_TYPE){
458+ //ポリゴンタイプダイアログを消す
459+ this->polyTypeDialog.Show(false);
460+ }
461+ if(mode != EditModeType::EM_CEILING_HEIGHT &&
462+ mode != EditModeType::EM_FLOOR_HEIGHT)
463+ {
464+ //高さウインドウを消す
465+ this->heightPaletteDialog.Show(false);
466+ }
467+ if(mode != EditModeType::EM_CEILING_LIGHT &&
468+ mode != EditModeType::EM_FLOOR_LIGHT)
469+ {
470+ //TODO ライトパレットを消す
471+ }
472+ if(mode != EditModeType::EM_MEDIA)
473+ {
474+ //TODO メディアパレットを消す
475+ }
476+ if(mode != EditModeType::EM_SOUND)
477+ {
478+ //TODO サウンドパレットを消す
479+ }
480+
481+ Refresh();
482+}
--- marathon/trunk/MapEditorWX/src/JumpLevelDialog.h (nonexistent)
+++ marathon/trunk/MapEditorWX/src/JumpLevelDialog.h (revision 335)
@@ -0,0 +1,12 @@
1+#ifndef _JUMP_LEVEL_DIALOG_
2+#define _JUMP_LEVEL_DIALOG_
3+
4+#include "DlgCommon.h"
5+
6+class JumpLevelDialog: wxDialog{
7+public:
8+ JumpLevelDialog();
9+ virtual ~JumpLevelDialog();
10+};
11+
12+#endif
--- marathon/trunk/MapEditorWX/src/MainFrameEvent.cpp (revision 334)
+++ marathon/trunk/MapEditorWX/src/MainFrameEvent.cpp (revision 335)
@@ -17,37 +17,37 @@
1717
1818 // int toolType = wxGetApp().getEventManager()->getToolType();
1919
20+ if(ctrl){
21+ Refresh();
22+ return;
23+ }
2024 switch(wxGetApp().getEventManager()->getEditModeType()){
2125 case EditModeType::EM_DRAW:
22- if(ctrl){
23- }else{
24- //押さずにクリック
25- doLButtonOnDrawMode(ev);
26- }
26+ doLButtonOnDrawMode(ev);
2727 break;
2828 case EditModeType::EM_POLYGON_TYPE:
29- //TODO
29+ doLButtonOnPolygonMode(ev);
3030 break;
3131 case EditModeType::EM_FLOOR_HEIGHT:
32- //TODO
32+ doLButtonOnFloorHeightMode(ev);
3333 break;
3434 case EditModeType::EM_CEILING_HEIGHT:
35- //TODO
35+ doLButtonOnCeilingHeightMode(ev);
3636 break;
3737 case EditModeType::EM_FLOOR_LIGHT:
38- //TODO
38+ doLButtonOnFloorLightMode(ev);
3939 break;
4040 case EditModeType::EM_CEILING_LIGHT:
41- //TODO
41+ doLButtonOnCeilingLightMode(ev);
4242 break;
4343 case EditModeType::EM_MEDIA:
44- //TODO
44+ doLButtonOnMediaMode(ev);
4545 break;
4646 case EditModeType::EM_FLOOR_TEXTURE:
47- //TODO
47+ doLButtonOnFloorTextureMode(ev);
4848 break;
4949 case EditModeType::EM_CEILING_TEXTURE:
50- //TODO
50+ doLButtonOnCeilingTextureMode(ev);
5151 break;
5252 }
5353 Refresh();
@@ -380,21 +380,73 @@
380380 /////////////////////////////////////////////////////////////
381381 void MapEditorMainFrame::doLButtonOnFillTool(wxMouseEvent& ev)
382382 {
383+ //TODO
384+ //塗りつぶし可能なポリゴンデータを取得します
385+ //hp::aleph::map::getValidPolygons();
383386 }
384387 void MapEditorMainFrame::doLButtonOnHandTool(wxMouseEvent& ev)
385388 {
389+ //MouseMotionに丸投げ
390+
386391 }
387392 void MapEditorMainFrame::doLButtonOnLineTool(wxMouseEvent& ev)
388393 {
394+ //線追加
395+#ifdef MAP_VIEWER
396+#else
397+ //選択解除
398+ wxGetApp().selectDatas.clear();
399+
400+ int mx = ev.m_x;
401+ int my = ev.m_y;
402+ //世界座標にする
403+ world_point2d wpoint = wxGetApp().getWorldPointFromViewPoint(mx, my);
404+
405+ //重なる点があるかどうかチェック
406+ if(hpl::aleph::map::isSelectPoint(mx, my, wpoint.x, wpoint.y,
407+ voffset[0], voffset[1], OFFSET_X_WORLD, OFFSET_Y_WORLD, div))
408+ {
409+ //既存の点
410+ //中継点・始点・終点にする
411+ wxGetApp().isFirstOfLineToAdd = false;
412+ //同じ点をクリックしていたら何もしない
413+ //TODO
414+ //でなけば線を作成する
415+ //TODO
416+ }else{
417+ //新規追加
418+ //点を追加してから線を追加する
419+ }
420+#endif
389421 }
390422 void MapEditorMainFrame::doLButtonOnMagnifyTool(wxMouseEvent& ev)
391423 {
424+ bool shift = ev.ShiftDown();
425+ wxCommandEvent dummy;
426+ if(shift){
427+ //縮小
428+ this->OnZoomOut(dummy);
429+ }else{
430+ this->OnZoomIn(dummy);
431+ }
392432 }
393433 void MapEditorMainFrame::doLButtonOnSkullTool(wxMouseEvent& ev)
394434 {
435+ //オブジェクト配置
436+#ifdef MAP_VIEWER
437+#else
438+ int mx = ev.m_x;
439+ int my = ev.m_y;
440+ world_point2d wpoint = wxGetApp().getWorldPointFromViewPoint(mx, my);
441+ //点の中に入るポリゴンを取得します
442+ //std::vector<int> polyIndexes = hpl::aleph::map::getPolygonIndexesIncludePoint(wpoint);
443+ //TODO
444+#endif
395445 }
396446 void MapEditorMainFrame::doLButtonOnTextTool(wxMouseEvent& ev)
397447 {
448+#ifdef MAP_VIEWER
449+#else
398450 //アノテーション追加
399451 //ダイアログ準備
400452 AnnotationDialog dlg;
@@ -419,9 +471,16 @@
419471 //追加
420472 hpl::aleph::map::addAnnotation(newAnnotation);
421473 }
474+#endif
422475 }
423476 void MapEditorMainFrame::doLButtonOnPolygonTool(wxMouseEvent& ev)
424477 {
478+#ifdef MAP_VIEWER
479+#else
480+ //範囲選択開始
481+ //TODO
482+ //wxGetApp().getEventManager()->
483+#endif
425484 }
426485
427486 void MapEditorMainFrame::doLButtonOnPolygonMode(wxMouseEvent& ev)
--- marathon/trunk/MapEditorWX/src/MapEditorWX.h (revision 334)
+++ marathon/trunk/MapEditorWX/src/MapEditorWX.h (revision 335)
@@ -26,6 +26,7 @@
2626 #include <wx/sizer.h>
2727 #include <wx/cursor.h>
2828 #include <wx/xrc/xmlres.h>
29+#include <wx/filedlg.h>
2930
3031 #ifdef __BORLANDC__
3132 #pragma hdrstop
@@ -180,6 +181,8 @@
180181
181182 //マップが変更されたか
182183 bool isChanged;
184+ //ファイルパス
185+ wxString filePath;
183186
184187 //イベント管理
185188 hpl::aleph::HPLEventManager eventManager;
--- marathon/trunk/MapEditorWX/src/res/Dialogues.h (revision 334)
+++ marathon/trunk/MapEditorWX/src/res/Dialogues.h (revision 335)
@@ -1,4 +1,4 @@
1-// -*- C++ -*- generated by wxGlade 0.5 on Fri Jun 15 22:36:02 2007 from C:\Documents and Settings\koji\My Documents\saved_\repository_\marathon\MapEditorWX\src\res\MapEditorWX.wxg
1+// -*- C++ -*- generated by wxGlade 0.5 on Sat Jun 16 18:59:18 2007 from C:\Documents and Settings\koji\My Documents\saved_\repository_\marathon\MapEditorWX\src\res\MapEditorWX.wxg
22
33 #include <wx/wx.h>
44 #include <wx/image.h>
@@ -384,28 +384,155 @@
384384 protected:
385385 // begin wxGlade: PolygonPropDialog::attributes
386386 wxStaticText* label_34;
387+ wxTextCtrl* text_ctrl_20;
387388 wxStaticText* label_46;
389+ wxTextCtrl* text_ctrl_21;
388390 wxStaticText* label_35;
391+ wxChoice* choice_12;
389392 wxStaticText* label_47;
393+ wxTextCtrl* text_ctrl_22;
390394 wxStaticText* label_36;
395+ wxTextCtrl* text_ctrl_25;
391396 wxStaticText* label_48;
397+ wxTextCtrl* text_ctrl_23;
392398 wxStaticText* label_37;
399+ wxChoice* choice_13;
393400 wxStaticText* label_49;
401+ wxTextCtrl* text_ctrl_24;
394402 wxStaticText* label_38;
403+ wxChoice* choice_14;
404+ wxStaticText* label_26;
405+ wxTextCtrl* text_ctrl_33;
406+ wxStaticText* label_27;
407+ wxTextCtrl* text_ctrl_35;
395408 wxStaticText* label_39;
409+ wxTextCtrl* text_ctrl_26;
396410 wxStaticText* label_55;
411+ wxTextCtrl* text_ctrl_34;
412+ wxStaticText* label_28;
413+ wxTextCtrl* text_ctrl_36;
397414 wxStaticText* label_40;
415+ wxChoice* choice_19;
398416 wxStaticText* label_54;
417+ wxChoice* choice_15;
399418 wxStaticText* label_41;
419+ wxTextCtrl* text_ctrl_28;
400420 wxStaticText* label_53;
421+ wxChoice* choice_16;
401422 wxStaticText* label_42;
423+ wxTextCtrl* text_ctrl_29;
402424 wxStaticText* label_52;
425+ wxChoice* choice_20;
403426 wxStaticText* label_43;
427+ wxTextCtrl* text_ctrl_30;
404428 wxStaticText* label_51;
429+ wxChoice* choice_17;
405430 wxStaticText* label_44;
431+ wxTextCtrl* text_ctrl_31;
406432 wxStaticText* label_50;
433+ wxChoice* choice_18;
434+ wxButton* button_21;
435+ wxPanel* panel_10;
436+ wxPanel* panel_11;
437+ wxPanel* panel_12;
438+ // end wxGlade
439+}; // wxGlade: end class
440+
441+
442+class PolygonNum: public wxDialog {
443+public:
444+ // begin wxGlade: PolygonNum::ids
445+ // end wxGlade
446+
447+ PolygonNum(wxWindow* parent, int id, const wxString& title, const wxPoint& pos=wxDefaultPosition, const wxSize& size=wxDefaultSize, long style=wxDEFAULT_DIALOG_STYLE);
448+
449+private:
450+ // begin wxGlade: PolygonNum::methods
451+ void set_properties();
452+ void do_layout();
453+ // end wxGlade
454+
455+protected:
456+ // begin wxGlade: PolygonNum::attributes
457+ wxBitmapButton* bitmap_button_1;
458+ wxBitmapButton* bitmap_button_2;
459+ wxBitmapButton* bitmap_button_3;
460+ wxBitmapButton* bitmap_button_4;
461+ wxBitmapButton* bitmap_button_5;
462+ wxBitmapButton* bitmap_button_6;
463+ // end wxGlade
464+
465+ DECLARE_EVENT_TABLE();
466+
467+public:
468+ void OnPoly3(wxCommandEvent &event); // wxGlade: <event_handler>
469+ void OnPoly4(wxCommandEvent &event); // wxGlade: <event_handler>
470+ void OnPoly5(wxCommandEvent &event); // wxGlade: <event_handler>
471+ void OnPoly6(wxCommandEvent &event); // wxGlade: <event_handler>
472+ void OnPoly7(wxCommandEvent &event); // wxGlade: <event_handler>
473+ void OnPoly8(wxCommandEvent &event); // wxGlade: <event_handler>
474+}; // wxGlade: end class
475+
476+
477+class ObjectPropDialog: public wxDialog {
478+public:
479+ // begin wxGlade: ObjectPropDialog::ids
480+ // end wxGlade
481+
482+ ObjectPropDialog(wxWindow* parent, int id, const wxString& title, const wxPoint& pos=wxDefaultPosition, const wxSize& size=wxDefaultSize, long style=wxDEFAULT_DIALOG_STYLE);
483+
484+private:
485+ // begin wxGlade: ObjectPropDialog::methods
486+ void set_properties();
487+ void do_layout();
488+ // end wxGlade
489+
490+protected:
491+ // begin wxGlade: ObjectPropDialog::attributes
407492 wxStaticText* label_45;
493+ wxTextCtrl* text_ctrl_27;
494+ wxChoice* choice_21;
495+ wxStaticText* label_56;
496+ wxTextCtrl* text_ctrl_32;
497+ wxChoice* choice_22;
498+ wxCheckBox* checkbox_46;
499+ wxCheckBox* checkbox_47;
500+ wxCheckBox* checkbox_48;
501+ wxCheckBox* checkbox_49;
502+ wxCheckBox* checkbox_50;
503+ wxCheckBox* checkbox_51;
504+ wxStaticText* label_59;
505+ wxTextCtrl* text_ctrl_37;
506+ wxStaticText* label_58;
507+ wxTextCtrl* text_ctrl_38;
508+ wxPanel* panel_16;
509+ wxStaticText* label_60;
510+ wxChoice* choice_23;
511+ wxPanel* panel_17;
512+ wxStaticText* label_61;
513+ wxTextCtrl* text_ctrl_39;
514+ wxStaticText* label_63;
515+ wxTextCtrl* text_ctrl_41;
516+ wxStaticText* label_62;
517+ wxTextCtrl* text_ctrl_40;
518+ wxPanel* panel_18;
408519 // end wxGlade
520+
521+ DECLARE_EVENT_TABLE();
522+
523+public:
524+ void OnTypeChoice(wxCommandEvent &event); // wxGlade: <event_handler>
525+ void OnIndexChoice(wxCommandEvent &event); // wxGlade: <event_handler>
526+ void OnHiddenCheck(wxCommandEvent &event); // wxGlade: <event_handler>
527+ void OnCeilingCheck(wxCommandEvent &event); // wxGlade: <event_handler>
528+ void OnSeeCheck(wxCommandEvent &event); // wxGlade: <event_handler>
529+ void OnHearCheck(wxCommandEvent &event); // wxGlade: <event_handler>
530+ void OnAerialCheck(wxCommandEvent &event); // wxGlade: <event_handler>
531+ void OnNetCheck(wxCommandEvent &event); // wxGlade: <event_handler>
532+ void OnLaunchChoice(wxCommandEvent &event); // wxGlade: <event_handler>
533+ void OnXEdit(wxCommandEvent &event); // wxGlade: <event_handler>
534+ void OnYEdit(wxCommandEvent &event); // wxGlade: <event_handler>
535+ void OnZEdit(wxCommandEvent &event); // wxGlade: <event_handler>
409536 }; // wxGlade: end class
410537
411538
--- marathon/trunk/MapEditorWX/src/res/Dialogues.cpp (revision 334)
+++ marathon/trunk/MapEditorWX/src/res/Dialogues.cpp (revision 335)
@@ -1,4 +1,4 @@
1-// -*- C++ -*- generated by wxGlade 0.5 on Fri Jun 15 22:36:02 2007 from C:\Documents and Settings\koji\My Documents\saved_\repository_\marathon\MapEditorWX\src\res\MapEditorWX.wxg
1+// -*- C++ -*- generated by wxGlade 0.5 on Sat Jun 16 18:59:18 2007 from C:\Documents and Settings\koji\My Documents\saved_\repository_\marathon\MapEditorWX\src\res\MapEditorWX.wxg
22
33 #include "Dialogues.h"
44
@@ -1004,28 +1004,85 @@
10041004 wxDialog(parent, id, title, pos, size, wxDEFAULT_DIALOG_STYLE)
10051005 {
10061006 // begin wxGlade: PolygonPropDialog::PolygonPropDialog
1007- label_34 = new wxStaticText(this, wxID_ANY, wxT("label_34"));
1008- label_46 = new wxStaticText(this, wxID_ANY, wxT("label_46"));
1009- label_35 = new wxStaticText(this, wxID_ANY, wxT("label_35"));
1010- label_47 = new wxStaticText(this, wxID_ANY, wxT("label_47"));
1011- label_36 = new wxStaticText(this, wxID_ANY, wxT("label_36"));
1012- label_48 = new wxStaticText(this, wxID_ANY, wxT("label_48"));
1013- label_37 = new wxStaticText(this, wxID_ANY, wxT("label_37"));
1014- label_49 = new wxStaticText(this, wxID_ANY, wxT("label_49"));
1015- label_38 = new wxStaticText(this, wxID_ANY, wxT("label_38"));
1016- label_39 = new wxStaticText(this, wxID_ANY, wxT("label_39"));
1017- label_55 = new wxStaticText(this, wxID_ANY, wxT("label_55"));
1018- label_40 = new wxStaticText(this, wxID_ANY, wxT("label_40"));
1019- label_54 = new wxStaticText(this, wxID_ANY, wxT("label_54"));
1020- label_41 = new wxStaticText(this, wxID_ANY, wxT("label_41"));
1021- label_53 = new wxStaticText(this, wxID_ANY, wxT("label_53"));
1022- label_42 = new wxStaticText(this, wxID_ANY, wxT("label_42"));
1023- label_52 = new wxStaticText(this, wxID_ANY, wxT("label_52"));
1024- label_43 = new wxStaticText(this, wxID_ANY, wxT("label_43"));
1025- label_51 = new wxStaticText(this, wxID_ANY, wxT("label_51"));
1026- label_44 = new wxStaticText(this, wxID_ANY, wxT("label_44"));
1027- label_50 = new wxStaticText(this, wxID_ANY, wxT("label_50"));
1028- label_45 = new wxStaticText(this, wxID_ANY, wxT("label_45"));
1007+ label_34 = new wxStaticText(this, wxID_ANY, wxT("Polygon ID"));
1008+ text_ctrl_20 = new wxTextCtrl(this, wxID_ANY, wxEmptyString);
1009+ label_46 = new wxStaticText(this, wxID_ANY, wxT("First neighbour"));
1010+ text_ctrl_21 = new wxTextCtrl(this, wxID_ANY, wxEmptyString);
1011+ label_35 = new wxStaticText(this, wxID_ANY, wxT("Type"));
1012+ const wxString choice_12_choices[] = {
1013+
1014+ };
1015+ choice_12 = new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, choice_12_choices, 0);
1016+ label_47 = new wxStaticText(this, wxID_ANY, wxT("Near count"));
1017+ text_ctrl_22 = new wxTextCtrl(this, wxID_ANY, wxEmptyString);
1018+ label_36 = new wxStaticText(this, wxID_ANY, wxT("Permutation"));
1019+ text_ctrl_25 = new wxTextCtrl(this, wxID_ANY, wxEmptyString);
1020+ label_48 = new wxStaticText(this, wxID_ANY, wxT("Center X"));
1021+ text_ctrl_23 = new wxTextCtrl(this, wxID_ANY, wxEmptyString);
1022+ label_37 = new wxStaticText(this, wxID_ANY, wxT("Floor light"));
1023+ const wxString choice_13_choices[] = {
1024+
1025+ };
1026+ choice_13 = new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, choice_13_choices, 0);
1027+ label_49 = new wxStaticText(this, wxID_ANY, wxT("Center Y"));
1028+ text_ctrl_24 = new wxTextCtrl(this, wxID_ANY, wxEmptyString);
1029+ label_38 = new wxStaticText(this, wxID_ANY, wxT("Ceiling light"));
1030+ const wxString choice_14_choices[] = {
1031+
1032+ };
1033+ choice_14 = new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, choice_14_choices, 0);
1034+ label_26 = new wxStaticText(this, wxID_ANY, wxT("Floor origin"));
1035+ text_ctrl_33 = new wxTextCtrl(this, wxID_ANY, wxEmptyString);
1036+ label_27 = new wxStaticText(this, wxID_ANY, wxT("x"));
1037+ text_ctrl_35 = new wxTextCtrl(this, wxID_ANY, wxEmptyString);
1038+ label_39 = new wxStaticText(this, wxID_ANY, wxT("Area"));
1039+ text_ctrl_26 = new wxTextCtrl(this, wxID_ANY, wxEmptyString);
1040+ label_55 = new wxStaticText(this, wxID_ANY, wxT("Ceiling origin"));
1041+ text_ctrl_34 = new wxTextCtrl(this, wxID_ANY, wxEmptyString);
1042+ label_28 = new wxStaticText(this, wxID_ANY, wxT("x"));
1043+ text_ctrl_36 = new wxTextCtrl(this, wxID_ANY, wxEmptyString);
1044+ label_40 = new wxStaticText(this, wxID_ANY, wxT("First object"));
1045+ const wxString choice_19_choices[] = {
1046+
1047+ };
1048+ choice_19 = new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, choice_19_choices, 0);
1049+ label_54 = new wxStaticText(this, wxID_ANY, wxT("Media"));
1050+ const wxString choice_15_choices[] = {
1051+
1052+ };
1053+ choice_15 = new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, choice_15_choices, 0);
1054+ label_41 = new wxStaticText(this, wxID_ANY, wxT("First ex zone"));
1055+ text_ctrl_28 = new wxTextCtrl(this, wxID_ANY, wxEmptyString);
1056+ label_53 = new wxStaticText(this, wxID_ANY, wxT("Media light"));
1057+ const wxString choice_16_choices[] = {
1058+
1059+ };
1060+ choice_16 = new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, choice_16_choices, 0);
1061+ label_42 = new wxStaticText(this, wxID_ANY, wxT("Line ex zone"));
1062+ text_ctrl_29 = new wxTextCtrl(this, wxID_ANY, wxEmptyString);
1063+ label_52 = new wxStaticText(this, wxID_ANY, wxT("Snd src index"));
1064+ const wxString choice_20_choices[] = {
1065+
1066+ };
1067+ choice_20 = new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, choice_20_choices, 0);
1068+ label_43 = new wxStaticText(this, wxID_ANY, wxT("Floor trans"));
1069+ text_ctrl_30 = new wxTextCtrl(this, wxID_ANY, wxEmptyString);
1070+ label_51 = new wxStaticText(this, wxID_ANY, wxT("Amb snd"));
1071+ const wxString choice_17_choices[] = {
1072+
1073+ };
1074+ choice_17 = new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, choice_17_choices, 0);
1075+ label_44 = new wxStaticText(this, wxID_ANY, wxT("Ceiling trans"));
1076+ text_ctrl_31 = new wxTextCtrl(this, wxID_ANY, wxEmptyString);
1077+ label_50 = new wxStaticText(this, wxID_ANY, wxT("Rnd snd"));
1078+ const wxString choice_18_choices[] = {
1079+
1080+ };
1081+ choice_18 = new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, choice_18_choices, 0);
1082+ button_21 = new wxButton(this, wxID_ANY, wxT("button_21"));
1083+ panel_10 = new wxPanel(this, wxID_ANY);
1084+ panel_11 = new wxPanel(this, wxID_ANY);
1085+ panel_12 = new wxPanel(this, wxID_ANY);
10291086
10301087 set_properties();
10311088 do_layout();
@@ -1036,7 +1093,20 @@
10361093 void PolygonPropDialog::set_properties()
10371094 {
10381095 // begin wxGlade: PolygonPropDialog::set_properties
1039- SetTitle(wxT("dialog_9"));
1096+ SetTitle(wxT("Polygon property"));
1097+ choice_12->SetMinSize(wxSize(100, 22));
1098+ choice_13->SetMinSize(wxSize(100, 22));
1099+ choice_14->SetMinSize(wxSize(100, 22));
1100+ text_ctrl_33->SetMinSize(wxSize(30, 20));
1101+ text_ctrl_35->SetMinSize(wxSize(30, 20));
1102+ text_ctrl_34->SetMinSize(wxSize(30, 20));
1103+ text_ctrl_36->SetMinSize(wxSize(30, 20));
1104+ choice_19->SetMinSize(wxSize(100, 22));
1105+ choice_15->SetMinSize(wxSize(100, 22));
1106+ choice_16->SetMinSize(wxSize(100, 22));
1107+ choice_20->SetMinSize(wxSize(100, 22));
1108+ choice_17->SetMinSize(wxSize(100, 22));
1109+ choice_18->SetMinSize(wxSize(100, 22));
10401110 // end wxGlade
10411111 }
10421112
@@ -1045,28 +1115,62 @@
10451115 {
10461116 // begin wxGlade: PolygonPropDialog::do_layout
10471117 wxFlexGridSizer* grid_sizer_13 = new wxFlexGridSizer(12, 4, 0, 0);
1118+ wxGridSizer* grid_sizer_9 = new wxGridSizer(1, 3, 0, 0);
1119+ wxGridSizer* grid_sizer_8 = new wxGridSizer(1, 3, 0, 0);
10481120 grid_sizer_13->Add(label_34, 0, 0, 0);
1121+ grid_sizer_13->Add(text_ctrl_20, 0, 0, 0);
10491122 grid_sizer_13->Add(label_46, 0, 0, 0);
1123+ grid_sizer_13->Add(text_ctrl_21, 0, 0, 0);
10501124 grid_sizer_13->Add(label_35, 0, 0, 0);
1125+ grid_sizer_13->Add(choice_12, 0, 0, 0);
10511126 grid_sizer_13->Add(label_47, 0, 0, 0);
1127+ grid_sizer_13->Add(text_ctrl_22, 0, 0, 0);
10521128 grid_sizer_13->Add(label_36, 0, 0, 0);
1129+ grid_sizer_13->Add(text_ctrl_25, 0, 0, 0);
10531130 grid_sizer_13->Add(label_48, 0, 0, 0);
1131+ grid_sizer_13->Add(text_ctrl_23, 0, 0, 0);
10541132 grid_sizer_13->Add(label_37, 0, 0, 0);
1133+ grid_sizer_13->Add(choice_13, 0, 0, 0);
10551134 grid_sizer_13->Add(label_49, 0, 0, 0);
1135+ grid_sizer_13->Add(text_ctrl_24, 0, 0, 0);
10561136 grid_sizer_13->Add(label_38, 0, 0, 0);
1137+ grid_sizer_13->Add(choice_14, 0, 0, 0);
1138+ grid_sizer_13->Add(label_26, 0, 0, 0);
1139+ grid_sizer_8->Add(text_ctrl_33, 0, 0, 0);
1140+ grid_sizer_8->Add(label_27, 0, 0, 0);
1141+ grid_sizer_8->Add(text_ctrl_35, 0, 0, 0);
1142+ grid_sizer_13->Add(grid_sizer_8, 1, wxEXPAND, 0);
10571143 grid_sizer_13->Add(label_39, 0, 0, 0);
1144+ grid_sizer_13->Add(text_ctrl_26, 0, 0, 0);
10581145 grid_sizer_13->Add(label_55, 0, 0, 0);
1146+ grid_sizer_9->Add(text_ctrl_34, 0, 0, 0);
1147+ grid_sizer_9->Add(label_28, 0, 0, 0);
1148+ grid_sizer_9->Add(text_ctrl_36, 0, 0, 0);
1149+ grid_sizer_13->Add(grid_sizer_9, 1, wxEXPAND, 0);
10591150 grid_sizer_13->Add(label_40, 0, 0, 0);
1151+ grid_sizer_13->Add(choice_19, 0, 0, 0);
10601152 grid_sizer_13->Add(label_54, 0, 0, 0);
1153+ grid_sizer_13->Add(choice_15, 0, 0, 0);
10611154 grid_sizer_13->Add(label_41, 0, 0, 0);
1155+ grid_sizer_13->Add(text_ctrl_28, 0, 0, 0);
10621156 grid_sizer_13->Add(label_53, 0, 0, 0);
1157+ grid_sizer_13->Add(choice_16, 0, 0, 0);
10631158 grid_sizer_13->Add(label_42, 0, 0, 0);
1159+ grid_sizer_13->Add(text_ctrl_29, 0, 0, 0);
10641160 grid_sizer_13->Add(label_52, 0, 0, 0);
1161+ grid_sizer_13->Add(choice_20, 0, 0, 0);
10651162 grid_sizer_13->Add(label_43, 0, 0, 0);
1163+ grid_sizer_13->Add(text_ctrl_30, 0, 0, 0);
10661164 grid_sizer_13->Add(label_51, 0, 0, 0);
1165+ grid_sizer_13->Add(choice_17, 0, 0, 0);
10671166 grid_sizer_13->Add(label_44, 0, 0, 0);
1167+ grid_sizer_13->Add(text_ctrl_31, 0, 0, 0);
10681168 grid_sizer_13->Add(label_50, 0, 0, 0);
1069- grid_sizer_13->Add(label_45, 0, 0, 0);
1169+ grid_sizer_13->Add(choice_18, 0, 0, 0);
1170+ grid_sizer_13->Add(button_21, 0, 0, 0);
1171+ grid_sizer_13->Add(panel_10, 1, wxEXPAND, 0);
1172+ grid_sizer_13->Add(panel_11, 1, wxEXPAND, 0);
1173+ grid_sizer_13->Add(panel_12, 1, wxEXPAND, 0);
10701174 SetSizer(grid_sizer_13);
10711175 grid_sizer_13->Fit(this);
10721176 Layout();
@@ -1073,3 +1177,329 @@
10731177 // end wxGlade
10741178 }
10751179
1180+
1181+PolygonNum::PolygonNum(wxWindow* parent, int id, const wxString& title, const wxPoint& pos, const wxSize& size, long style):
1182+ wxDialog(parent, id, title, pos, size, wxDEFAULT_DIALOG_STYLE)
1183+{
1184+ // begin wxGlade: PolygonNum::PolygonNum
1185+ bitmap_button_1 = new wxBitmapButton(this, wxID_ANY, wxNullBitmap);
1186+ bitmap_button_2 = new wxBitmapButton(this, wxID_ANY, wxNullBitmap);
1187+ bitmap_button_3 = new wxBitmapButton(this, wxID_ANY, wxNullBitmap);
1188+ bitmap_button_4 = new wxBitmapButton(this, wxID_ANY, wxNullBitmap);
1189+ bitmap_button_5 = new wxBitmapButton(this, wxID_ANY, wxNullBitmap);
1190+ bitmap_button_6 = new wxBitmapButton(this, wxID_ANY, wxNullBitmap);
1191+
1192+ set_properties();
1193+ do_layout();
1194+ // end wxGlade
1195+}
1196+
1197+
1198+BEGIN_EVENT_TABLE(PolygonNum, wxDialog)
1199+ // begin wxGlade: PolygonNum::event_table
1200+ EVT_BUTTON(wxID_ANY, PolygonNum::OnPoly3)
1201+ EVT_BUTTON(wxID_ANY, PolygonNum::OnPoly4)
1202+ EVT_BUTTON(wxID_ANY, PolygonNum::OnPoly5)
1203+ EVT_BUTTON(wxID_ANY, PolygonNum::OnPoly6)
1204+ EVT_BUTTON(wxID_ANY, PolygonNum::OnPoly7)
1205+ EVT_BUTTON(wxID_ANY, PolygonNum::OnPoly8)
1206+ // end wxGlade
1207+END_EVENT_TABLE();
1208+
1209+
1210+void PolygonNum::OnPoly3(wxCommandEvent &event)
1211+{
1212+ event.Skip();
1213+ std::cout<<"Event handler (PolygonNum::OnPoly3) not implemented yet"<<std::endl; //notify the user that he hasn't implemented the event handler yet
1214+}
1215+
1216+
1217+void PolygonNum::OnPoly4(wxCommandEvent &event)
1218+{
1219+ event.Skip();
1220+ std::cout<<"Event handler (PolygonNum::OnPoly4) not implemented yet"<<std::endl; //notify the user that he hasn't implemented the event handler yet
1221+}
1222+
1223+
1224+void PolygonNum::OnPoly5(wxCommandEvent &event)
1225+{
1226+ event.Skip();
1227+ std::cout<<"Event handler (PolygonNum::OnPoly5) not implemented yet"<<std::endl; //notify the user that he hasn't implemented the event handler yet
1228+}
1229+
1230+
1231+void PolygonNum::OnPoly6(wxCommandEvent &event)
1232+{
1233+ event.Skip();
1234+ std::cout<<"Event handler (PolygonNum::OnPoly6) not implemented yet"<<std::endl; //notify the user that he hasn't implemented the event handler yet
1235+}
1236+
1237+
1238+void PolygonNum::OnPoly7(wxCommandEvent &event)
1239+{
1240+ event.Skip();
1241+ std::cout<<"Event handler (PolygonNum::OnPoly7) not implemented yet"<<std::endl; //notify the user that he hasn't implemented the event handler yet
1242+}
1243+
1244+
1245+void PolygonNum::OnPoly8(wxCommandEvent &event)
1246+{
1247+ event.Skip();
1248+ std::cout<<"Event handler (PolygonNum::OnPoly8) not implemented yet"<<std::endl; //notify the user that he hasn't implemented the event handler yet
1249+}
1250+
1251+
1252+// wxGlade: add PolygonNum event handlers
1253+
1254+
1255+void PolygonNum::set_properties()
1256+{
1257+ // begin wxGlade: PolygonNum::set_properties
1258+ SetTitle(wxT("dialog_10"));
1259+ bitmap_button_1->SetSize(bitmap_button_1->GetBestSize());
1260+ bitmap_button_2->SetSize(bitmap_button_2->GetBestSize());
1261+ bitmap_button_3->SetSize(bitmap_button_3->GetBestSize());
1262+ bitmap_button_4->SetSize(bitmap_button_4->GetBestSize());
1263+ bitmap_button_5->SetSize(bitmap_button_5->GetBestSize());
1264+ bitmap_button_6->SetSize(bitmap_button_6->GetBestSize());
1265+ // end wxGlade
1266+}
1267+
1268+
1269+void PolygonNum::do_layout()
1270+{
1271+ // begin wxGlade: PolygonNum::do_layout
1272+ wxFlexGridSizer* grid_sizer_14 = new wxFlexGridSizer(1, 6, 0, 0);
1273+ grid_sizer_14->Add(bitmap_button_1, 0, 0, 0);
1274+ grid_sizer_14->Add(bitmap_button_2, 0, 0, 0);
1275+ grid_sizer_14->Add(bitmap_button_3, 0, 0, 0);
1276+ grid_sizer_14->Add(bitmap_button_4, 0, 0, 0);
1277+ grid_sizer_14->Add(bitmap_button_5, 0, 0, 0);
1278+ grid_sizer_14->Add(bitmap_button_6, 0, 0, 0);
1279+ SetSizer(grid_sizer_14);
1280+ grid_sizer_14->Fit(this);
1281+ Layout();
1282+ // end wxGlade
1283+}
1284+
1285+
1286+ObjectPropDialog::ObjectPropDialog(wxWindow* parent, int id, const wxString& title, const wxPoint& pos, const wxSize& size, long style):
1287+ wxDialog(parent, id, title, pos, size, wxDEFAULT_DIALOG_STYLE)
1288+{
1289+ // begin wxGlade: ObjectPropDialog::ObjectPropDialog
1290+ label_45 = new wxStaticText(this, wxID_ANY, wxT("Object type"));
1291+ text_ctrl_27 = new wxTextCtrl(this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_READONLY);
1292+ const wxString choice_21_choices[] = {
1293+
1294+ };
1295+ choice_21 = new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, choice_21_choices, 0);
1296+ label_56 = new wxStaticText(this, wxID_ANY, wxT("Object index"));
1297+ text_ctrl_32 = new wxTextCtrl(this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_READONLY);
1298+ const wxString choice_22_choices[] = {
1299+
1300+ };
1301+ choice_22 = new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, choice_22_choices, 0);
1302+ checkbox_46 = new wxCheckBox(this, wxID_ANY, wxT("Hidden"));
1303+ checkbox_47 = new wxCheckBox(this, wxID_ANY, wxT("Hung on ceiling"));
1304+ checkbox_48 = new wxCheckBox(this, wxID_ANY, wxT("Can't seeing"));
1305+ checkbox_49 = new wxCheckBox(this, wxID_ANY, wxT("Can't hearing"));
1306+ checkbox_50 = new wxCheckBox(this, wxID_ANY, wxT("From aerial"));
1307+ checkbox_51 = new wxCheckBox(this, wxID_ANY, wxT("Only network game"));
1308+ label_59 = new wxStaticText(this, wxID_ANY, wxT("Polygon ID"));
1309+ text_ctrl_37 = new wxTextCtrl(this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_READONLY);
1310+ label_58 = new wxStaticText(this, wxID_ANY, wxT("Facing/Direction"));
1311+ text_ctrl_38 = new wxTextCtrl(this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_READONLY);
1312+ panel_16 = new wxPanel(this, wxID_ANY);
1313+ label_60 = new wxStaticText(this, wxID_ANY, wxT("Launch by"));
1314+ const wxString choice_23_choices[] = {
1315+
1316+ };
1317+ choice_23 = new wxChoice(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, choice_23_choices, 0);
1318+ panel_17 = new wxPanel(this, wxID_ANY);
1319+ label_61 = new wxStaticText(this, wxID_ANY, wxT("Location x"));
1320+ text_ctrl_39 = new wxTextCtrl(this, wxID_ANY, wxEmptyString);
1321+ label_63 = new wxStaticText(this, wxID_ANY, wxT("y"));
1322+ text_ctrl_41 = new wxTextCtrl(this, wxID_ANY, wxEmptyString);
1323+ label_62 = new wxStaticText(this, wxID_ANY, wxT(" z"));
1324+ text_ctrl_40 = new wxTextCtrl(this, wxID_ANY, wxEmptyString);
1325+ panel_18 = new wxPanel(this, wxID_ANY);
1326+
1327+ set_properties();
1328+ do_layout();
1329+ // end wxGlade
1330+}
1331+
1332+
1333+BEGIN_EVENT_TABLE(ObjectPropDialog, wxDialog)
1334+ // begin wxGlade: ObjectPropDialog::event_table
1335+ EVT_CHOICE(wxID_ANY, ObjectPropDialog::OnTypeChoice)
1336+ EVT_CHOICE(wxID_ANY, ObjectPropDialog::OnIndexChoice)
1337+ EVT_CHECKBOX(wxID_ANY, ObjectPropDialog::OnHiddenCheck)
1338+ EVT_CHECKBOX(wxID_ANY, ObjectPropDialog::OnCeilingCheck)
1339+ EVT_CHECKBOX(wxID_ANY, ObjectPropDialog::OnSeeCheck)
1340+ EVT_CHECKBOX(wxID_ANY, ObjectPropDialog::OnHearCheck)
1341+ EVT_CHECKBOX(wxID_ANY, ObjectPropDialog::OnAerialCheck)
1342+ EVT_CHECKBOX(wxID_ANY, ObjectPropDialog::OnNetCheck)
1343+ EVT_CHOICE(wxID_ANY, ObjectPropDialog::OnLaunchChoice)
1344+ EVT_TEXT(wxID_ANY, ObjectPropDialog::OnXEdit)
1345+ EVT_TEXT(wxID_ANY, ObjectPropDialog::OnYEdit)
1346+ EVT_TEXT(wxID_ANY, ObjectPropDialog::OnZEdit)
1347+ // end wxGlade
1348+END_EVENT_TABLE();
1349+
1350+
1351+void ObjectPropDialog::OnTypeChoice(wxCommandEvent &event)
1352+{
1353+ event.Skip();
1354+ std::cout<<"Event handler (ObjectPropDialog::OnTypeChoice) not implemented yet"<<std::endl; //notify the user that he hasn't implemented the event handler yet
1355+}
1356+
1357+
1358+void ObjectPropDialog::OnIndexChoice(wxCommandEvent &event)
1359+{
1360+ event.Skip();
1361+ std::cout<<"Event handler (ObjectPropDialog::OnIndexChoice) not implemented yet"<<std::endl; //notify the user that he hasn't implemented the event handler yet
1362+}
1363+
1364+
1365+void ObjectPropDialog::OnHiddenCheck(wxCommandEvent &event)
1366+{
1367+ event.Skip();
1368+ std::cout<<"Event handler (ObjectPropDialog::OnHiddenCheck) not implemented yet"<<std::endl; //notify the user that he hasn't implemented the event handler yet
1369+}
1370+
1371+
1372+void ObjectPropDialog::OnCeilingCheck(wxCommandEvent &event)
1373+{
1374+ event.Skip();
1375+ std::cout<<"Event handler (ObjectPropDialog::OnCeilingCheck) not implemented yet"<<std::endl; //notify the user that he hasn't implemented the event handler yet
1376+}
1377+
1378+
1379+void ObjectPropDialog::OnSeeCheck(wxCommandEvent &event)
1380+{
1381+ event.Skip();
1382+ std::cout<<"Event handler (ObjectPropDialog::OnSeeCheck) not implemented yet"<<std::endl; //notify the user that he hasn't implemented the event handler yet
1383+}
1384+
1385+
1386+void ObjectPropDialog::OnHearCheck(wxCommandEvent &event)
1387+{
1388+ event.Skip();
1389+ std::cout<<"Event handler (ObjectPropDialog::OnHearCheck) not implemented yet"<<std::endl; //notify the user that he hasn't implemented the event handler yet
1390+}
1391+
1392+
1393+void ObjectPropDialog::OnAerialCheck(wxCommandEvent &event)
1394+{
1395+ event.Skip();
1396+ std::cout<<"Event handler (ObjectPropDialog::OnAerialCheck) not implemented yet"<<std::endl; //notify the user that he hasn't implemented the event handler yet
1397+}
1398+
1399+
1400+void ObjectPropDialog::OnNetCheck(wxCommandEvent &event)
1401+{
1402+ event.Skip();
1403+ std::cout<<"Event handler (ObjectPropDialog::OnNetCheck) not implemented yet"<<std::endl; //notify the user that he hasn't implemented the event handler yet
1404+}
1405+
1406+
1407+void ObjectPropDialog::OnLaunchChoice(wxCommandEvent &event)
1408+{
1409+ event.Skip();
1410+ std::cout<<"Event handler (ObjectPropDialog::OnLaunchChoice) not implemented yet"<<std::endl; //notify the user that he hasn't implemented the event handler yet
1411+}
1412+
1413+
1414+void ObjectPropDialog::OnXEdit(wxCommandEvent &event)
1415+{
1416+ event.Skip();
1417+ std::cout<<"Event handler (ObjectPropDialog::OnXEdit) not implemented yet"<<std::endl; //notify the user that he hasn't implemented the event handler yet
1418+}
1419+
1420+
1421+void ObjectPropDialog::OnYEdit(wxCommandEvent &event)
1422+{
1423+ event.Skip();
1424+ std::cout<<"Event handler (ObjectPropDialog::OnYEdit) not implemented yet"<<std::endl; //notify the user that he hasn't implemented the event handler yet
1425+}
1426+
1427+
1428+void ObjectPropDialog::OnZEdit(wxCommandEvent &event)
1429+{
1430+ event.Skip();
1431+ std::cout<<"Event handler (ObjectPropDialog::OnZEdit) not implemented yet"<<std::endl; //notify the user that he hasn't implemented the event handler yet
1432+}
1433+
1434+
1435+// wxGlade: add ObjectPropDialog event handlers
1436+
1437+
1438+void ObjectPropDialog::set_properties()
1439+{
1440+ // begin wxGlade: ObjectPropDialog::set_properties
1441+ SetTitle(wxT("dialog_11"));
1442+ text_ctrl_27->SetMinSize(wxSize(20, -1));
1443+ text_ctrl_32->SetMinSize(wxSize(20, -1));
1444+ panel_16->SetMinSize(wxSize(120, 120));
1445+ choice_23->SetMinSize(wxSize(90, 22));
1446+ text_ctrl_39->SetMinSize(wxSize(50, -1));
1447+ text_ctrl_41->SetMinSize(wxSize(50, -1));
1448+ text_ctrl_40->SetMinSize(wxSize(50, -1));
1449+ // end wxGlade
1450+}
1451+
1452+
1453+void ObjectPropDialog::do_layout()
1454+{
1455+ // begin wxGlade: ObjectPropDialog::do_layout
1456+ wxFlexGridSizer* grid_sizer_15 = new wxFlexGridSizer(4, 1, 0, 0);
1457+ wxFlexGridSizer* grid_sizer_20 = new wxFlexGridSizer(3, 3, 0, 0);
1458+ wxFlexGridSizer* grid_sizer_24 = new wxFlexGridSizer(1, 2, 0, 0);
1459+ wxFlexGridSizer* grid_sizer_18 = new wxFlexGridSizer(1, 2, 0, 0);
1460+ wxFlexGridSizer* grid_sizer_19 = new wxFlexGridSizer(2, 1, 0, 0);
1461+ wxFlexGridSizer* grid_sizer_21 = new wxFlexGridSizer(1, 2, 0, 0);
1462+ wxFlexGridSizer* grid_sizer_23 = new wxFlexGridSizer(2, 1, 0, 0);
1463+ wxFlexGridSizer* grid_sizer_22 = new wxFlexGridSizer(6, 1, 0, 0);
1464+ wxFlexGridSizer* grid_sizer_16 = new wxFlexGridSizer(2, 3, 0, 0);
1465+ grid_sizer_16->Add(label_45, 0, 0, 0);
1466+ grid_sizer_16->Add(text_ctrl_27, 0, 0, 0);
1467+ grid_sizer_16->Add(choice_21, 0, 0, 0);
1468+ grid_sizer_16->Add(label_56, 0, 0, 0);
1469+ grid_sizer_16->Add(text_ctrl_32, 0, 0, 0);
1470+ grid_sizer_16->Add(choice_22, 0, 0, 0);
1471+ grid_sizer_15->Add(grid_sizer_16, 1, wxEXPAND, 0);
1472+ grid_sizer_22->Add(checkbox_46, 0, 0, 0);
1473+ grid_sizer_22->Add(checkbox_47, 0, 0, 0);
1474+ grid_sizer_22->Add(checkbox_48, 0, 0, 0);
1475+ grid_sizer_22->Add(checkbox_49, 0, 0, 0);
1476+ grid_sizer_22->Add(checkbox_50, 0, 0, 0);
1477+ grid_sizer_22->Add(checkbox_51, 0, 0, 0);
1478+ grid_sizer_21->Add(grid_sizer_22, 1, wxEXPAND, 0);
1479+ grid_sizer_23->Add(label_59, 0, 0, 0);
1480+ grid_sizer_23->Add(text_ctrl_37, 0, 0, 0);
1481+ grid_sizer_21->Add(grid_sizer_23, 1, wxEXPAND, 0);
1482+ grid_sizer_15->Add(grid_sizer_21, 1, wxEXPAND, 0);
1483+ grid_sizer_19->Add(label_58, 0, 0, 0);
1484+ grid_sizer_19->Add(text_ctrl_38, 0, 0, 0);
1485+ grid_sizer_18->Add(grid_sizer_19, 1, wxEXPAND, 0);
1486+ grid_sizer_18->Add(panel_16, 1, wxEXPAND, 0);
1487+ grid_sizer_15->Add(grid_sizer_18, 1, wxEXPAND, 0);
1488+ grid_sizer_20->Add(label_60, 0, 0, 0);
1489+ grid_sizer_20->Add(choice_23, 0, 0, 0);
1490+ grid_sizer_20->Add(panel_17, 1, wxEXPAND, 0);
1491+ grid_sizer_20->Add(label_61, 0, 0, 0);
1492+ grid_sizer_20->Add(text_ctrl_39, 0, 0, 0);
1493+ grid_sizer_24->Add(label_63, 0, 0, 0);
1494+ grid_sizer_24->Add(text_ctrl_41, 0, 0, 0);
1495+ grid_sizer_20->Add(grid_sizer_24, 1, wxEXPAND, 0);
1496+ grid_sizer_20->Add(label_62, 0, 0, 0);
1497+ grid_sizer_20->Add(text_ctrl_40, 0, 0, 0);
1498+ grid_sizer_20->Add(panel_18, 1, wxEXPAND, 0);
1499+ grid_sizer_15->Add(grid_sizer_20, 1, wxEXPAND, 0);
1500+ SetSizer(grid_sizer_15);
1501+ grid_sizer_15->Fit(this);
1502+ Layout();
1503+ // end wxGlade
1504+}
1505+
--- marathon/trunk/MapEditorWX/src/MapEditorMainFrame.h (revision 334)
+++ marathon/trunk/MapEditorWX/src/MapEditorMainFrame.h (revision 335)
@@ -1,7 +1,6 @@
11 #pragma once
22
33 //dialogues
4-#include "ToolDialog.h"
54 #include "AnnotationDialog.h"
65 #include "ColorCustomizeDialog.h"
76 #include "EditorPreferencesDialog.h"
@@ -10,6 +9,7 @@
109 #include "LevelInfoDialog.h"
1110 #include "LinePropDialog.h"
1211 #include "ObjectPropDialog.h"
12+#include "PlacementDialog.h"
1313 #include "PlatformDialog.h"
1414 #include "PointPropDialog.h"
1515 #include "PolygonNumDialog.h"
@@ -17,9 +17,15 @@
1717 #include "PolygonTypeDialog.h"
1818 #include "SelectLevelDialog.h"
1919 #include "SidePropDialog.h"
20+#include "TerminalDialog.h"
2021 #include "TextureDialog.h"
22+#include "ToolDialog.h"
2123 #include "VisualDialog.h"
2224
25+#include "LightPalletDialog.h"
26+#include "MediaPalletDialog.h"
27+#include "SoundPalletDialog.h"
28+
2329 #include "MapEditorWX.h"
2430 #include "HPLLib/HPLAlephLib.h"
2531
@@ -84,10 +90,6 @@
8490 */
8591 class MapEditorMainFrame: public wxFrame
8692 {
87-public:
88- //ToolDialog・this(オブジェクト選択)が呼び出す
89- ObjectPropDialog objectPropDialog;
90-
9193 private:
9294 //ダブルバッファリング用Bitmap
9395 wxBitmap doubleBufferingBitmap;
@@ -96,13 +98,19 @@
9698
9799 /////////////////////
98100 //ダイアログ(モードレス)
99- ToolDialog toolDialog;
101+ //高さ
102+ HeightDialog heightDialog;
103+ //高さパレット
104+ HeightPaletteDialog heightPaletteDialog;
105+ LinePropDialog linePropDialog;
106+ ObjectPropDialog objPropDialog;
107+ PointPropDialog pointPropDialog;
100108 PolygonTypeDialog polyTypeDialog;
101- HeightDialog heightDialog;
102109 PolygonPropDialog polyPropDialog;
103- PointPropDialog pointPropDialog;
104- LinePropDialog linePropDialog;
105110 TextureDialog textureDialog;
111+ ToolDialog toolDialog;
112+ //TODO サウンド・メディア・ライト
113+ //TODO 以上のパレットダイアログをさくせいすること
106114
107115 //TODO モーダルだが、Side選択ダイアログも作ろう
108116 //TODO JumpLevel, LevelInfo, Placements, TerminalViewer
@@ -342,4 +350,9 @@
342350 @return 選択に成功した場合真
343351 */
344352 bool tryToSelectOneItem(wxMouseEvent& ev);
353+
354+ /**
355+ 新しいモードに切り替えます
356+ */
357+ void changeEditMode(int mode);
345358 };
--- marathon/trunk/MapEditorWX/src/JumpLevelDialog.cpp (nonexistent)
+++ marathon/trunk/MapEditorWX/src/JumpLevelDialog.cpp (revision 335)
@@ -0,0 +1 @@
1+#include "JumpLevelDialog.h"
--- marathon/trunk/MapEditorWX/src/MainFrameMenuEvent.cpp (revision 334)
+++ marathon/trunk/MapEditorWX/src/MainFrameMenuEvent.cpp (revision 335)
@@ -6,6 +6,7 @@
66
77 void MapEditorMainFrame::OnPrint(wxCommandEvent& ev)
88 {
9+ //マップの全体像を紙サイズに合わせて印刷
910 }
1011 void MapEditorMainFrame::OnPrintPreview(wxCommandEvent& ev)
1112 {
@@ -15,12 +16,34 @@
1516 }
1617 void MapEditorMainFrame::OnNew(wxCommandEvent& ev)
1718 {
19+ if(wxGetApp().isChanged){
20+ wxMessageDialog dlg(this, _T("Map has been modified. Are you sure that delete this and create new one?"));
21+ if(dlg.ShowModal() == wxID_CANCEL){
22+ //拒否
23+ return;
24+ }
25+ }
26+ initialize_map_for_new_game();
27+ //レベル一覧削除
28+ wxGetApp().levelNameList.clear();
29+
30+ wxGetApp().isChanged = false;
31+
1832 //ついでにレベル設定
1933 this->OnNewLevel(ev);
34+
35+ Refresh();
2036 }
2137 void MapEditorMainFrame::OnNewLevel(wxCommandEvent& ev)
2238 {
23- //レベル設定
39+ //新規レベルの追加
40+ //TODO
41+ //レベル設定ダイアログ表示
42+ LevelInfoDialog dlg;
43+ dlg.Create(this, wxID_ANY);
44+ dlg.ShowModal();
45+ //内容をマップデータに反映
46+ //TODO
2447 }
2548
2649 void MapEditorMainFrame::OnOpen(wxCommandEvent& WXUNUSED(ev))
@@ -73,6 +96,9 @@
7396 wxCommandEvent dummy;
7497 this->OnZoomDefault(dummy);
7598 this->OnMoveToCenter(dummy);
99+
100+ wxGetApp().filePath = path;
101+ wxGetApp().isChanged = false;
76102 //再描画
77103 Refresh();
78104 }
@@ -79,10 +105,37 @@
79105 }void MapEditorMainFrame::OnSave(wxCommandEvent& ev)
80106 {
81107 //TODO save correctly
82-
108+ if(wxGetApp().isChanged){
109+ OnSaveAs(ev);
110+ }else{
111+ //現在のファイル名で保存
112+ if(save_level(wxGetApp().filePath.mb_str())){
113+ wxGetApp().isChanged = false;
114+ wxGetApp().filePath = fname;
115+ }else{
116+ hpl::error::caution("save failure");
117+ }
118+ }
83119 }
84120 void MapEditorMainFrame::OnSaveAs(wxCommandEvent& ev)
85121 {
122+ int style = wxFD_SAVE | wxFD_OVERWRITE_PROMPT;
123+ wxString wildcard(_T("AlephOne map (*.sceA)|*.sceA|Any file|*.*"));
124+ wxFileDialog dlg(this, wxString(_T("Save at...")),
125+ wxString(_T("")), wxString(_T("")), wildcard,
126+ style);
127+ if(dlg.ShowModal() == wxID_OK){
128+ //
129+ wxString fname = dlg.GetPath();
130+ SetTitle(fname);
131+
132+ if(save_level(fname.mb_str())){
133+ wxGetApp().isChanged = false;
134+ filePath = fname;
135+ }else{
136+ hpl::error::caution("save failure");
137+ }
138+ }
86139 }
87140
88141 /////////////////////////////////////////////////////////////////////
@@ -132,6 +185,14 @@
132185 }
133186 void MapEditorMainFrame::OnHeightDialog(wxCommandEvent& ev)
134187 {
188+ //TODO height dialog
189+ bool shown = this->heightDialog.IsShown();
190+ this->heightDialog.Show(!shown);
191+ if(shown){
192+ //TODO メニューにチェックを入れる
193+ //this->GetMenuBar()->GetMenu(0)->Get
194+ }else{
195+ }
135196 }
136197
137198 /////////////////////////////////////////////////////////////////////
@@ -156,30 +217,68 @@
156217 }
157218 void MapEditorMainFrame::OnVisualMode(wxCommandEvent& ev)
158219 {
220+ //モーダル表示
221+ VisualDialog dlg;
222+ dlg.Create(this, wxID_ANY);
223+ if(dlg.ShowModal() == wxID_OK){
224+ }
225+
159226 }
160227 void MapEditorMainFrame::OnPolygonTypeMode(wxCommandEvent& ev)
161228 {
229+ //モード変更
230+ this->changeEditMode(EditModeType::EM_POLYGON_TYPE);
231+ //ポリゴンタイプダイアログ表示
232+ this->polyTypeDialog.Show(true);
162233 }
163234 void MapEditorMainFrame::OnFloorHeightMode(wxCommandEvent& ev)
164235 {
236+ //モード変更
237+ this->changeEditMode(EditModeType::EM_FLOOR_HEIGHT);
238+ //高さパレットダイアログ表示
239+ this->heightPaletteDialog.Show(true);
165240 }
166241 void MapEditorMainFrame::OnCeilingHeightMode(wxCommandEvent& ev)
167242 {
243+ //モード変更
244+ this->changeEditMode(EditModeType::EM_CEILING_HEIGHT);
245+ //高さパレットダイアログ表示
246+ this->heightPaletteDialog.Show(true);
168247 }
169248 void MapEditorMainFrame::OnFloorLightMode(wxCommandEvent& ev)
170249 {
250+ //モード変更
251+ this->changeEditMode(EditModeType::EM_FLOOR_LIGHT);
252+ //ライトパレットダイアログ表示
253+ //TODO this->lightPaletteDialog.Show(true);
171254 }
172255 void MapEditorMainFrame::OnCeilingLightMode(wxCommandEvent& ev)
173256 {
257+ //モード変更
258+ this->changeEditMode(EditModeType::EM_CEILING_LIGHT);
259+ //ライトパレットダイアログ表示
260+ //TODO this->lightPaletteDialog.Show(true);
174261 }
175262 void MapEditorMainFrame::OnMediaMode(wxCommandEvent& ev)
176263 {
264+ //モード変更
265+ this->changeEditMode(EditModeType::EM_MEDIA);
266+ //メディアパレットダイアログ表示
267+ //TODO this->mediaPaletteDialog.Show(true);
177268 }
178269 void MapEditorMainFrame::OnFloorTextureMode(wxCommandEvent& ev)
179270 {
271+ //モード変更
272+ this->changeEditMode(EditModeType::EM_FLOOR_TEXTURE);
273+ //テクスチャダイアログ表示
274+ this->textureDialog.Show(true);
180275 }
181276 void MapEditorMainFrame::OnCeilingTextureMode(wxCommandEvent& ev)
182277 {
278+ //モード変更
279+ this->changeEditMode(EditModeType::EM_CEILING_TEXTURE);
280+ //テクスチャダイアログ表示
281+ this->textureDialog.Show(true);
183282 }
184283
185284 /////////////////////////////////////////////////////////////////////
@@ -187,14 +286,31 @@
187286 // special menus
188287 void MapEditorMainFrame::OnJumpLevel(wxCommandEvent& ev)
189288 {
289+ //TODO
290+ //JumpLevelDialog dlg;
291+ //dlg.Create(this, wxID_ANY);
190292 }
191293 void MapEditorMainFrame::OnLevelInfo(wxCommandEvent& ev)
192294 {
295+ LevelInfoDialog dlg;
296+ dlg.Create(this, wxID_ANY);
297+ if(dlg.ShowModal() == wxID_OK){
298+ //内容変更
299+ //TODO
300+ }
193301 }
194302 void MapEditorMainFrame::OnObjectPlacement(wxCommandEvent& ev)
195303 {
304+ //オブジェクト配置ダイアログ
305+ PlacementDialog dlg;
306+ dlg.Create(this, wxID_ANY);
307+ dlg.ShowModal();
196308 }
197309 void MapEditorMainFrame::OnTerminalViewer(wxCommandEvent& ev)
198310 {
311+ //
312+ TerminalDialog dlg;
313+ dlg.Create(this, wxID_ANY);
314+ dlg.ShowModal();
199315 }
200316
--- marathon/trunk/MapEditorWX/WXTODOリスト.txt (revision 334)
+++ marathon/trunk/MapEditorWX/WXTODOリスト.txt (revision 335)
@@ -26,9 +26,11 @@
2626
2727 ///MAXIMUM_VERTICES_PER_POLYGON=8
2828
29+?EwxGlade??
2930 ?E?z?u
3031 ?E?f?[?^?ǂݍ??ݕ????쐬
3132 ?E?f?[?^?????o???????쐬
33+
3234 Annotation :?z?u?ς?
3335 ColorCustomize :?z?u?ς?
3436 EditPreferences :?z?u?ς?
@@ -36,12 +38,12 @@
3638 HeightPallet :
3739 LevelInfo
3840 LineProp
39-ObjectProp
41+ObjectProp :wx
4042 Placement :?z?u?ς?
4143 Platform :?z?u?ς݁B
42-PointProp
43-PolygonNum
44-PolygonProp
44+PointProp :wx
45+PolygonNum :wx
46+PolygonProp :wx
4547 PolygonType
4648 SelectLevel
4749 SideProp
@@ -48,4 +50,39 @@
4850 Terminal :?z?u?ς?
4951 Texture
5052 Tool :?z?u?ς?
51-Visual
\ No newline at end of file
53+Visual
54+
55+JumpLevel
56+MediaPalette
57+LightPalette
58+SoundPalette
59+
60+???C?x???g?????̋L?q?͏I????Ă??邩?H?̃??X?g
61+?ETODO????Ȃ炻?̓??e??????
62+?E?????Ȃ犮???Ə???
63+Draw
64+ Arrow
65+ ?E?P??I???͉”\
66+ ?E?e?L?X?g?I?????A?m?e?[?V?????_?C?A???O???o??
67+ Fill
68+ ?E?h???|???S???T????????
69+ Hand
70+ Line
71+ ?E?_?̓Ɨ??lj?
72+ ?E???͂??łɂ???_???w?肵?Ă̒lj??ɂ???
73+ ?E???𕪒f????ۂ͒??????ׂ?
74+ Magnify
75+ ?EShift???????Ă???Ԃ̓A?C?R?????}?C?i?X?ɂ???
76+ Skull
77+ Text
78+ ?E?܂??e?L?X?g??lj??ł??Ă??Ȃ?
79+ Polygon
80+ ?E?v???Z?b?g?I???_?C?A???O???o??
81+Poly
82+FloorHeight
83+CeilingHeight
84+FloorLight
85+CeilingLight
86+Media
87+FloorTexture
88+CeilingTexture
旧リポジトリブラウザで表示