当前位置: 首页>>代码示例>>C++>>正文


C++ Xml::s1方法代码示例

本文整理汇总了C++中Xml::s1方法的典型用法代码示例。如果您正苦于以下问题:C++ Xml::s1方法的具体用法?C++ Xml::s1怎么用?C++ Xml::s1使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Xml的用法示例。


在下文中一共展示了Xml::s1方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: readStatus

void AbstractMidiEditor::readStatus(Xml& xml)/*{{{*/
{
    if (_pl == 0)
        _pl = new PartList;

    for (;;)
    {
        Xml::Token token = xml.parse();
        QString tag = xml.s1();
        switch (token)
        {
            case Xml::Error:
            case Xml::End:
                return;
            case Xml::TagStart:
                if (tag == "quant")
                    _quant = xml.parseInt();
                else if (tag == "raster")
                    _raster = xml.parseInt();
                else if (tag == "topwin")
                    TopWin::readStatus(xml);
                else
                    xml.unknown("AbstractMidiEditor");
                break;
            case Xml::TagEnd:
                if (tag == "midieditor")
                    return;
            default:
                break;
        }
    }
}/*}}}*/
开发者ID:peter1000,项目名称:los,代码行数:32,代码来源:AbstractMidiEditor.cpp

示例2: read

void WaveTrack::read(Xml& xml)
      {
      for (;;) {
            Xml::Token token = xml.parse();
            const QString& tag = xml.s1();
            switch (token) {
                  case Xml::Error:
                  case Xml::End:
                        goto out_of_WaveTrackRead_forloop;
                  case Xml::TagStart:
                        if (tag == "part") {
                              Part* p = 0;
                              p = Part::readFromXml(xml, this);
                              if(p)
                                parts()->add(p);
                              }
                        else if (AudioTrack::readProperties(xml, tag))
                              xml.unknown("WaveTrack");
                        break;
                  case Xml::Attribut:
                        break;
                  case Xml::TagEnd:
                        if (tag == "wavetrack") {
                              mapRackPluginsToControllers();
                              goto out_of_WaveTrackRead_forloop;
                              }
                  default:
                        break;
                  }
            }
out_of_WaveTrackRead_forloop:
      chainTrackParts(this);
      }
开发者ID:EQ4,项目名称:muse,代码行数:33,代码来源:wavetrack.cpp

示例3: readGlobalInputList

void readGlobalInputList(Xml& xml)/*{{{*/
{
    gInputList.clear();
    for (;;)
    {
        Xml::Token token = xml.parse();
        const QString& tag = xml.s1();
        switch (token)
        {
            case Xml::Error:
            case Xml::End:
                return;
            case Xml::TagStart:
                if(tag == "globalInput")
                {
                    readGlobalInput(xml);
                }
                break;
            case Xml::Attribut:
                break;
            case Xml::TagEnd:
                if(tag == "globalInputList")
                {//Just return
                    return;
                }
            default:
                break;
        }
    }
}/*}}}*/
开发者ID:Adamiko,项目名称:los,代码行数:30,代码来源:conf.cpp

示例4: readColor

QColor readColor(Xml& xml)
{
    int val, r = 0, g = 0, b = 0;

    for (;;)
    {
        Xml::Token token = xml.parse();
        if (token != Xml::Attribut)
            break;
        QString tag = xml.s1();
        switch (token)
        {
            case Xml::Attribut:
                val = xml.s2().toInt();
                if (tag == "r")
                    r = val;
                else if (tag == "g")
                    g = val;
                else if (tag == "b")
                    b = val;
                break;
            default:
                break;
        }
    }

    return QColor(r, g, b);
}
开发者ID:Adamiko,项目名称:los,代码行数:28,代码来源:conf.cpp

示例5: read

int TEvent::read(Xml& xml)
{
	int at = 0;
	for (;;)
	{
		Xml::Token token = xml.parse();
		const QString& tag = xml.s1();
		switch (token)
		{
			case Xml::Error:
			case Xml::End:
				return 0;
			case Xml::TagStart:
				if (tag == "tick")
					tick = xml.parseInt();
				else if (tag == "val")
					tempo = xml.parseInt();
				else
					xml.unknown("TEvent");
				break;
			case Xml::Attribut:
				if (tag == "at")
					at = xml.s2().toInt();
				break;
			case Xml::TagEnd:
				if (tag == "tempo")
				{
					return at;
				}
			default:
				break;
		}
	}
	return 0;
}
开发者ID:Adamiko,项目名称:los,代码行数:35,代码来源:tempo.cpp

