[xml] Libxml 2.6.26 XML parsing bug



Good afternoon,

When I run the attached fotoarchief.xml file through xmllint.exe
(compiled from the libxml 2.6.26 sources) just by running

   xmllint.exe c:\temp\fotoarchief.xml

I get parser errors about a comment not being closed and mismatched starting and ending tags:

file:///c%3A/temp/fotoarchief.xml:537: parser error : Comment not terminated

^
file:///c%3A/temp/fotoarchief.xml:537: parser error : Opening and ending tag mis
match: tabs line 502 and formgroup
          </formgroup>
                      ^
file:///c%3A/temp/fotoarchief.xml:538: parser error : Opening and ending tag mis
match: panel line 501 and tab
        </tab>
              ^
file:///c%3A/temp/fotoarchief.xml:569: parser error : Opening and ending tag mis
match: page line 500 and tabs
      </tabs>
             ^
file:///c%3A/temp/fotoarchief.xml:571: parser error : Opening and ending tag mis
match: pages line 1 and panel
    </panel>
            ^
file:///c%3A/temp/fotoarchief.xml:572: parser error : Extra content at the end o
f the document
  </page>
  ^

If I add or delete a space, newline or some other content _before_ line 535, the file is correctly parsed. It looks like a bug in libxml (maybe something with internal buffering of the XML file?).
I hope you can help me with this.

Greetings,
Kris Breuker

