コード例 #1
0
void    wxSpeedButton::SetAllUp(wxSpeedButton *inButton) {
int             i,n;
wxSpeedButton   *b;

// no button?

    if (inButton == NULL) return;

// simple button

    if (inButton->mGroupIndex == 0) {
        inButton->mButtonDown = false;
        inButton->Refresh(false);
    }

// toggle button

    else if (inButton->mGroupIndex == -1) {
        inButton->mButtonDown = false;
        inButton->Refresh(false);
    }

// group button, grouped by immediate parent

    else if (inButton->mGroupIndex == -2) {
        n = sbgArray.GetCount();
        for(i=0; i<n; i++) {
            b = (wxSpeedButton *) sbgArray.Item(i);
            if (b->mParent == inButton->mParent) {
                b->mButtonDown = false;
                b->Refresh(false);
            };
        };
    }

// all else is a group toggle button, grouped by index and top-level parent

    else {
        n = sbgArray.GetCount();
        for(i=0; i<n; i++) {
            b = (wxSpeedButton *) sbgArray.Item(i);
            if ((b->mGroupIndex == inButton->mGroupIndex) && (b->mTopParent == inButton->mTopParent)) {
                b->mButtonDown = false;
                b->Refresh(false);
            };
        };
    };


}
コード例 #2
0
ファイル: tutorial5.cpp プロジェクト: maxmods/wx.mod
 // Colored table
 void FancyTable(wxArrayString& header, wxArrayPtrVoid& data)
 {
   // Colors, line width and bold font
   SetFillColour(wxColour(255,0,0));
   SetTextColour(255);
   SetDrawColour(wxColour(128,0,0));
   SetLineWidth(.3);
   SetFont(wxS(""),wxS("B"));
   //Header
   double w[4] = {40,35,40,45};
   size_t i;
   for (i = 0; i < header.GetCount(); i++)
   {
     Cell(w[i],7,header[i],wxPDF_BORDER_FRAME, 0, wxPDF_ALIGN_CENTER, 1);
   }
   Ln();
   // Color and font restoration
   SetFillColour(wxColour(224,235,255));
   SetTextColour(0);
   SetFont(wxS(""));
   // Data
   int fill = 0;
   size_t j;
   for (j = 0; j < data.GetCount(); j++)
   {
     wxArrayString* row = (wxArrayString*) data[j];
     Cell(w[0],6,(*row)[0],wxPDF_BORDER_LEFT | wxPDF_BORDER_RIGHT,0,wxPDF_ALIGN_LEFT,fill);
     Cell(w[1],6,(*row)[1],wxPDF_BORDER_LEFT | wxPDF_BORDER_RIGHT,0,wxPDF_ALIGN_LEFT,fill);
     Cell(w[2],6,(*row)[2],wxPDF_BORDER_LEFT | wxPDF_BORDER_RIGHT,0,wxPDF_ALIGN_RIGHT,fill);
     Cell(w[3],6,(*row)[3],wxPDF_BORDER_LEFT | wxPDF_BORDER_RIGHT,0,wxPDF_ALIGN_RIGHT,fill);
     Ln();
     fill = 1 - fill;
   }
   Cell((w[0]+w[1]+w[2]+w[3]),0,wxS(""),wxPDF_BORDER_TOP);
 }
コード例 #3
0
ファイル: tutorial5.cpp プロジェクト: maxmods/wx.mod
 // Better table
 void ImprovedTable(wxArrayString& header,wxArrayPtrVoid& data)
 {
   // Column widths
   double w[4] = {40,35,40,45};
   // Header
   size_t i;
   for (i = 0; i <header.GetCount(); i++)
   {
     Cell(w[i],7,header[i],wxPDF_BORDER_FRAME,0,wxPDF_ALIGN_CENTER);
   }
   Ln();
   // Data
   size_t j;
   for (j = 0; j < data.GetCount(); j++)
   {
     wxArrayString* row = (wxArrayString*) data[j];
     Cell(w[0],6,(*row)[0],wxPDF_BORDER_LEFT | wxPDF_BORDER_RIGHT);
     Cell(w[1],6,(*row)[1],wxPDF_BORDER_LEFT | wxPDF_BORDER_RIGHT);
     Cell(w[2],6,(*row)[2],wxPDF_BORDER_LEFT | wxPDF_BORDER_RIGHT,0,wxPDF_ALIGN_RIGHT);
     Cell(w[3],6,(*row)[3],wxPDF_BORDER_LEFT | wxPDF_BORDER_RIGHT,0,wxPDF_ALIGN_RIGHT);
     Ln();
   }
   // Closure line
   Cell((w[0]+w[1]+w[2]+w[3]),0,wxS(""),wxPDF_BORDER_TOP);
 }