示例6: read

int SigEvent::read(Xml& xml)
{
	int at = 0;
	for (;;)
	{
		Xml::Token token = xml.parse();
		const QString& tag = xml.s1();
		switch (token)
		{
			case Xml::Error:
			case Xml::End:
				return 0;
			case Xml::TagStart:
				if (tag == "tick")
					tick = xml.parseInt();
				else if (tag == "nom")
					z = xml.parseInt();
				else if (tag == "denom")
					n = xml.parseInt();
				else
					xml.unknown("SigEvent");
				break;
			case Xml::Attribut:
				if (tag == "at")
					at = xml.s2().toInt();
				break;
			case Xml::TagEnd:
				if (tag == "sig")
					return at;
			default:
				break;
		}
	}
	return 0;
}
开发者ID:faesong,项目名称:oom,代码行数:35,代码来源:sig.cpp

示例7: readShortCuts

void readShortCuts(Xml& xml)
{
    for (;;)
    {
        Xml::Token token = xml.parse();
        if (token == Xml::Error || token == Xml::End)
            break;

        const QString& tag = xml.s1();
        switch (token)
        {
            case Xml::TagStart:
            {
                if (tag.length())
                {
                    int index = getShrtByTag(tag.toUtf8().constData());
                    if (index != -1)
                    {
                        //printf("Index: %d\n",index);
                        shortcuts[index].key = xml.parseInt();
                        //printf("shortcuts[%d].key = %d, %s\n",index, shortcuts[index].key, shortcuts[index].descr);
                    }
                    else
                        xml.skip(tag);
                }
            }
            case Xml::TagEnd:
                if (tag == "shortcuts")
                    return;
            default:
                break;
        }
    }
}
开发者ID:peter1000,项目名称:los,代码行数:34,代码来源:shortcuts.cpp

示例8: readConfiguration

void MasterEdit::readConfiguration(Xml& xml)
{
    for (;;)
    {
        Xml::Token token = xml.parse();
        const QString& tag = xml.s1();
        switch (token)
        {
            case Xml::Error:
            case Xml::End:
                return;
            case Xml::TagStart:
                if (tag == "raster")
                    _rasterInit = xml.parseInt();
                else
                    xml.unknown("MasterEdit");
                break;
            case Xml::TagEnd:
                if (tag == "masteredit")
                    return;
            default:
                break;
        }
    }
}
开发者ID:Adamiko,项目名称:los,代码行数:25,代码来源:masteredit.cpp

示例9: readShortCuts

void readShortCuts(Xml& xml)
{
	for (;;)
	{
		Xml::Token token = xml.parse();
		if (token == Xml::Error || token == Xml::End)
			break;

		const QString& tag = xml.s1();
		switch (token)
		{
			case Xml::TagStart:
			{
				if (tag.length())
				{
					int index = getShrtByTag(tag.toAscii().constData());
					if (index == -1) //No such tag found
						printf("Config file might be corrupted. Unknown shortcut: %s\n", tag.toLatin1().constData());
					else
					{
						//printf("Index: %d\n",index);
						shortcuts[index].key = xml.parseInt();
						//printf("shortcuts[%d].key = %d, %s\n",index, shortcuts[index].key, shortcuts[index].descr);
					}
				}
			}
			case Xml::TagEnd:
				if (tag == "shortcuts")
					return;
			default:
				break;
		}
	}
}
开发者ID:faesong,项目名称:oom,代码行数:34,代码来源:shortcuts.cpp

示例10: read

void EventList::read(Xml& xml, const char* name, bool midi)
{
	for (;;)
	{
		Xml::Token token = xml.parse();
		const QString& tag = xml.s1();
		switch (token)
		{
			case Xml::Error:
			case Xml::End:
				return;
			case Xml::TagStart:
				if (tag == "event")
				{
					Event e(midi ? Note : Wave);
					e.read(xml);
					add(e);
				}
				else
					xml.unknown("readEventList");
				break;
			case Xml::TagEnd:
				if (tag == name)
					return;
			default:
				break;
		}
	}
}
开发者ID:87maxi,项目名称:oom,代码行数:29,代码来源:eventlist.cpp