<pages xmlns="http://www.webhare.net/xmlns/ui/pages";
       xmlns:html="http://www.w3.org/1999/xhtml";
       fallbacklanguage="nl"
       appicon="publisher_icon"
       lib="module::fotoarchief/allium/fotoarchief.whlib">

  <page xml:id="main" tid="fotomanager.title(currentfolder)">

    <!-- All possible global actions -->
    <actions gid="fotomanager.actions" hintgid="actionhints">
      <action name="delete"
              tid="actions.delete"
              hinttid="actionhints.delete"
              icon="allium:actions/delete"
              onclick="deleteitem">
        <enableon source="archieftree" checkflag="writable" max="-1" />
        <enableon source="foldercontents" max="-1" />
      </action>
      <action name="exit"
              tid="actions.exit"
              hinttid="actionhints.exit" />

      <action name="new_folder"
              hinttid="actionhints.new_folder" tid="actions.new_folder"
              onclick="newfolder" icon="addfolder">
        <enableon source="archieftree" />
      </action>
      <action name="new_file"
              tid="actions.upload"
              hinttid="actionhints.upload"
              icon="addfile"
              onclick="upload">
        <enableon source="archieftree" />
      </action>
      <action name="uploadaction"
              tid="actions.upload"
              hinttid="actionhints.upload"
              icon="allium:files/application_x-webhare-unknown"
              >
        <enableon source="archieftree" />
      </action>
      <action name="sub"
              tid="actions.sub" />
      <action name="undo"
              tid="actions.undo"
              hinttid="actionhints.undo" />
      <action name="up"
              tid="actions.up"
              hinttid="actionhints.up"
              icon="allium:actions/up">
              <!-- onclick="alert:test" > -->
        <enableon source="archieftree" checkflag="cangoup" />
      </action>
      <action name="view"
              tid="actions.view"
              hinttid="actionhints.view"
              icon="previewsite" />

      <action name="edititemaction" icon="allium:actions/edit" onclick="edititem">
        <enableon source="archieftree" checkflag="writable" max="-1"/>
        <enableon source="foldercontents" max="-1" />
      </action>

      <action name="actionopenfolder" onclick="openfolder" disablemode="hidden" >
        <enableon source="foldercontents" checkflag="isfolder" /></action>

      <action name="actionsavefile" icon="allium:actions/save" onclick="savefile">
        <enableon source="foldercontents" checkflag="isfile" max="1" />
      </action>

      <action name="rotate_clockwise" icon="allium:actions/rotate_right" onclick="rotate_clock"
              title="Roteer 90 graden met de klok mee" disablemode="hidden">
        <enableon source="foldercontents" checkflag="isimage" max="1" /></action>

      <action name="rotate_counterclockwise" icon="allium:actions/rotate_left" onclick="rotate_counter"
              title="Roteer 90 graden tegen de klok in" disablemode="hidden">
        <enableon source="foldercontents" checkflag="isimage" max="1" /></action>

      <action name="rotate_free" icon="allium:actions/rotate_free" title="Vrije rotatie" disablemode="hidden">
        <enableon source="foldercontents" checkflag="isimage"  /></action>

      <action name="select_all" />

      <!-- FIXME: Allow multiple selections -->
      <action name="copy_to" onclick="copyto" disablemode="hidden">
        <enableon source="foldercontents" max="1" />
        <enableon source="archieftree" max="1" checkflag="writable" /></action>

      <action name="move_to" onclick="moveto" disablemode="hidden">
        <enableon source="foldercontents" max="1" />
        <enableon source="archieftree" max="1" checkflag="writable" /></action>

      <!-- Not yet
      <action name="extract_to" disablemode="hidden" onclick="extractto">
        <enableon source="foldercontents" checkflag="isarchive" /></action>
      -->

      <action name="extract_here" disablemode="hidden" onclick="extracthere">
        <enableon source="foldercontents" checkflag="isarchive" /></action>

      <action name="copy" icon="allium:actions/copy" />
      <action name="cut" icon="allium:actions/cut" />
      <action name="paste" icon="allium:actions/paste" />
      <action name="tree" />
      <action name="statusbar" />
      <action name="thumbnails" />
      <action name="details" />
      <action name="goto" />
      <action name="expand_collapse" />
      <action name="new_word_doc" />
      <action icon="allium:actions/properties" name="actionprops" onclick="props">
        <enableon source="foldercontents" />
        <enableon source="archieftree" /></action>
      <action name="export_fotoarchief" onclick="exportall" />
    </actions>

    <!-- The main menu -->
    <menu name="file" tid="menus.file.title" hinttid="menuhints.file">
      <menu name="add_folder_or_file" title="Nieuw">
        <menuitem action="new_file" tid="menus.file.upload" />
        <!-- Not yet
        <menuitem action="upload" tid="menus.file.new_empty_file" />
        -->
        <menudivider />
        <menuitem action="new_folder" tid="menus.file.addfolder" />
        <!-- Not yet
        <menu name="addfolder" tid="menus.addfolder">
          <menuitem action="new_folder" tid="menus.addfolder.standard_folder" />
        </menu>
        -->
      </menu>
      <menuitem action="edititemaction" tid="menus.file.edit" />
      <menuitem action="actionsavefile" tid="menus.file.savefile" />
      <menuitem action="delete" tid="menus.file.delete" />
      <menudivider />
      <menuitem action="actionprops" tid="menus.file.props" />
    </menu>

    <menu name="editmenu" tid="menus.edit.title" hinttid="menuhints.edit">
      <!-- Not yet
      <menuitem action="undo" tid="menus.edit.undo" />
      <menudivider />
      -->
      <menuitem action="copy" tid="menus.edit.copy" />
      <menuitem action="cut" tid="menus.edit.cut" />
      <menuitem action="paste" tid="menus.edit.paste" />
      <menudivider />
      <menuitem action="rotate_clockwise" tid="menus.edit.rotate_clockwise" />
      <menuitem action="rotate_counterclockwise" tid="menus.edit.rotate_counter_clockwise" />
      <menudivider />
      <!-- Not yet
      <menuitem action="extract_to" tid="menus.edit.extract_to" />
      -->
      <menuitem action="extract_here" tid="menus.edit.extract_here" />
      <menudivider />
      <menuitem action="copy_to" tid="menus.edit.copyto" />
      <menuitem action="move_to" tid="menus.edit.moveto" />
      <menudivider />
      <menuitem action="select_all" tid="menus.edit.select_all" />
    </menu>

    <menu name="management" title="Beheer" hinttid="menuhints.management">
      <menuitem action="export_fotoarchief" tid="actions.export" hinttid="actionhints.export_fotoarchief" />
    </menu>

    <!-- Not yet
    <menu name="view" tid="menus.view.title">
      <menuitem action="tree" tid="menus.view.tree" />
      <menuitem action="statusbar" tid="menus.view.statusbar" />
      <menuitem action="thumbnails" tid="menus.view.thumbnails" />
      <menuitem action="details" tid="menus.view.details" />
      <menuitem action="goto" tid="menus.view.goto" />
    </menu>
    -->

    <!-- This (context) menu is called when no file / folder was selected in the file/folder list -->
    <menu name="noselection_filelist">
      <!-- Not yet
      <menu name="view" tid="menus.noselection_filelist.view">
        <menuitem action="thumbnails" tid="menus.noselection_filelist.thumbnails" />
        <menuitem action="details" tid="menus.noselection_filelist.details" />
      </menu>
      <menudivider />
      -->
      <menuitem action="paste" tid="menus.noselection_filelist.paste" />
      <menudivider />
      <menuitem action="new_folder" tid="menus.noselection_filelist.addfolder" />
      <!-- Not yet
      <menu name="addfolder" tid="menus.noselection_filelist.addfolder">
        <menuitem action="new_folder" tid="menus.noselection_filelist.addfolder.standard" />
      </menu>
      -->
      <!-- Not yet
      <menu name="addfile" tid="menus.noselection_filelist.addfile">
        <menu name="all_file_types" tid="menus.noselection_filelist.addfile.all_file_types">
          <menuitem action="new_word_doc" tid="menus.noselection_filelist.addfile.word_doc" />
        </menu>
      </menu>
      -->
      <menudivider />
      <menuitem action="actionprops" tid="menus.noselection_filelist.parent_folder_props" />
    </menu>

    <!-- This (context) menu is called when *one* file / folder was selected in the file/folder list -->
    <menu name="selection_filelist">
      <menuitem action="actionopenfolder" tid="menus.selection_filelist.openfolder" />
      <menuitem action="edititemaction" tid="menus.selection_filelist.edit" />
      <menuitem action="actionsavefile" tid="menus.selection_filelist.save" />
      <menudivider />
      <menuitem action="copy" tid="menus.selection_filelist.copy" />
      <menuitem action="cut" tid="menus.selection_filelist.cut" />
      <menuitem action="paste" tid="menus.selection_filelist.paste" />
      <menudivider />
      <menuitem action="rotate_clockwise" tid="menus.selection_filelist.rotate_clockwise" />
      <menuitem action="rotate_counterclockwise" tid="menus.selection_filelist.rotate_counter_clockwise" />
      <menudivider />
      <!-- not yet
      <menuitem action="extract_to" tid="menus.selection_filelist.extract_to" />
      -->
      <menuitem action="extract_here" tid="menus.selection_filelist.extract_here" />
      <menudivider />
      <menuitem action="copy_to" tid="menus.selection_filelist.copyto" />
      <menuitem action="move_to" tid="menus.selection_filelist.moveto" />
      <menudivider />
      <menuitem action="delete" tid="menus.selection_filelist.delete" />
      <menudivider />
      <menuitem action="actionprops" tid="menus.selection_filelist.props" />
    </menu>

    <!-- User has right-clicked a folder in the folder tree -->
    <menu name="selection_foldertree">
      <!-- FIXME: ik wil eigenlijk 2 menuitems, ene keer de ene weg, andere keer de andere weg -->
      <menuitem action="expand_collapse" tid="menus.selection_foldertree.expand_collapse" />
      <menudivider />
      <menuitem action="new_folder" tid="menus.selection_foldertree.addfolder" />
      <!-- Not yet
      <menu name="addfolder" tid="menus.selection_foldertree.addfolder">
        <menuitem action="new_folder" tid="menus.selection_foldertree.addfolder.standard" />
      </menu>
      -->
      <!-- Not yet
      <menu name="addfile" tid="menus.selection_foldertree.addfile">
        <menu name="all_file_types" tid="menus.selection_foldertree.addfile.all_file_types">
          <menuitem action="new_word_doc" tid="menus.selection_foldertree.addfile.word_doc" />
        </menu>
      </menu>
      -->
      <menudivider />
      <menuitem action="edititemaction" tid="menus.selection_foldertree.edit" />
      <menudivider />
      <menuitem action="copy" tid="menus.selection_foldertree.copy" />
      <menuitem action="cut" tid="menus.selection_foldertree.cut" />
      <menuitem action="paste" tid="menus.selection_foldertree.paste" />
      <menudivider />
      <menuitem action="copy_to" tid="menus.selection_foldertree.copyto" />
      <menuitem action="move_to" tid="menus.selection_foldertree.moveto" />
      <menudivider />
      <menuitem action="delete" tid="menus.selection_foldertree.delete" />
      <menudivider />
      <menuitem action="actionprops" tid="menus.selection_foldertree.props" />
    </menu>

    <!-- The button bar -->
    <buttonbar name="buttons">
      <button action="up" />
      <button action="new_folder" />
      <button action="new_file" />
      <button action="delete" />
      <!-- <button action="republish" />
      -->
      <button action="view" />
    </buttonbar>

    <!-- The location bar -->