コード例 #4
0
ファイル: tutorial5.cpp プロジェクト: maxmods/wx.mod
 // Simple table
 void BasicTable(wxArrayString& header,wxArrayPtrVoid& data)
 {
   size_t j;
   // Header
   for (j = 0; j < header.GetCount(); j++)
   {
     Cell(40,7,header[j],wxPDF_BORDER_FRAME);
   }
   Ln();
   // Data
   for (j = 0; j < data.GetCount(); j++)
   {
     wxArrayString* row = (wxArrayString*) data[j];
     size_t k;
     for (k = 0; k < (*row).GetCount(); k++)
     {
       Cell(40,6,(*row)[k],wxPDF_BORDER_FRAME);
     }
     Ln();
   }
 }
コード例 #5
0
ファイル: main.cpp プロジェクト: caicry/wxVSImport
	virtual void OnbtnImportClick( wxCommandEvent& event ) 
	{
		wxString strInputPath = m_textCtrlVSPrjPath->GetValue();
		TiXmlDocument doc(strInputPath);
		wxFileName fn(strInputPath);
		int i;

		wxString strSavePath =wxString::Format("%s\\%s.import.vcproj", fn.GetPath(), fn.GetName());
		// 获取多个Filter的信息
		DoGetGridInfoString();
		int num = m_GridInfoPtr.GetCount();
		if (num<=0) {
			wxMessageBox("Not Import Path");
			return;
		}

		m_strInfo.empty();
		for (i=0; i<num; i++) {
			// 多个Filter
			m_iTreeLevel = 0;
			CGridInfo *pInfo = (CGridInfo*)m_GridInfoPtr[i];
			pInfo->pElement = newFilter(pInfo->strFilterName);
			dirTrace(pInfo->strFilterPath, pInfo->pElement);
		}
		m_textCtrlInfo->AppendText(m_strInfo);


		if (!doc.LoadFile()) {
			wxMessageBox(wxT("Load Fail"));
			return;
		}


		// 删除重复的多个Filter
		TiXmlElement* root = doc.FirstChildElement("VisualStudioProject"); 
		if (root) {
			TiXmlElement *files  = root->FirstChildElement("Files");
			if (files) {
				TiXmlElement* filter = files->FirstChildElement("Filter");
				while(filter) {
					wxString str = filter->Attribute("Name");

					for (i=0; i<num; i++) {
						CGridInfo *pInfo = (CGridInfo*)m_GridInfoPtr[i];
						if (str == pInfo->strFilterName) {
							files->RemoveChild(filter);
							break;
						}
					}
					filter = filter->NextSiblingElement("Filter");
				}
				for (i=0; i<num; i++) {
					CGridInfo *pInfo = (CGridInfo*)m_GridInfoPtr[i];
					files->LinkEndChild(pInfo->pElement);
				}
			}
		}

		doc.SaveFile(strSavePath);

		m_textCtrlInfo->AppendText("\n ** Output Project Path:  " + strSavePath);

		/*
		<Files>
			<Filter
			Name="源文件"
			Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
			UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
			>
			<File
			RelativePath=".\main.cpp"
			>
			</File>
			</Filter>
			<Filter
			Name="头文件"
			Filter="h;hpp;hxx;hm;inl;inc;xsd"
			UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
			>
			</Filter>
			<Filter
			Name="资源文件"
			Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
			UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
			>
			</Filter>
			</Files>*/
	}