示例11: readEventList

static void readEventList(Xml& xml, EventList* el, const char* name)
      {
      for (;;) {
            Xml::Token token = xml.parse();
            const QString& tag = xml.s1();
            switch (token) {
                  case Xml::Error:
                  case Xml::End:
                        return;
                  case Xml::TagStart:
                        if (tag == "event") {
                              Event e(Note);
                              e.read(xml);
                              el->add(e);
                              }
                        else
                              xml.unknown("readEventList");
                        break;
                  case Xml::TagEnd:
                        if (tag == name)
                              return;
                  default:
                        break;
                  }
            }
      }
开发者ID:UIKit0,项目名称:muse,代码行数:26,代码来源:minstrument.cpp

示例12: read

void PatchGroup::read(Xml& xml)
      {
      for (;;) {
            Xml::Token token = xml.parse();
            const QString& tag = xml.s1();
            switch (token) {
                  case Xml::Error:
                  case Xml::End:
                        return;
                  case Xml::TagStart:
                        if (tag == "Patch") {
                              Patch* patch = new Patch;
                              patch->read(xml);
                              patches.push_back(patch);
                              }
                        else
                              xml.unknown("PatchGroup");
                        break;
                  case Xml::Attribut:
                        if (tag == "name")
                              name = xml.s2();
                        break;
                  case Xml::TagEnd:
                        if (tag == "PatchGroup")
                              return;
                  default:
                        break;
                  }
            }
      }
开发者ID:UIKit0,项目名称:muse,代码行数:30,代码来源:minstrument.cpp

示例13: readDrummaps

void MidiInstrument::readDrummaps(Xml& xml)
{
  patch_drummap_mapping.clear();

  for (;;)
  {
    Xml::Token token = xml.parse();
    const QString& tag = xml.s1();
    switch (token)
    {
      case Xml::Error:
      case Xml::End:
        return;

      case Xml::TagStart:
        if (tag == "entry")
          patch_drummap_mapping.push_back(readDrummapsEntry(xml));
        else
          xml.unknown("MidiInstrument::readDrummaps");
        break;

      case Xml::TagEnd:
        if (tag == "Drummaps")
          return;

      default:
        break;
    }
  }
  printf("ERROR: THIS CANNOT HAPPEN: exited infinite loop in MidiInstrument::readDrummaps()!\n"
         "                           not returning anything. expect undefined behaviour or even crashes.\n");
}
开发者ID:UIKit0,项目名称:muse,代码行数:32,代码来源:minstrument.cpp

示例14: readPortChannel

static void readPortChannel(Xml& xml, int midiPort)
{
    int idx = 0; //torbenh
    for (;;)
    {
        Xml::Token token = xml.parse();
        if (token == Xml::Error || token == Xml::End)
            break;
        QString tag = xml.s1();
        switch (token)
        {
            case Xml::TagStart:
                if (tag == "controller")
                {
                    readController(xml, midiPort, idx);
                }
                else
                    xml.skip(tag);
                break;
            case Xml::Attribut:
                if (tag == "idx")
                    idx = xml.s2().toInt();
                break;
            case Xml::TagEnd:
                if (tag == "channel")
                    return;
            default:
                break;
        }
    }
}
开发者ID:Adamiko,项目名称:los,代码行数:31,代码来源:conf.cpp

示例15: if

static QPair<int, QString> readMidiPortPreset(Xml& xml)/*{{{*/
{
    int id = 0;
    QString sysex;

    for (;;)
    {
        Xml::Token token = xml.parse();
        QString tag = xml.s1();
        switch (token)
        {
            case Xml::TagStart:
                xml.unknown("midiPreset");
                break;
            case Xml::Attribut:
                if (tag == "id")
                    id = xml.s2().toInt();
                else if (tag == "sysex")
                {
                    sysex = xml.s2();
                }
                break;
            case Xml::TagEnd:
                return qMakePair(id, sysex);
            default:
                break;
        }
    }
}/*}}}*/
开发者ID:Adamiko,项目名称:los,代码行数:29,代码来源:conf.cpp


注:本文中的Xml::s1方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。