<!--    <toolbar>-->
<split type="vertical"><panel height="2lh">
      <combobox name="location" onchange="locationchange" value="test" />
</panel>
<!--    </toolbar>-->

    <!-- The main screen -->
    <split type="horizontal"
height="1pr">
      <list name="archieftree"
            selectmode="single"
            ondrop="archieftreedrop"
            onselect="archieftreechange"
            flags="cangoup writable"
            selectcontextmenu="selection_foldertree"
            height="1pr"
            width="1pr">
        <column type="tree" iconname="icon" name="name" title="Map" />
      </list>
      <split type="vertical" width="3pr">
        <list name="foldercontents"
              selectmode="multiple"
              onselect="filelistchange"
              ondrop="filelistdrop"
              flags="cangoup writable isimage isfolder isarchive isfile"
              selectcontextmenu="selection_filelist"
              newcontextmenu="noselection_filelist"
              height="1pr"
              ondblclick="filelistdblclick">
          <column type="text" iconname="icon" name="name" title="Bestandsnaam" />
          <column type="text" name="title" title="Titel"/>
          <column type="text" name="description" title="Omschrijving"/>
        </list>
        <externalhtml name="preview" height="1pr" />
      </split>
    </split>
</split>
  </page>

  <page xml:id="newfolder" tid="folder.add.title(currentfolder)">
    <panel layout="fieldset" gid="allium:common.labels">
      <textedit name="name" tid="folder.add.foldername" required="true"/><br />
      <textedit name="title" tid="folder.add.foldertitle" /><br />
      <textarea name="description" tid="folder.add.folderdescription" /><br />
      <defaultformbuttons type="okcancel" />
    </panel>
  </page>

  <page xml:id="upload" tid="upload.title(currentfolder)">
    <panel>
      <formgroup title="Plaats nieuw bestand - 1/2" layout="fieldset">
        <upload title="Bestandslocatie" name="uploadfile1" allowedtypes="*" maxsize="1024" onchange="submit" 
