Changeset 16542


Ignore:
Timestamp:
Aug 18, 2016, 5:55:11 PM (3 years ago)
Author:
dcorreia
Message:

Added control of subprocesses for the application.
Updated window and buttons design.

Location:
internals/2016/linuxloginsmartcardwizard
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • internals/2016/linuxloginsmartcardwizard/.idea/dictionaries/danielcorreia.xml

    r16483 r16542  
    44      <w>assinado</w>
    55      <w>autentica</w>
     6      <w>autenticação</w>
    67      <w>cacerts</w>
    78      <w>cartaode</w>
  • internals/2016/linuxloginsmartcardwizard/.idea/workspace.xml

    r16521 r16542  
    33  <component name="ChangeListManager">
    44    <list default="true" readonly="true" id="fbd8e757-714d-41c6-a2b9-8558c09dbd04" name="Default" comment="">
    5       <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/trunk/proto1/checksystem.py" />
    6       <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/trunk/proto1/fileHelper.py" />
    7       <change type="MODIFICATION" beforePath="$PROJECT_DIR$/trunk/guilearning/qtdesigner/seriouswiz/w4pages.py" afterPath="$PROJECT_DIR$/trunk/guilearning/qtdesigner/seriouswiz/w4pages.py" />
    8       <change type="MODIFICATION" beforePath="$PROJECT_DIR$/trunk/guilearning/qtdesigner/w4pages.py" afterPath="$PROJECT_DIR$/trunk/guilearning/qtdesigner/w4pages.py" />
    9       <change type="MODIFICATION" beforePath="$PROJECT_DIR$/trunk/project1/main.py" afterPath="$PROJECT_DIR$/trunk/project1/main.py" />
    10       <change type="MODIFICATION" beforePath="$PROJECT_DIR$/trunk/project1/tests.py" afterPath="$PROJECT_DIR$/trunk/project1/tests.py" />
     5      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/dictionaries/danielcorreia.xml" afterPath="$PROJECT_DIR$/.idea/dictionaries/danielcorreia.xml" />
     6      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
    117      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/trunk/proto1/cardHelper.py" afterPath="$PROJECT_DIR$/trunk/proto1/cardHelper.py" />
    128      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/trunk/proto1/carduser.py" afterPath="$PROJECT_DIR$/trunk/proto1/carduser.py" />
     9      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/trunk/proto1/checksystem.py" afterPath="$PROJECT_DIR$/trunk/proto1/checksystem.py" />
    1310      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/trunk/proto1/config.py" afterPath="$PROJECT_DIR$/trunk/proto1/config.py" />
    14       <change type="MODIFICATION" beforePath="$PROJECT_DIR$/trunk/proto1/main.py" afterPath="$PROJECT_DIR$/trunk/proto1/main.py" />
     11      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/trunk/proto1/eidlibPython_Wrapper/examples/simple_example.py" afterPath="$PROJECT_DIR$/trunk/proto1/eidlibPython_Wrapper/examples/simple_example.py" />
     12      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/trunk/proto1/fileHelper.py" afterPath="$PROJECT_DIR$/trunk/proto1/fileHelper.py" />
     13      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/trunk/proto1/final.py" afterPath="$PROJECT_DIR$/trunk/proto1/final.py" />
    1514      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/trunk/proto1/mainwin.py" afterPath="$PROJECT_DIR$/trunk/proto1/mainwin.py" />
    1615      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/trunk/proto1/w4pages.py" afterPath="$PROJECT_DIR$/trunk/proto1/w4pages.py" />
     
    3534  <component name="FileEditorManager">
    3635    <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
    37       <file leaf-file-name="mainwin.py" pinned="false" current-in-tab="false">
     36      <file leaf-file-name="mainwin.py" pinned="false" current-in-tab="true">
    3837        <entry file="file://$PROJECT_DIR$/trunk/proto1/mainwin.py">
    3938          <provider selected="true" editor-type-id="text-editor">
    40             <state relative-caret-position="72">
    41               <caret line="4" column="0" selection-start-line="4" selection-start-column="0" selection-end-line="4" selection-end-column="0" />
     39            <state relative-caret-position="18">
     40              <caret line="75" column="33" selection-start-line="75" selection-start-column="33" selection-end-line="75" selection-end-column="33" />
     41              <folding>
     42                <element signature="e#19#61#0" expanded="true" />
     43              </folding>
     44            </state>
     45          </provider>
     46        </entry>
     47      </file>
     48      <file leaf-file-name="welcome.py" pinned="false" current-in-tab="false">
     49        <entry file="file://$PROJECT_DIR$/trunk/proto1/welcome.py">
     50          <provider selected="true" editor-type-id="text-editor">
     51            <state relative-caret-position="414">
     52              <caret line="23" column="83" selection-start-line="23" selection-start-column="83" selection-end-line="23" selection-end-column="83" />
    4253              <folding />
     54            </state>
     55          </provider>
     56        </entry>
     57      </file>
     58      <file leaf-file-name="w4pages.py" pinned="false" current-in-tab="false">
     59        <entry file="file://$PROJECT_DIR$/trunk/proto1/w4pages.py">
     60          <provider selected="true" editor-type-id="text-editor">
     61            <state relative-caret-position="972">
     62              <caret line="56" column="13" selection-start-line="56" selection-start-column="13" selection-end-line="56" selection-end-column="13" />
     63              <folding>
     64                <element signature="e#0#42#0" expanded="true" />
     65              </folding>
    4366            </state>
    4467          </provider>
     
    4871        <entry file="file://$PROJECT_DIR$/trunk/proto1/main.py">
    4972          <provider selected="true" editor-type-id="text-editor">
    50             <state relative-caret-position="18">
    51               <caret line="1" column="0" selection-start-line="1" selection-start-column="0" selection-end-line="1" selection-end-column="0" />
     73            <state relative-caret-position="1278">
     74              <caret line="71" column="4" selection-start-line="71" selection-start-column="4" selection-end-line="75" selection-end-column="45" />
    5275              <folding />
    5376            </state>
     
    5881        <entry file="file://$PROJECT_DIR$/trunk/proto1/fileHelper.py">
    5982          <provider selected="true" editor-type-id="text-editor">
    60             <state relative-caret-position="0">
    61               <caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
     83            <state relative-caret-position="306">
     84              <caret line="26" column="26" selection-start-line="26" selection-start-column="26" selection-end-line="26" selection-end-column="26" />
    6285              <folding>
    6386                <element signature="e#19#33#0" expanded="true" />
     
    6790        </entry>
    6891      </file>
    69       <file leaf-file-name="final.py" pinned="false" current-in-tab="false">
    70         <entry file="file://$PROJECT_DIR$/trunk/proto1/final.py">
    71           <provider selected="true" editor-type-id="text-editor">
    72             <state relative-caret-position="558">
    73               <caret line="31" column="85" selection-start-line="31" selection-start-column="85" selection-end-line="31" selection-end-column="85" />
    74               <folding />
    75             </state>
    76           </provider>
    77         </entry>
    78       </file>
    7992      <file leaf-file-name="config.py" pinned="false" current-in-tab="false">
    8093        <entry file="file://$PROJECT_DIR$/trunk/proto1/config.py">
    8194          <provider selected="true" editor-type-id="text-editor">
    82             <state relative-caret-position="36">
    83               <caret line="2" column="29" selection-start-line="2" selection-start-column="29" selection-end-line="2" selection-end-column="29" />
     95            <state relative-caret-position="4572">
     96              <caret line="319" column="19" selection-start-line="319" selection-start-column="19" selection-end-line="319" selection-end-column="19" />
    8497              <folding>
    8598                <element signature="e#19#28#0" expanded="true" />
    86               </folding>
    87             </state>
    88           </provider>
    89         </entry>
    90       </file>
    91       <file leaf-file-name="checksystem.py" pinned="false" current-in-tab="false">
    92         <entry file="file://$PROJECT_DIR$/trunk/proto1/checksystem.py">
    93           <provider selected="true" editor-type-id="text-editor">
    94             <state relative-caret-position="18">
    95               <caret line="1" column="0" selection-start-line="1" selection-start-column="0" selection-end-line="1" selection-end-column="0" />
    96               <folding />
    97             </state>
    98           </provider>
    99         </entry>
    100       </file>
    101       <file leaf-file-name="carduser.py" pinned="false" current-in-tab="true">
    102         <entry file="file://$PROJECT_DIR$/trunk/proto1/carduser.py">
    103           <provider selected="true" editor-type-id="text-editor">
    104             <state relative-caret-position="234">
    105               <caret line="13" column="31" selection-start-line="13" selection-start-column="31" selection-end-line="13" selection-end-column="31" />
    106               <folding>
    107                 <element signature="e#0#42#0" expanded="true" />
     99                <element signature="e#7072#7282#1" expanded="true" />
    108100              </folding>
    109101            </state>
     
    114106        <entry file="file://$PROJECT_DIR$/trunk/proto1/cardHelper.py">
    115107          <provider selected="true" editor-type-id="text-editor">
    116             <state relative-caret-position="72">
    117               <caret line="4" column="12" selection-start-line="4" selection-start-column="12" selection-end-line="4" selection-end-column="12" />
    118               <folding />
     108            <state relative-caret-position="2970">
     109              <caret line="203" column="0" selection-start-line="203" selection-start-column="0" selection-end-line="203" selection-end-column="0" />
     110              <folding>
     111                <element signature="e#1320#2817#0" expanded="false" />
     112                <element signature="e#6457#8304#0" expanded="false" />
     113              </folding>
    119114            </state>
    120115          </provider>
    121116        </entry>
    122117      </file>
    123       <file leaf-file-name="welcome.py" pinned="false" current-in-tab="false">
    124         <entry file="file://$PROJECT_DIR$/trunk/proto1/welcome.py">
     118      <file leaf-file-name="simple_example.py" pinned="false" current-in-tab="false">
     119        <entry file="file://$PROJECT_DIR$/trunk/proto1/eidlibPython_Wrapper/examples/simple_example.py">
    125120          <provider selected="true" editor-type-id="text-editor">
    126             <state relative-caret-position="180">
    127               <caret line="10" column="29" selection-start-line="10" selection-start-column="29" selection-end-line="10" selection-end-column="29" />
    128               <folding />
    129             </state>
    130           </provider>
    131         </entry>
    132       </file>
    133       <file leaf-file-name="w4pages.py" pinned="false" current-in-tab="false">
    134         <entry file="file://$PROJECT_DIR$/trunk/proto1/w4pages.py">
    135           <provider selected="true" editor-type-id="text-editor">
    136             <state relative-caret-position="18">
    137               <caret line="1" column="39" selection-start-line="1" selection-start-column="39" selection-end-line="1" selection-end-column="39" />
     121            <state relative-caret-position="1098">
     122              <caret line="61" column="0" selection-start-line="61" selection-start-column="0" selection-end-line="61" selection-end-column="0" />
    138123              <folding />
    139124            </state>
     
    183168        <option value="$PROJECT_DIR$/trunk/proto1/gui/welcome.py" />
    184169        <option value="$PROJECT_DIR$/trunk/proto1/gui/system.py" />
     170        <option value="$PROJECT_DIR$/.idea/workspace.xml" />
     171        <option value="$PROJECT_DIR$/trunk/proto1/system.py" />
     172        <option value="$PROJECT_DIR$/trunk/proto1/main.py" />
    185173        <option value="$PROJECT_DIR$/trunk/proto1/eidlibPython_Wrapper/examples/simple_example.py" />
    186         <option value="$PROJECT_DIR$/.idea/workspace.xml" />
    187         <option value="$PROJECT_DIR$/trunk/proto1/final.py" />
    188         <option value="$PROJECT_DIR$/trunk/proto1/welcome.py" />
    189         <option value="$PROJECT_DIR$/trunk/proto1/system.py" />
    190         <option value="$PROJECT_DIR$/trunk/proto1/w4pages.py" />
    191         <option value="$PROJECT_DIR$/trunk/proto1/mainwin.py" />
    192         <option value="$PROJECT_DIR$/trunk/proto1/main.py" />
    193         <option value="$PROJECT_DIR$/trunk/proto1/config.py" />
     174        <option value="$PROJECT_DIR$/trunk/proto1/cardHelper.py" />
    194175        <option value="$PROJECT_DIR$/trunk/proto1/checksystem.py" />
    195176        <option value="$PROJECT_DIR$/trunk/proto1/carduser.py" />
    196         <option value="$PROJECT_DIR$/trunk/proto1/cardHelper.py" />
     177        <option value="$PROJECT_DIR$/trunk/proto1/final.py" />
     178        <option value="$PROJECT_DIR$/trunk/proto1/config.py" />
     179        <option value="$PROJECT_DIR$/trunk/proto1/welcome.py" />
     180        <option value="$PROJECT_DIR$/trunk/proto1/w4pages.py" />
     181        <option value="$PROJECT_DIR$/trunk/proto1/fileHelper.py" />
     182        <option value="$PROJECT_DIR$/trunk/proto1/mainwin.py" />
    197183      </list>
    198184    </option>
    199185  </component>
    200186  <component name="ProjectFrameBounds">
    201     <option name="x" value="-1" />
    202     <option name="y" value="27" />
    203     <option name="width" value="1282" />
    204     <option name="height" value="773" />
     187    <option name="x" value="1279" />
     188    <option name="width" value="1442" />
     189    <option name="height" value="900" />
    205190  </component>
    206191  <component name="ProjectInspectionProfilesVisibleTreeState">
     
    252237    <panes>
    253238      <pane id="ProjectPane">
    254         <subPane>
    255           <PATH>
    256             <PATH_ELEMENT>
    257               <option name="myItemId" value="estagiopycharm" />
    258               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
    259             </PATH_ELEMENT>
    260           </PATH>
    261           <PATH>
    262             <PATH_ELEMENT>
    263               <option name="myItemId" value="estagiopycharm" />
    264               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
    265             </PATH_ELEMENT>
    266             <PATH_ELEMENT>
    267               <option name="myItemId" value="estagiopycharm" />
    268               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
    269             </PATH_ELEMENT>
    270             <PATH_ELEMENT>
    271               <option name="myItemId" value="trunk" />
    272               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
    273             </PATH_ELEMENT>
    274           </PATH>
    275           <PATH>
    276             <PATH_ELEMENT>
    277               <option name="myItemId" value="estagiopycharm" />
    278               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
    279             </PATH_ELEMENT>
    280             <PATH_ELEMENT>
    281               <option name="myItemId" value="estagiopycharm" />
    282               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
    283             </PATH_ELEMENT>
    284             <PATH_ELEMENT>
    285               <option name="myItemId" value="trunk" />
    286               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
    287             </PATH_ELEMENT>
    288             <PATH_ELEMENT>
    289               <option name="myItemId" value="proto1" />
    290               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
    291             </PATH_ELEMENT>
    292           </PATH>
    293           <PATH>
    294             <PATH_ELEMENT>
    295               <option name="myItemId" value="estagiopycharm" />
    296               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
    297             </PATH_ELEMENT>
    298             <PATH_ELEMENT>
    299               <option name="myItemId" value="estagiopycharm" />
    300               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
    301             </PATH_ELEMENT>
    302             <PATH_ELEMENT>
    303               <option name="myItemId" value="trunk" />
    304               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
    305             </PATH_ELEMENT>
    306             <PATH_ELEMENT>
    307               <option name="myItemId" value="proto1" />
    308               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
    309             </PATH_ELEMENT>
    310             <PATH_ELEMENT>
    311               <option name="myItemId" value="eidlibPython_Wrapper" />
    312               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
    313             </PATH_ELEMENT>
    314           </PATH>
    315           <PATH>
    316             <PATH_ELEMENT>
    317               <option name="myItemId" value="estagiopycharm" />
    318               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
    319             </PATH_ELEMENT>
    320             <PATH_ELEMENT>
    321               <option name="myItemId" value="estagiopycharm" />
    322               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
    323             </PATH_ELEMENT>
    324             <PATH_ELEMENT>
    325               <option name="myItemId" value="trunk" />
    326               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
    327             </PATH_ELEMENT>
    328             <PATH_ELEMENT>
    329               <option name="myItemId" value="proto1" />
    330               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
    331             </PATH_ELEMENT>
    332             <PATH_ELEMENT>
    333               <option name="myItemId" value="eidlibPython_Wrapper" />
    334               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
    335             </PATH_ELEMENT>
    336             <PATH_ELEMENT>
    337               <option name="myItemId" value="GeneratedModule" />
    338               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
    339             </PATH_ELEMENT>
    340           </PATH>
    341           <PATH>
    342             <PATH_ELEMENT>
    343               <option name="myItemId" value="estagiopycharm" />
    344               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
    345             </PATH_ELEMENT>
    346             <PATH_ELEMENT>
    347               <option name="myItemId" value="estagiopycharm" />
    348               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
    349             </PATH_ELEMENT>
    350             <PATH_ELEMENT>
    351               <option name="myItemId" value="trunk" />
    352               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
    353             </PATH_ELEMENT>
    354             <PATH_ELEMENT>
    355               <option name="myItemId" value="guilearning" />
    356               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
    357             </PATH_ELEMENT>
    358           </PATH>
    359           <PATH>
    360             <PATH_ELEMENT>
    361               <option name="myItemId" value="estagiopycharm" />
    362               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
    363             </PATH_ELEMENT>
    364             <PATH_ELEMENT>
    365               <option name="myItemId" value="estagiopycharm" />
    366               <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
    367             </PATH_ELEMENT>
    368           </PATH>
    369         </subPane>
     239        <subPane />
    370240      </pane>
     241      <pane id="Scope" />
    371242      <pane id="Scratches" />
    372       <pane id="Scope" />
    373243    </panes>
    374244  </component>
     
    889759      <updated>1470747508027</updated>
    890760    </task>
    891     <option name="localTasksCounter" value="34" />
     761    <task id="LOCAL-00034" summary="Added list local configurations feature.">
     762      <created>1470922508104</created>
     763      <option name="number" value="00034" />
     764      <option name="presentableId" value="LOCAL-00034" />
     765      <option name="project" value="LOCAL" />
     766      <updated>1470922508104</updated>
     767    </task>
     768    <option name="localTasksCounter" value="35" />
    892769    <servers />
    893770  </component>
     
    902779  </component>
    903780  <component name="ToolWindowManager">
    904     <frame x="-1" y="27" width="1282" height="773" extended-state="6" />
     781    <frame x="1279" y="0" width="1442" height="900" extended-state="6" />
    905782    <editor active="false" />
    906783    <layout>
    907       <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.22593476" sideWeight="0.49195403" order="0" side_tool="false" content_ui="combo" />
    908       <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.24574961" sideWeight="0.5" order="8" side_tool="false" content_ui="tabs" />
     784      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.22593476" sideWeight="0.49195403" order="0" side_tool="false" content_ui="combo" />
     785      <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.24547803" sideWeight="0.5" order="8" side_tool="false" content_ui="tabs" />
    909786      <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.23802164" sideWeight="0.50676215" order="9" side_tool="true" content_ui="tabs" />
    910       <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.35085008" sideWeight="0.49323785" order="12" side_tool="false" content_ui="tabs" />
     787      <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.23647605" sideWeight="0.49323785" order="12" side_tool="false" content_ui="tabs" />
    911788      <window_info id="Python Console" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32612056" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
    912       <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.28748068" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
    913789      <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.24900557" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
    914790      <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.23029366" sideWeight="0.4953125" order="10" side_tool="false" content_ui="tabs" />
    915791      <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.17263326" sideWeight="0.508046" order="1" side_tool="true" content_ui="tabs" />
    916       <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.39876354" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
    917792      <window_info id="SVN Repositories" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.32921174" sideWeight="0.5" order="11" side_tool="false" content_ui="tabs" />
    918793      <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
     
    921796      <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
    922797      <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
     798      <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.28748068" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
    923799      <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
    924800      <window_info id="Inspection Results" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32945737" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
    925801      <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32921174" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
    926802      <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
     803      <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.39876354" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
    927804    </layout>
    928805  </component>
     
    943820  <component name="VcsManagerConfiguration">
    944821    <option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="true" />
    945     <MESSAGE value="Clean up TODO's." />
    946822    <MESSAGE value="Added pam_pkcs11 configuration file creation.&#10;Updated crl wget feature to avoid duplicate files." />
    947823    <MESSAGE value="Added backup configuration folder." />
     
    968844    <MESSAGE value="Added support to control configuration progress.&#10;Added check for user+card mapping to avoid duplicates." />
    969845    <MESSAGE value="Designed interface for main window." />
    970     <option name="LAST_COMMIT_MESSAGE" value="Designed interface for main window." />
     846    <MESSAGE value="Added list local configurations feature." />
     847    <option name="LAST_COMMIT_MESSAGE" value="Added list local configurations feature." />
    971848  </component>
    972849  <component name="XDebuggerManager">
    973850    <breakpoint-manager>
    974       <option name="time" value="27" />
     851      <option name="time" value="30" />
    975852    </breakpoint-manager>
    976853    <watches-manager />
     
    11261003    </entry>
    11271004    <entry file="file://$PROJECT_DIR$/trunk/proto1/simple_example.py" />
     1005    <entry file="file://$USER_HOME$/.PyCharm2016.2/system/python_stubs/-1247971765/PyQt5/QtWidgets/QWidget.py">
     1006      <provider selected="true" editor-type-id="text-editor">
     1007        <state relative-caret-position="313">
     1008          <caret line="369" column="20" selection-start-line="369" selection-start-column="15" selection-end-line="369" selection-end-column="20" />
     1009        </state>
     1010      </provider>
     1011    </entry>
     1012    <entry file="file://$PROJECT_DIR$/trunk/proto1/tmpfile" />
     1013    <entry file="file://$PROJECT_DIR$/.idea/workspace.xml">
     1014      <provider selected="true" editor-type-id="text-editor">
     1015        <state relative-caret-position="18">
     1016          <caret line="304" column="4" selection-start-line="304" selection-start-column="4" selection-end-line="304" selection-end-column="4" />
     1017        </state>
     1018      </provider>
     1019    </entry>
     1020    <entry file="file://$PROJECT_DIR$/trunk/proto1/system.py" />
    11281021    <entry file="file://$PROJECT_DIR$/trunk/proto1/eidlibPython_Wrapper/GeneratedModule/pteid.py">
    11291022      <provider selected="true" editor-type-id="text-editor">
     
    11331026      </provider>
    11341027    </entry>
    1135     <entry file="file://$PROJECT_DIR$/trunk/proto1/eidlibPython_Wrapper/examples/simple_example.py">
    1136       <provider selected="true" editor-type-id="text-editor">
    1137         <state relative-caret-position="252">
    1138           <caret line="53" column="82" selection-start-line="53" selection-start-column="82" selection-end-line="53" selection-end-column="82" />
    1139         </state>
    1140       </provider>
    1141     </entry>
    1142     <entry file="file://$USER_HOME$/.PyCharm2016.2/system/python_stubs/-1247971765/PyQt5/QtWidgets/QWidget.py">
    1143       <provider selected="true" editor-type-id="text-editor">
    1144         <state relative-caret-position="313">
    1145           <caret line="369" column="20" selection-start-line="369" selection-start-column="15" selection-end-line="369" selection-end-column="20" />
     1028    <entry file="file://$PROJECT_DIR$/trunk/proto1/checksystem.py">
     1029      <provider selected="true" editor-type-id="text-editor">
     1030        <state relative-caret-position="558">
     1031          <caret line="43" column="51" selection-start-line="43" selection-start-column="51" selection-end-line="43" selection-end-column="51" />
     1032        </state>
     1033      </provider>
     1034    </entry>
     1035    <entry file="file://$PROJECT_DIR$/trunk/proto1/carduser.py">
     1036      <provider selected="true" editor-type-id="text-editor">
     1037        <state relative-caret-position="276">
     1038          <caret line="73" column="40" selection-start-line="73" selection-start-column="40" selection-end-line="73" selection-end-column="40" />
     1039        </state>
     1040      </provider>
     1041    </entry>
     1042    <entry file="file://$PROJECT_DIR$/trunk/proto1/final.py">
     1043      <provider selected="true" editor-type-id="text-editor">
     1044        <state relative-caret-position="432">
     1045          <caret line="24" column="50" selection-start-line="24" selection-start-column="50" selection-end-line="24" selection-end-column="50" />
     1046        </state>
     1047      </provider>
     1048    </entry>
     1049    <entry file="file://$PROJECT_DIR$/trunk/proto1/mainwin.py">
     1050      <provider selected="true" editor-type-id="text-editor">
     1051        <state relative-caret-position="18">
     1052          <caret line="75" column="33" selection-start-line="75" selection-start-column="33" selection-end-line="75" selection-end-column="33" />
     1053          <folding>
     1054            <element signature="e#19#61#0" expanded="true" />
     1055          </folding>
     1056        </state>
     1057      </provider>
     1058    </entry>
     1059    <entry file="file://$PROJECT_DIR$/trunk/proto1/welcome.py">
     1060      <provider selected="true" editor-type-id="text-editor">
     1061        <state relative-caret-position="414">
     1062          <caret line="23" column="83" selection-start-line="23" selection-start-column="83" selection-end-line="23" selection-end-column="83" />
    11461063          <folding />
    11471064        </state>
    11481065      </provider>
    11491066    </entry>
    1150     <entry file="file://$PROJECT_DIR$/trunk/proto1/tmpfile" />
    1151     <entry file="file://$PROJECT_DIR$/.idea/workspace.xml">
    1152       <provider selected="true" editor-type-id="text-editor">
    1153         <state relative-caret-position="18">
    1154           <caret line="304" column="4" selection-start-line="304" selection-start-column="4" selection-end-line="304" selection-end-column="4" />
    1155         </state>
    1156       </provider>
    1157     </entry>
    1158     <entry file="file://$PROJECT_DIR$/trunk/proto1/system.py">
    1159       <provider selected="true" editor-type-id="text-editor">
    1160         <state relative-caret-position="18">
    1161           <caret line="12" column="56" selection-start-line="12" selection-start-column="56" selection-end-line="12" selection-end-column="56" />
     1067    <entry file="file://$PROJECT_DIR$/trunk/proto1/w4pages.py">
     1068      <provider selected="true" editor-type-id="text-editor">
     1069        <state relative-caret-position="972">
     1070          <caret line="56" column="13" selection-start-line="56" selection-start-column="13" selection-end-line="56" selection-end-column="13" />
     1071          <folding>
     1072            <element signature="e#0#42#0" expanded="true" />
     1073          </folding>
     1074        </state>
     1075      </provider>
     1076    </entry>
     1077    <entry file="file://$PROJECT_DIR$/trunk/proto1/main.py">
     1078      <provider selected="true" editor-type-id="text-editor">
     1079        <state relative-caret-position="1278">
     1080          <caret line="71" column="4" selection-start-line="71" selection-start-column="4" selection-end-line="75" selection-end-column="45" />
    11621081          <folding />
    11631082        </state>
    11641083      </provider>
    11651084    </entry>
    1166     <entry file="file://$PROJECT_DIR$/trunk/proto1/welcome.py">
    1167       <provider selected="true" editor-type-id="text-editor">
    1168         <state relative-caret-position="180">
    1169           <caret line="10" column="29" selection-start-line="10" selection-start-column="29" selection-end-line="10" selection-end-column="29" />
    1170           <folding />
    1171         </state>
    1172       </provider>
    1173     </entry>
    1174     <entry file="file://$PROJECT_DIR$/trunk/proto1/w4pages.py">
    1175       <provider selected="true" editor-type-id="text-editor">
    1176         <state relative-caret-position="18">
    1177           <caret line="1" column="39" selection-start-line="1" selection-start-column="39" selection-end-line="1" selection-end-column="39" />
    1178           <folding />
    1179         </state>
    1180       </provider>
    1181     </entry>
    1182     <entry file="file://$PROJECT_DIR$/trunk/proto1/main.py">
    1183       <provider selected="true" editor-type-id="text-editor">
    1184         <state relative-caret-position="18">
    1185           <caret line="1" column="0" selection-start-line="1" selection-start-column="0" selection-end-line="1" selection-end-column="0" />
    1186           <folding />
    1187         </state>
    1188       </provider>
    1189     </entry>
    11901085    <entry file="file://$PROJECT_DIR$/trunk/proto1/fileHelper.py">
    11911086      <provider selected="true" editor-type-id="text-editor">
    1192         <state relative-caret-position="0">
    1193           <caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
     1087        <state relative-caret-position="306">
     1088          <caret line="26" column="26" selection-start-line="26" selection-start-column="26" selection-end-line="26" selection-end-column="26" />
    11941089          <folding>
    11951090            <element signature="e#19#33#0" expanded="true" />
     
    11981093      </provider>
    11991094    </entry>
    1200     <entry file="file://$PROJECT_DIR$/trunk/proto1/final.py">
    1201       <provider selected="true" editor-type-id="text-editor">
    1202         <state relative-caret-position="558">
    1203           <caret line="31" column="85" selection-start-line="31" selection-start-column="85" selection-end-line="31" selection-end-column="85" />
    1204           <folding />
    1205         </state>
    1206       </provider>
    1207     </entry>
    12081095    <entry file="file://$PROJECT_DIR$/trunk/proto1/config.py">
    12091096      <provider selected="true" editor-type-id="text-editor">
    1210         <state relative-caret-position="36">
    1211           <caret line="2" column="29" selection-start-line="2" selection-start-column="29" selection-end-line="2" selection-end-column="29" />
     1097        <state relative-caret-position="4572">
     1098          <caret line="319" column="19" selection-start-line="319" selection-start-column="19" selection-end-line="319" selection-end-column="19" />
    12121099          <folding>
    12131100            <element signature="e#19#28#0" expanded="true" />
     1101            <element signature="e#7072#7282#1" expanded="true" />
    12141102          </folding>
    12151103        </state>
    12161104      </provider>
    12171105    </entry>
    1218     <entry file="file://$PROJECT_DIR$/trunk/proto1/checksystem.py">
    1219       <provider selected="true" editor-type-id="text-editor">
    1220         <state relative-caret-position="18">
    1221           <caret line="1" column="0" selection-start-line="1" selection-start-column="0" selection-end-line="1" selection-end-column="0" />
     1106    <entry file="file://$PROJECT_DIR$/trunk/proto1/cardHelper.py">
     1107      <provider selected="true" editor-type-id="text-editor">
     1108        <state relative-caret-position="2970">
     1109          <caret line="203" column="0" selection-start-line="203" selection-start-column="0" selection-end-line="203" selection-end-column="0" />
     1110          <folding>
     1111            <element signature="e#1320#2817#0" expanded="false" />
     1112            <element signature="e#6457#8304#0" expanded="false" />
     1113          </folding>
     1114        </state>
     1115      </provider>
     1116    </entry>
     1117    <entry file="file://$PROJECT_DIR$/trunk/proto1/eidlibPython_Wrapper/examples/simple_example.py">
     1118      <provider selected="true" editor-type-id="text-editor">
     1119        <state relative-caret-position="1098">
     1120          <caret line="61" column="0" selection-start-line="61" selection-start-column="0" selection-end-line="61" selection-end-column="0" />
    12221121          <folding />
    12231122        </state>
    12241123      </provider>
    12251124    </entry>
    1226     <entry file="file://$PROJECT_DIR$/trunk/proto1/cardHelper.py">
    1227       <provider selected="true" editor-type-id="text-editor">
    1228         <state relative-caret-position="72">
    1229           <caret line="4" column="12" selection-start-line="4" selection-start-column="12" selection-end-line="4" selection-end-column="12" />
    1230           <folding />
    1231         </state>
    1232       </provider>
    1233     </entry>
    1234     <entry file="file://$PROJECT_DIR$/trunk/proto1/mainwin.py">
    1235       <provider selected="true" editor-type-id="text-editor">
    1236         <state relative-caret-position="72">
    1237           <caret line="4" column="0" selection-start-line="4" selection-start-column="0" selection-end-line="4" selection-end-column="0" />
    1238           <folding />
    1239         </state>
    1240       </provider>
    1241     </entry>
    1242     <entry file="file://$PROJECT_DIR$/trunk/proto1/carduser.py">
    1243       <provider selected="true" editor-type-id="text-editor">
    1244         <state relative-caret-position="234">
    1245           <caret line="13" column="31" selection-start-line="13" selection-start-column="31" selection-end-line="13" selection-end-column="31" />
    1246           <folding>
    1247             <element signature="e#0#42#0" expanded="true" />
    1248           </folding>
    1249         </state>
    1250       </provider>
    1251     </entry>
    12521125  </component>
    12531126</project>
  • internals/2016/linuxloginsmartcardwizard/trunk/proto1/mainwin.py

    r16536 r16542  
    55import fileHelper
    66import config
     7import subprocess
    78
    89
     
    1415        self.setContextMenuPolicy(QtCore.Qt.DefaultContextMenu)
    1516        self.setEnabled(True)
    16         self.resize(540, 480)
     17        self.resize(550, 480)
    1718        self.setAutoFillBackground(True)
    1819        self.centerOnScreen()
     
    2122       
    2223        self.title = QtWidgets.QLabel(self.centralwidget)
    23         self.title.setGeometry(QtCore.QRect(0, 0, 540, 60))
     24        self.title.setGeometry(QtCore.QRect(0, 0, 550, 70))
    2425        self.title.setStyleSheet("border-bottom: 1px solid grey;\n"
    2526                                 "background-color: white;\n"
    26                                  "font: bold 15pt \"Ubuntu\";\n")
     27                                 "font: bold 18pt \"Ubuntu\";\n")
    2728        self.title.setAlignment(QtCore.Qt.AlignCenter)
    2829       
    2930        self.layoutWidget = QtWidgets.QWidget(self.centralwidget)
    30         self.layoutWidget.setGeometry(QtCore.QRect(60, 100, 330, 300))
     31        self.layoutWidget.setGeometry(QtCore.QRect(75, 120, 400, 300))
    3132        self.verticalLayout = QtWidgets.QVBoxLayout(self.layoutWidget)
    32         self.verticalLayout.setSpacing(45)
     33        self.verticalLayout.setSpacing(40)
    3334        self.verticalLayout.setContentsMargins(0, 0, 0, 0)
    34         self.addUserButton = QtWidgets.QCommandLinkButton(self.layoutWidget)
     35        self.addUserButton = QtWidgets.QPushButton(self.layoutWidget)
    3536        self.addUserButton.setStyleSheet("border: 1px solid #8f8f91;\n"
    36                                          "font: bold 12pt \"Ubuntu\";\ncolor: black;\n"
    37                                          "border-radius: 5px;\n"
     37                                         "font: bold 16pt \"Ubuntu\";\ncolor: black;\n"
     38                                         "border-radius: 10px;\n"
    3839                                         "background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,\n"
    39                                          "stop: 0 #0FA620, stop: 1 #23CC36);\nmin-width: 80px;")
     40                                         "stop: 0 #0FA620, stop: 1 #23CC36);\nmin-width: 80px;"
     41                                         "min-height: 70px;")
    4042        self.verticalLayout.addWidget(self.addUserButton)
    4143       
    42         self.listConfigButton = QtWidgets.QCommandLinkButton(self.layoutWidget)
     44        self.listConfigButton = QtWidgets.QPushButton(self.layoutWidget)
    4345        self.listConfigButton.setStyleSheet("border: 1px solid #8f8f91;\n"
    44                                             "font: bold 12pt \"Ubuntu\";\ncolor: black;\n"
    45                                             "border-radius: 5px;\n"
     46                                            "font: bold 16pt \"Ubuntu\";\ncolor: black;\n"
     47                                            "border-radius: 10px;\n"
    4648                                            "background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,\n"
    4749                                            "stop: 0 #7991db, stop: 1 #95A6DB);\n"
    48                                             "min-width: 80px;")
     50                                            "min-width: 80px;min-height: 70px;")
    4951        self.verticalLayout.addWidget(self.listConfigButton)
    5052       
    51         self.resetConfigButton = QtWidgets.QCommandLinkButton(self.layoutWidget)
     53        self.resetConfigButton = QtWidgets.QPushButton(self.layoutWidget)
    5254        self.resetConfigButton.setStyleSheet("border: 1px solid #8f8f91;\n"
    53                                              "font: bold 12pt \"Ubuntu\";\ncolor: black;\n"
    54                                              "border-radius: 5px;\n"
     55                                             "font: bold 16pt \"Ubuntu\";\ncolor: black;\n"
     56                                             "border-radius: 10px;\n"
    5557                                             "background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,\n"
    5658                                             "stop: 0 #db181b, stop: 1 #e32d30);\n"
    57                                              "min-width: 80px;")
     59                                             "min-width: 80px;min-height: 70px;")
    5860       
    5961        self.verticalLayout.addWidget(self.resetConfigButton)
     
    7274        self.resetConfigButton.clicked.connect(self.resetLoginConfigs)
    7375
     76        self.wizardProcess = None
     77
    7478    def centerOnScreen(self):
    7579        resolution = QtWidgets.QDesktopWidget().screenGeometry()
     
    7882
    7983    def openAddUserWizard(self):
    80         self.showMinimized()
    81         fileHelper.executeCommand("python3 w4pages.py")
    82         print("Closed add user wizard")
    83         self.setWindowState(QtCore.Qt.WindowActive)
     84        if self.isWizardProcessActive():
     85            self.messageBox.critical(self, "Title", "\nYou already have an add user login wizard open.\n\n"
     86                                                    "Please finish or close the current wizard before\n"
     87                                                    "trying to open a new add user login wizard.\n")
     88        else:
     89            self.wizardProcess = subprocess.Popen(["python3", "w4pages.py"])
    8490
    8591    def listCurrentConfigs(self):
    86         message = "\n" + "BI Number".ljust(20) + "Full Name".ljust(20) + " " + "Username".ljust(20) + "\n"
    87         for combo in config.listLocalCombos():
    88             message += combo[0].ljust(20) + combo[1].ljust(20) + combo[2].ljust(20) + "\n"
     92        print("List current login configurations")
     93        message = "\nBI Number".ljust(25) + " Full Name".ljust(25) + "  Username".ljust(25) + "\n"
     94        localCombos = config.listLocalCombos()
     95        if localCombos is None:
     96            message = "\nYou have no local configurations yet.\n\n"\
     97                      "Please use the 'Add User Login' option to add \n"\
     98                      "a new local configuration to your computer.\n"
     99        else:
     100            for combo in config.listLocalCombos():
     101                message += combo[0].ljust(25) + combo[1].ljust(25) + combo[2].ljust(25) + "\n"
    89102        self.messageBox.information(self, "Title", message)
    90         print("List current login configurations")
    91103
    92104    def resetLoginConfigs(self):
    93         if self.checkResetPopup():
    94             fileHelper.executeCommand("python3 main.py reset")
    95             self.messageBox.information(self, "Finished reset",
    96                                         "Finished reset of smartcard login configurations.")
     105        if self.isWizardProcessActive():
     106            self.messageBox.critical(self, "Title", "\nPlease close the current add user login wizard\n"
     107                                                    "before trying to reset the login configurations.\n\n")
     108        else:
     109            if self.checkResetPopup():
     110                fileHelper.executeCommand("python3 main.py reset")
     111                self.messageBox.information(self, "Finished reset",
     112                                                  "Finished reset of smartcard login configurations.")
    97113
    98114    def checkResetPopup(self):
     
    107123        return reply == QMessageBox.Yes
    108124
     125    def isWizardProcessActive(self):
     126        if self.wizardProcess is None:
     127            return False
     128        elif self.wizardProcess.poll() is not None:
     129            return False
     130        else:
     131            return True
     132
     133    def closeEvent(self, QCloseEvent):
     134        if self.isWizardProcessActive():
     135            reply = self.messageBox.warning(self, "Title",  "\nYou have an add user login wizard open.\n\n"
     136                                                            "Closing this window will also close the wizard \n"
     137                                                            "and you will lose all progress on the wizard.\n\n"
     138                                                            "Do you still want to close this window?\n",
     139                                                            QMessageBox.No, QMessageBox.Yes)
     140            if reply == QMessageBox.Yes:
     141                self.wizardProcess.kill()
     142                QCloseEvent.accept()
     143            else:
     144                QCloseEvent.ignore()
     145        else:
     146            # No wizard running so we can close the window
     147            QCloseEvent.accept()
    109148
    110149if __name__ == "__main__":
    111150    import sys
     151    import os
     152    if os.geteuid() != 0:
     153        print("Script not started as root. Running sudo...")
     154        args = ["sudo", sys.executable] + sys.argv + [os.environ]
     155        os.execlpe("gksudo", *args)
     156    print("Running with euid ", os.geteuid())
    112157    app = QtWidgets.QApplication(sys.argv)
    113158    ui = MyMainWindow()
Note: See TracChangeset for help on using the changeset viewer.