/>
      </formgroup>
      <defaultformbuttons type="okcancel" />
    </panel>
  </page>

  <page xml:id="upload2" tid="upload.title(currentfolder)">
    <panel>
      <formgroup title="Plaats nieuw bestand - 2/2" layout="fieldset">
        <textedit name="name" tid="file.edit.name" required="true"/><br />
        <textedit name="title" tid="file.edit.title"/><br />
        <textarea name="description" tid="file.edit.description" /><br />
        <textarea name="tags" tid="file.edit.tags" /><br />
        <textedit name="keywords" tid="file.edit.keywords" readonly="true" />
        <formbutton onclick="modifykeywords" tid="file.keywords.change"/><br />
        <textedit name="author" tid="file.edit.author" /><br />
        <textedit name="copyright" tid="image.edit.copyright" /><br />
      </formgroup>
      <defaultformbuttons type="okcancel" />
    </panel>
  </page>

  <!--
  <page xml:id="extracthere" tid="extracthere.pagetitle(name)">
    <panel>
      <formgroup tid="extracthere.formtitle" layout="fieldset">
        <readonly tid="extracthere.files_in_archive" name="files_in_archive" /><br />
        <readonly tid="extracthere.folders_in_archive" name="folders_in_archive" /><br />
        <checkbox name="overwrite" tid="extracthere.overwrite" default="true" /><br />
      </formgroup>
      <defaultformbuttons type="okcancel" />
    </panel>
  </page>
  -->

  <page xml:id="extracthere" tid="upload.title(currentfolder)">
    <panel>
      <formgroup tid="extracthere.formtitle">
        <select type="radio" default="dont_overwrite" name="upload_options">
          <option value="overwrite" tid="upload.archive.overwrite" />
          <option value="dont_overwrite" tid="upload.archive.dont_overwrite"/>
          <option value="dont_unpack" tid="upload.archive.dont_unpack" />
        </select>
        <br />
        <!-- FIXME: Should we add the option "delete all files/folders which are not overwritten"?
        <checkbox name="delete_old" tid="upload.archive.delete_old" /><br /> -->
        <checkbox name="delete_archive" tid="upload.archive.delete_archive" /><br />
      </formgroup>
      <defaultformbuttons type="okcancel" />
    </panel>
  </page>

  <page xml:id="editfile" tid="file.edit.pagetitle(currentfile)">
    <panel>
      <!--
      <tabs>
        <tab title="Algemeen">
        -->
          <formgroup title="Algemeen" layout="fieldset">
            <textedit name="file_name" tid="file.edit.name" required="true"/><br />
            <textedit name="file_title" tid="file.edit.title"/><br />
            <textarea name="file_description" tid="file.edit.description" /><br />
            <textarea name="file_tags" tid="file.edit.tags" /><br />
            <textedit name="file_keywords" tid="file.edit.keywords" readonly="true" />
            <formbutton onclick="modifykeywords" tid="file.keywords.change"/><br />
            <textedit name="file_author" tid="file.edit.author" /><br />
            <textedit name="file_copyright" tid="image.edit.copyright" /><br />
<!--
            <textedit name="file_number" tid="file.edit.number" /><br />
            <textedit name="file_place" tid="file.edit.place" /><br />
            <textedit name="file_year" tid="file.edit.year" /><br />
            <textedit name="file_category" tid="file.edit.category" /><br />
            <textedit name="file_subject" tid="file.edit.subject" /><br />
            <textedit name="file_target_audience" tid="file.edit.target_audience" /><br />
            <textedit name="file_media" tid="file.edit.media" /><br />
            <textedit name="file_used_by" tid="file.edit.used_by" /><br />
            <textedit name="file_ordered_times" tid="file.edit.ordered_times" readonly="true" /><br />
            <textedit name="file_ordered_by" tid="file.edit.ordered_by" /><br />
            <textedit name="file_ordered_for" tid="file.edit.ordered_for" /><br />
            <textedit name="file_faculty" tid="file.edit.faculty" /><br />
           <checkbox name="file_directdownload" tid="file.edit.directdownload" default="true" /><br />
-->
         </formgroup>
       <!--
       </tab>
       <tab title="Exif data">
        <formgroup title="Bestandsdata" layout="fieldset">
          <textedit name="file_exifversion" tid="file.edit.exifversion" readonly="true" /><br />
          <textedit name="file_flashpixversion" tid="file.edit.flashpixversion" readonly="true" /><br />
          <textedit name="file_dimensions" tid="file.edit.dimensions" readonly="true" /><br />
          <textedit name="file_filesize" tid="file.edit.filesize" readonly="true" /><br />
          <textedit name="file_creationdate" tid="file.edit.creationdate" readonly="true" /><br />
          <textedit name="file_mimetype" tid="file.edit.mimetype" readonly="true" /><br />

         </formgroup>
        </tab>
      </tabs>
      -->
      <defaultformbuttons type="okcancel" />
    </panel>
  </page>

  <page xml:id="editfolder" tid="folder.edit.pagetitle(currentfolder)">
    <panel>
      <formgroup tid="folder.edit.formtitle(currentfolder)" layout="fieldset">
        <textedit name="name" tid="folder.edit.name" required="true"/><br />
        <textedit name="title" tid="folder.edit.title" /><br />
        <textarea name="description" tid="folder.edit.description" /><br />
      </formgroup>
      <defaultformbuttons type="okcancel" />
    </panel>
  </page>

  <page xml:id="editmultiple" tid="editmultiple.title(numfiles)">
    <panel>
      <formgroup title="Bewerk" layout="fieldset">
        <readonly name="file_name" tid="file.edit.name" /><br />
        <readonly name="file_title" tid="file.edit.title" /><br />
        <textarea name="file_description" tid="file.edit.description" /><br />
        <textarea name="file_tags" tid="file.edit.tags" /><br />
        <textedit name="file_keywords" tid="file.edit.keywords" readonly="true" />
        <formbutton onclick="modifykeywords" tid="file.keywords.change"/><br />
        <textedit name="file_author" tid="file.edit.author" /><br />
        <textedit name="file_copyright" tid="image.edit.copyright" /><br />

      </formgroup>
      <defaultformbuttons type="okcancel" />
    </panel>
  </page>

  <page xml:id="editmultiple_confirm" tid="editmultiple.title(numfiles)">
    <panel>
      <formgroup title="">
        <readonly tid="editmultiple.confirm" /><br />
      </formgroup>
      <defaultformbuttons type="yesno" />
    </panel>
  </page>

  <page xml:id="deletefile" tid="file.delete.title(name)">
    <panel height="10lh">
      <readonly tid="file.delete.confirm(name)" /><br />
      <defaultformbuttons type="yesno" />
    </panel>
  </page>

  <page xml:id="deletefolder" tid="folder.delete.title(name)">
    <panel>
      <formgroup title="">
        <readonly tid="folder.delete.confirm(name)" /><br />
      </formgroup>
      <defaultformbuttons type="yesno" />
    </panel>
  </page>

  <page xml:id="deletemultiple" tid="deletemultiple.title">
    <panel>
      <formgroup title="">
        <readonly tid="deletemultiple.multiple_confirmation(nr_items)" /><br />
      </formgroup>
      <defaultformbuttons type="yesno" />
    </panel>
  </page>

  <page xml:id="rotate" title="Roteren">
    <panel>
      <formgroup title="Roteer het plaatje">
        <textedit title="Aantal graden" name="degrees" maxlength="3" required="true"/><br />
      </formgroup>
      <defaultformbuttons type="okcancel" />
    </panel>
  </page>

  <page xml:id="propsfile" tid="file.props.formtitle(filename)">
    <panel>
      <tabs>
        <tab title="Inputgegevens">
          <formgroup tid="file.props.formtitle(filename)" layout="fieldset">
            <readonly tid="file.props.name" name="filename" /><br />
            <readonly tid="file.props.title" name="title" /><br />
            <readonly tid="file.props.description" name="description" /><br />
            <readonly tid="file.props.tags" name="tags" /><br />
            <readonly tid="file.props.keywords" name="keywords" /><br />
            <readonly tid="file.props.author" name="author" /><br />
            <readonly tid="image.props.copyright" name="copyright" /><br />
          </formgroup>
        </tab>

            <!--
            <readonly tid="file.props.number" name="number" /><br />
            <readonly tid="file.props.place" name="place" /><br />
            <readonly tid="file.props.year" name="year" /><br />
            <readonly tid="file.props.category" name="category" /><br />
            <readonly tid="file.props.subject" name="subject" /><br />
        <tab title="Doelproductgegevens">
          <formgroup tid="file.props.formtitle(filename)" layout="fieldset">
            <readonly tid="file.props.target_audience" name="target_audience" /><br />
            <readonly tid="file.props.media" name="media" /><br />
            <readonly tid="file.props.used_by" name="used_by" /><br />
            <readonly tid="file.props.ordered_by" name="ordered_by" /><br />
          </formgroup>
        </tab>
        <tab title="Automatische gegevens">
          <formgroup tid="file.props.formtitle(filename)">
            <readonly tid="file.props.dimensions(dimensions)" /><br />
            <readonly tid="file.props.filesize(filesize)" /><br />
            <readonly tid="file.props.creationdate(creationdate)" /><br />
            <readonly tid="file.props.modificationdate(modificationdate)" /><br />
            <readonly tid="file.props.mimetype(mimetype)" /><br />
          </formgroup>
        </tab>
        -->
        <tab title="Exif gegevens">
          <formgroup tid="file.props.formtitle(filename)" layout="fieldset">
            <readonly tid="image.props.manufacturer" name="manufacturer" /><br />
            <readonly tid="image.props.inputmodel" name="inputmodel" /><br />
            <readonly tid="image.props.orientation" name="orientation" /><br />
            <readonly tid="image.props.width" name="width" /><br />
            <readonly tid="image.props.height" name="height" /><br />
            <readonly tid="image.props.xresolution" name="xresolution" /><br />
            <readonly tid="image.props.yresolution" name="yresolution" /><br />
            <readonly tid="image.props.xyresolutionunit" name="xyresolutionunit" /><br />
            <readonly tid="image.props.software" name="software" /><br />
            <readonly tid="image.props.filechangedatetime" name="filechangedatetime" /><br />
            <readonly tid="image.props.exposuretime" name="exposuretime" /><br />
            <readonly tid="image.props.fnumber" name="fnumber" /><br />
            <readonly tid="image.props.isospeed" name="isospeed" /><br />
            <readonly tid="image.props.exifversion" name="exifversion" /><br />
            <readonly tid="image.props.generateddatetime" name="generateddatetime" /><br />
            <readonly tid="image.props.digitizeddatetime" name="digitizeddatetime" /><br />
            <readonly tid="image.props.shutterspeed" name="shutterspeed" /><br />
            <readonly tid="image.props.aperture" name="aperture" /><br />
            <readonly tid="image.props.brightness" name="brightness" /><br />
            <readonly tid="image.props.exposurebias" name="exposurebias" /><br />
            <readonly tid="image.props.meteringmode" name="meteringmode" /><br />
            <readonly tid="image.props.lightsource" name="lightsource" /><br />
            <readonly tid="image.props.flash" name="flash" /><br />
            <readonly tid="image.props.lensfocallength" name="lensfocallength" /><br />
            <readonly tid="image.props.flashpixversion" name="flashpixversion" /><br />
          </formgroup>
        </tab>
      </tabs>
      <defaultformbuttons type="ok" />
    </panel>
  </page>


  <page xml:id="propsfolder" tid="folder.props.pagetitle(foldername)">
    <panel>
      <formgroup gid="folder.props" tid="folder.props.formtitle(foldername)" layout="fieldset">
        <readonly tid="folder.props.foldername" name="foldername" /><br />
        <readonly name="title" /><br />
        <readonly name="creationdate" /><br />
        <readonly name="size" /><br />
        <readonly name="contains" /><br />
      </formgroup>
      <defaultformbuttons type="ok" />
    </panel>
  </page>

  <page xml:id="propsmultiple" tid="fotomanager.multipleprops.pagetitle">
    <panel>
      <formgroup tid="fotomanager.multipleprops.formtitle" layout="fieldset">
        <readonly tid="fotomanager.multipleprops.nr_folders" name="nr_folders" /><br />
        <readonly tid="fotomanager.multipleprops.nr_files" name="nr_files" /><br />
        <readonly tid="fotomanager.multipleprops.total_filesize" name="total_filesize" /><br />
      </formgroup>
      <defaultformbuttons type="ok" />
    </panel>
  </page>

  <page xml:id="modifykeywords" tid="file.keywords.title">
    <panel>
      <split type="horizontal">
        <list name="allkeywords" selectmode="multiple" ondrop="dropdelete" height="20lh" width="40cw">
          <column tid="file.keywords.columntitle" iconname="icon" name="keyword" type="tree"/>
        </list>
        <list name="curkeywords" selectmode="multiple" ondrop="dropadd" height="20lh" width="40cw">
          <column tid="file.keywords.columntitle" iconname="icon" name="keyword" type="text"/>
        </list>
      </split>
      <defaultformbuttons type="okcancel"/>
    </panel>
  </page>

  <page xml:id="browseserverdialog" tid="copyormoveto.pagetitle(type,formaction,currentfolder)">
    <panel>
      <!-- FIXME: Want to remove formgroup but dialog is far too small then! -->
      <formgroup tid="copyormoveto.formtitle(type,formaction,currentfolder)" layout="fieldset">
        <readonly tid="copyormoveto.info(name,action)" /><br />
      </formgroup>
      <list name="folders"
            selectmode="single"
            height="10lh"
            width="70cw">
        <column type="tree" iconname="icon" name="name" title="Map" />
      </list>
      <defaultformbuttons type="okcancel" />
    </panel>
  </page>

</pages>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]