commit
62b66166f4
@ -0,0 +1,46 @@ |
||||
build/ |
||||
dist/ |
||||
*.spec |
||||
|
||||
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm |
||||
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 |
||||
|
||||
# User-specific stuff: |
||||
.idea/**/workspace.xml |
||||
.idea/**/tasks.xml |
||||
|
||||
# Sensitive or high-churn files: |
||||
.idea/**/dataSources/ |
||||
.idea/**/dataSources.ids |
||||
.idea/**/dataSources.xml |
||||
.idea/**/dataSources.local.xml |
||||
.idea/**/sqlDataSources.xml |
||||
.idea/**/dynamic.xml |
||||
.idea/**/uiDesigner.xml |
||||
|
||||
# Gradle: |
||||
.idea/**/gradle.xml |
||||
.idea/**/libraries |
||||
|
||||
# Mongo Explorer plugin: |
||||
.idea/**/mongoSettings.xml |
||||
|
||||
## File-based project format: |
||||
*.iws |
||||
|
||||
## Plugin-specific files: |
||||
|
||||
# IntelliJ |
||||
/out/ |
||||
|
||||
# mpeltonen/sbt-idea plugin |
||||
.idea_modules/ |
||||
|
||||
# JIRA plugin |
||||
atlassian-ide-plugin.xml |
||||
|
||||
# Crashlytics plugin (for Android Studio and IntelliJ) |
||||
com_crashlytics_export_strings.xml |
||||
crashlytics.properties |
||||
crashlytics-build.properties |
||||
fabric.properties |
||||
@ -0,0 +1 @@ |
||||
ProjectLifer |
||||
@ -0,0 +1,461 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<project version="4"> |
||||
<component name="DBNavigator.Project.DataEditorManager"> |
||||
<record-view-column-sorting-type value="BY_INDEX" /> |
||||
<value-preview-text-wrapping value="true" /> |
||||
<value-preview-pinned value="false" /> |
||||
</component> |
||||
<component name="DBNavigator.Project.DataExportManager"> |
||||
<export-instructions> |
||||
<create-header value="true" /> |
||||
<quote-values-containing-separator value="true" /> |
||||
<quote-all-values value="false" /> |
||||
<value-separator value="" /> |
||||
<file-name value="" /> |
||||
<file-location value="" /> |
||||
<scope value="GLOBAL" /> |
||||
<destination value="FILE" /> |
||||
<format value="EXCEL" /> |
||||
<charset value="windows-1252" /> |
||||
</export-instructions> |
||||
</component> |
||||
<component name="DBNavigator.Project.DatabaseBrowserManager"> |
||||
<autoscroll-to-editor value="false" /> |
||||
<autoscroll-from-editor value="true" /> |
||||
<show-object-properties value="true" /> |
||||
<loaded-nodes /> |
||||
</component> |
||||
<component name="DBNavigator.Project.EditorStateManager"> |
||||
<last-used-providers /> |
||||
</component> |
||||
<component name="DBNavigator.Project.MethodExecutionManager"> |
||||
<method-browser /> |
||||
<execution-history> |
||||
<group-entries value="true" /> |
||||
<execution-inputs /> |
||||
</execution-history> |
||||
<argument-values-cache /> |
||||
</component> |
||||
<component name="DBNavigator.Project.ObjectDependencyManager"> |
||||
<last-used-dependency-type value="INCOMING" /> |
||||
</component> |
||||
<component name="DBNavigator.Project.ObjectQuickFilterManager"> |
||||
<last-used-operator value="EQUAL" /> |
||||
<filters /> |
||||
</component> |
||||
<component name="DBNavigator.Project.ScriptExecutionManager" clear-outputs="true"> |
||||
<recently-used-interfaces /> |
||||
</component> |
||||
<component name="DBNavigator.Project.Settings"> |
||||
<connections /> |
||||
<browser-settings> |
||||
<general> |
||||
<display-mode value="TABBED" /> |
||||
<navigation-history-size value="100" /> |
||||
<show-object-details value="false" /> |
||||
</general> |
||||
<filters> |
||||
<object-type-filter> |
||||
<object-type name="SCHEMA" enabled="true" /> |
||||
<object-type name="USER" enabled="true" /> |
||||
<object-type name="ROLE" enabled="true" /> |
||||
<object-type name="PRIVILEGE" enabled="true" /> |
||||
<object-type name="CHARSET" enabled="true" /> |
||||
<object-type name="TABLE" enabled="true" /> |
||||
<object-type name="VIEW" enabled="true" /> |
||||
<object-type name="MATERIALIZED_VIEW" enabled="true" /> |
||||
<object-type name="NESTED_TABLE" enabled="true" /> |
||||
<object-type name="COLUMN" enabled="true" /> |
||||
<object-type name="INDEX" enabled="true" /> |
||||
<object-type name="CONSTRAINT" enabled="true" /> |
||||
<object-type name="DATASET_TRIGGER" enabled="true" /> |
||||
<object-type name="DATABASE_TRIGGER" enabled="true" /> |
||||
<object-type name="SYNONYM" enabled="true" /> |
||||
<object-type name="SEQUENCE" enabled="true" /> |
||||
<object-type name="PROCEDURE" enabled="true" /> |
||||
<object-type name="FUNCTION" enabled="true" /> |
||||
<object-type name="PACKAGE" enabled="true" /> |
||||
<object-type name="TYPE" enabled="true" /> |
||||
<object-type name="TYPE_ATTRIBUTE" enabled="true" /> |
||||
<object-type name="ARGUMENT" enabled="true" /> |
||||
<object-type name="DIMENSION" enabled="true" /> |
||||
<object-type name="CLUSTER" enabled="true" /> |
||||
<object-type name="DBLINK" enabled="true" /> |
||||
</object-type-filter> |
||||
</filters> |
||||
<sorting> |
||||
<object-type name="COLUMN" sorting-type="NAME" /> |
||||
<object-type name="FUNCTION" sorting-type="NAME" /> |
||||
<object-type name="PROCEDURE" sorting-type="NAME" /> |
||||
<object-type name="ARGUMENT" sorting-type="POSITION" /> |
||||
</sorting> |
||||
<default-editors> |
||||
<object-type name="VIEW" editor-type="SELECTION" /> |
||||
<object-type name="PACKAGE" editor-type="SELECTION" /> |
||||
<object-type name="TYPE" editor-type="SELECTION" /> |
||||
</default-editors> |
||||
</browser-settings> |
||||
<navigation-settings> |
||||
<lookup-filters> |
||||
<lookup-objects> |
||||
<object-type name="SCHEMA" enabled="true" /> |
||||
<object-type name="USER" enabled="false" /> |
||||
<object-type name="ROLE" enabled="false" /> |
||||
<object-type name="PRIVILEGE" enabled="false" /> |
||||
<object-type name="CHARSET" enabled="false" /> |
||||
<object-type name="TABLE" enabled="true" /> |
||||
<object-type name="VIEW" enabled="true" /> |
||||
<object-type name="MATERIALIZED VIEW" enabled="true" /> |
||||
<object-type name="NESTED TABLE" enabled="false" /> |
||||
<object-type name="COLUMN" enabled="false" /> |
||||
<object-type name="INDEX" enabled="true" /> |
||||
<object-type name="CONSTRAINT" enabled="true" /> |
||||
<object-type name="DATASET TRIGGER" enabled="true" /> |
||||
<object-type name="DATABASE TRIGGER" enabled="true" /> |
||||
<object-type name="SYNONYM" enabled="false" /> |
||||
<object-type name="SEQUENCE" enabled="true" /> |
||||
<object-type name="PROCEDURE" enabled="true" /> |
||||
<object-type name="FUNCTION" enabled="true" /> |
||||
<object-type name="PACKAGE" enabled="true" /> |
||||
<object-type name="TYPE" enabled="true" /> |
||||
<object-type name="TYPE ATTRIBUTE" enabled="false" /> |
||||
<object-type name="ARGUMENT" enabled="false" /> |
||||
<object-type name="DIMENSION" enabled="false" /> |
||||
<object-type name="CLUSTER" enabled="false" /> |
||||
<object-type name="DBLINK" enabled="true" /> |
||||
</lookup-objects> |
||||
<force-database-load value="false" /> |
||||
<prompt-connection-selection value="true" /> |
||||
<prompt-schema-selection value="true" /> |
||||
</lookup-filters> |
||||
</navigation-settings> |
||||
<dataset-grid-settings> |
||||
<general> |
||||
<enable-zooming value="true" /> |
||||
</general> |
||||
<sorting> |
||||
<nulls-first value="true" /> |
||||
<max-sorting-columns value="4" /> |
||||
</sorting> |
||||
<tracking-columns> |
||||
<columnNames value="" /> |
||||
<visible value="true" /> |
||||
<editable value="false" /> |
||||
</tracking-columns> |
||||
</dataset-grid-settings> |
||||
<dataset-editor-settings> |
||||
<text-editor-popup> |
||||
<active value="false" /> |
||||
<active-if-empty value="false" /> |
||||
<data-length-threshold value="100" /> |
||||
<popup-delay value="1000" /> |
||||
</text-editor-popup> |
||||
<values-list-popup> |
||||
<show-popup-button value="true" /> |
||||
<element-count-threshold value="1000" /> |
||||
<data-length-threshold value="250" /> |
||||
</values-list-popup> |
||||
<general> |
||||
<fetch-block-size value="100" /> |
||||
<fetch-timeout value="30" /> |
||||
<trim-whitespaces value="true" /> |
||||
<convert-empty-strings-to-null value="true" /> |
||||
<select-content-on-cell-edit value="true" /> |
||||
<large-value-preview-active value="true" /> |
||||
</general> |
||||
<filters> |
||||
<prompt-filter-dialog value="true" /> |
||||
<default-filter-type value="BASIC" /> |
||||
</filters> |
||||
<qualified-text-editor text-length-threshold="300"> |
||||
<content-types> |
||||
<content-type name="Text" enabled="true" /> |
||||
<content-type name="Properties" enabled="true" /> |
||||
<content-type name="XML" enabled="true" /> |
||||
<content-type name="DTD" enabled="true" /> |
||||
<content-type name="HTML" enabled="true" /> |
||||
<content-type name="XHTML" enabled="true" /> |
||||
<content-type name="CSS" enabled="true" /> |
||||
<content-type name="Java" enabled="true" /> |
||||
<content-type name="SQL" enabled="true" /> |
||||
<content-type name="PL/SQL" enabled="true" /> |
||||
<content-type name="JPA QL" enabled="true" /> |
||||
<content-type name="JavaScript" enabled="true" /> |
||||
<content-type name="JSP" enabled="true" /> |
||||
<content-type name="JSPx" enabled="true" /> |
||||
<content-type name="Groovy" enabled="true" /> |
||||
<content-type name="FTL" enabled="true" /> |
||||
<content-type name="TML" enabled="true" /> |
||||
<content-type name="GSP" enabled="true" /> |
||||
<content-type name="ASP" enabled="true" /> |
||||
<content-type name="VTL" enabled="true" /> |
||||
<content-type name="AIDL" enabled="true" /> |
||||
<content-type name="YAML" enabled="true" /> |
||||
<content-type name="Flex" enabled="true" /> |
||||
<content-type name="Manifest" enabled="true" /> |
||||
</content-types> |
||||
</qualified-text-editor> |
||||
<record-navigation> |
||||
<navigation-target value="VIEWER" /> |
||||
</record-navigation> |
||||
</dataset-editor-settings> |
||||
<code-editor-settings> |
||||
<general> |
||||
<show-object-navigation-gutter value="false" /> |
||||
<show-spec-declaration-navigation-gutter value="true" /> |
||||
</general> |
||||
<confirmations> |
||||
<save-changes value="false" /> |
||||
<revert-changes value="true" /> |
||||
</confirmations> |
||||
</code-editor-settings> |
||||
<code-completion-settings> |
||||
<filters> |
||||
<basic-filter> |
||||
<filter-element type="RESERVED_WORD" id="keyword" selected="true" /> |
||||
<filter-element type="RESERVED_WORD" id="function" selected="true" /> |
||||
<filter-element type="RESERVED_WORD" id="parameter" selected="true" /> |
||||
<filter-element type="RESERVED_WORD" id="datatype" selected="true" /> |
||||
<filter-element type="RESERVED_WORD" id="exception" selected="true" /> |
||||
<filter-element type="OBJECT" id="schema" selected="true" /> |
||||
<filter-element type="OBJECT" id="role" selected="true" /> |
||||
<filter-element type="OBJECT" id="user" selected="true" /> |
||||
<filter-element type="OBJECT" id="privilege" selected="true" /> |
||||
<user-schema> |
||||
<filter-element type="OBJECT" id="table" selected="true" /> |
||||
<filter-element type="OBJECT" id="view" selected="true" /> |
||||
<filter-element type="OBJECT" id="materialized view" selected="true" /> |
||||
<filter-element type="OBJECT" id="index" selected="true" /> |
||||
<filter-element type="OBJECT" id="constraint" selected="true" /> |
||||
<filter-element type="OBJECT" id="trigger" selected="true" /> |
||||
<filter-element type="OBJECT" id="synonym" selected="false" /> |
||||
<filter-element type="OBJECT" id="sequence" selected="true" /> |
||||
<filter-element type="OBJECT" id="procedure" selected="true" /> |
||||
<filter-element type="OBJECT" id="function" selected="true" /> |
||||
<filter-element type="OBJECT" id="package" selected="true" /> |
||||
<filter-element type="OBJECT" id="type" selected="true" /> |
||||
<filter-element type="OBJECT" id="dimension" selected="true" /> |
||||
<filter-element type="OBJECT" id="cluster" selected="true" /> |
||||
<filter-element type="OBJECT" id="dblink" selected="true" /> |
||||
</user-schema> |
||||
<public-schema> |
||||
<filter-element type="OBJECT" id="table" selected="false" /> |
||||
<filter-element type="OBJECT" id="view" selected="false" /> |
||||
<filter-element type="OBJECT" id="materialized view" selected="false" /> |
||||
<filter-element type="OBJECT" id="index" selected="false" /> |
||||
<filter-element type="OBJECT" id="constraint" selected="false" /> |
||||
<filter-element type="OBJECT" id="trigger" selected="false" /> |
||||
<filter-element type="OBJECT" id="synonym" selected="false" /> |
||||
<filter-element type="OBJECT" id="sequence" selected="false" /> |
||||
<filter-element type="OBJECT" id="procedure" selected="false" /> |
||||
<filter-element type="OBJECT" id="function" selected="false" /> |
||||
<filter-element type="OBJECT" id="package" selected="false" /> |
||||
<filter-element type="OBJECT" id="type" selected="false" /> |
||||
<filter-element type="OBJECT" id="dimension" selected="false" /> |
||||
<filter-element type="OBJECT" id="cluster" selected="false" /> |
||||
<filter-element type="OBJECT" id="dblink" selected="false" /> |
||||
</public-schema> |
||||
<any-schema> |
||||
<filter-element type="OBJECT" id="table" selected="true" /> |
||||
<filter-element type="OBJECT" id="view" selected="true" /> |
||||
<filter-element type="OBJECT" id="materialized view" selected="true" /> |
||||
<filter-element type="OBJECT" id="index" selected="true" /> |
||||
<filter-element type="OBJECT" id="constraint" selected="true" /> |
||||
<filter-element type="OBJECT" id="trigger" selected="true" /> |
||||
<filter-element type="OBJECT" id="synonym" selected="true" /> |
||||
<filter-element type="OBJECT" id="sequence" selected="true" /> |
||||
<filter-element type="OBJECT" id="procedure" selected="true" /> |
||||
<filter-element type="OBJECT" id="function" selected="true" /> |
||||
<filter-element type="OBJECT" id="package" selected="true" /> |
||||
<filter-element type="OBJECT" id="type" selected="true" /> |
||||
<filter-element type="OBJECT" id="dimension" selected="true" /> |
||||
<filter-element type="OBJECT" id="cluster" selected="true" /> |
||||
<filter-element type="OBJECT" id="dblink" selected="true" /> |
||||
</any-schema> |
||||
</basic-filter> |
||||
<extended-filter> |
||||
<filter-element type="RESERVED_WORD" id="keyword" selected="true" /> |
||||
<filter-element type="RESERVED_WORD" id="function" selected="true" /> |
||||
<filter-element type="RESERVED_WORD" id="parameter" selected="true" /> |
||||
<filter-element type="RESERVED_WORD" id="datatype" selected="true" /> |
||||
<filter-element type="RESERVED_WORD" id="exception" selected="true" /> |
||||
<filter-element type="OBJECT" id="schema" selected="true" /> |
||||
<filter-element type="OBJECT" id="user" selected="true" /> |
||||
<filter-element type="OBJECT" id="role" selected="true" /> |
||||
<filter-element type="OBJECT" id="privilege" selected="true" /> |
||||
<user-schema> |
||||
<filter-element type="OBJECT" id="table" selected="true" /> |
||||
<filter-element type="OBJECT" id="view" selected="true" /> |
||||
<filter-element type="OBJECT" id="materialized view" selected="true" /> |
||||
<filter-element type="OBJECT" id="index" selected="true" /> |
||||
<filter-element type="OBJECT" id="constraint" selected="true" /> |
||||
<filter-element type="OBJECT" id="trigger" selected="true" /> |
||||
<filter-element type="OBJECT" id="synonym" selected="true" /> |
||||
<filter-element type="OBJECT" id="sequence" selected="true" /> |
||||
<filter-element type="OBJECT" id="procedure" selected="true" /> |
||||
<filter-element type="OBJECT" id="function" selected="true" /> |
||||
<filter-element type="OBJECT" id="package" selected="true" /> |
||||
<filter-element type="OBJECT" id="type" selected="true" /> |
||||
<filter-element type="OBJECT" id="dimension" selected="true" /> |
||||
<filter-element type="OBJECT" id="cluster" selected="true" /> |
||||
<filter-element type="OBJECT" id="dblink" selected="true" /> |
||||
</user-schema> |
||||
<public-schema> |
||||
<filter-element type="OBJECT" id="table" selected="true" /> |
||||
<filter-element type="OBJECT" id="view" selected="true" /> |
||||
<filter-element type="OBJECT" id="materialized view" selected="true" /> |
||||
<filter-element type="OBJECT" id="index" selected="true" /> |
||||
<filter-element type="OBJECT" id="constraint" selected="true" /> |
||||
<filter-element type="OBJECT" id="trigger" selected="true" /> |
||||
<filter-element type="OBJECT" id="synonym" selected="true" /> |
||||
<filter-element type="OBJECT" id="sequence" selected="true" /> |
||||
<filter-element type="OBJECT" id="procedure" selected="true" /> |
||||
<filter-element type="OBJECT" id="function" selected="true" /> |
||||
<filter-element type="OBJECT" id="package" selected="true" /> |
||||
<filter-element type="OBJECT" id="type" selected="true" /> |
||||
<filter-element type="OBJECT" id="dimension" selected="true" /> |
||||
<filter-element type="OBJECT" id="cluster" selected="true" /> |
||||
<filter-element type="OBJECT" id="dblink" selected="true" /> |
||||
</public-schema> |
||||
<any-schema> |
||||
<filter-element type="OBJECT" id="table" selected="true" /> |
||||
<filter-element type="OBJECT" id="view" selected="true" /> |
||||
<filter-element type="OBJECT" id="materialized view" selected="true" /> |
||||
<filter-element type="OBJECT" id="index" selected="true" /> |
||||
<filter-element type="OBJECT" id="constraint" selected="true" /> |
||||
<filter-element type="OBJECT" id="trigger" selected="true" /> |
||||
<filter-element type="OBJECT" id="synonym" selected="true" /> |
||||
<filter-element type="OBJECT" id="sequence" selected="true" /> |
||||
<filter-element type="OBJECT" id="procedure" selected="true" /> |
||||
<filter-element type="OBJECT" id="function" selected="true" /> |
||||
<filter-element type="OBJECT" id="package" selected="true" /> |
||||
<filter-element type="OBJECT" id="type" selected="true" /> |
||||
<filter-element type="OBJECT" id="dimension" selected="true" /> |
||||
<filter-element type="OBJECT" id="cluster" selected="true" /> |
||||
<filter-element type="OBJECT" id="dblink" selected="true" /> |
||||
</any-schema> |
||||
</extended-filter> |
||||
</filters> |
||||
<sorting enabled="true"> |
||||
<sorting-element type="RESERVED_WORD" id="keyword" /> |
||||
<sorting-element type="RESERVED_WORD" id="datatype" /> |
||||
<sorting-element type="OBJECT" id="column" /> |
||||
<sorting-element type="OBJECT" id="table" /> |
||||
<sorting-element type="OBJECT" id="view" /> |
||||
<sorting-element type="OBJECT" id="materialized view" /> |
||||
<sorting-element type="OBJECT" id="index" /> |
||||
<sorting-element type="OBJECT" id="constraint" /> |
||||
<sorting-element type="OBJECT" id="trigger" /> |
||||
<sorting-element type="OBJECT" id="synonym" /> |
||||
<sorting-element type="OBJECT" id="sequence" /> |
||||
<sorting-element type="OBJECT" id="procedure" /> |
||||
<sorting-element type="OBJECT" id="function" /> |
||||
<sorting-element type="OBJECT" id="package" /> |
||||
<sorting-element type="OBJECT" id="type" /> |
||||
<sorting-element type="OBJECT" id="dimension" /> |
||||
<sorting-element type="OBJECT" id="cluster" /> |
||||
<sorting-element type="OBJECT" id="dblink" /> |
||||
<sorting-element type="OBJECT" id="schema" /> |
||||
<sorting-element type="OBJECT" id="role" /> |
||||
<sorting-element type="OBJECT" id="user" /> |
||||
<sorting-element type="RESERVED_WORD" id="function" /> |
||||
<sorting-element type="RESERVED_WORD" id="parameter" /> |
||||
</sorting> |
||||
<format> |
||||
<enforce-code-style-case value="true" /> |
||||
</format> |
||||
</code-completion-settings> |
||||
<execution-engine-settings> |
||||
<statement-execution> |
||||
<fetch-block-size value="100" /> |
||||
<execution-timeout value="20" /> |
||||
<debug-execution-timeout value="600" /> |
||||
<focus-result value="false" /> |
||||
<prompt-execution value="false" /> |
||||
</statement-execution> |
||||
<script-execution> |
||||
<command-line-interfaces /> |
||||
<execution-timeout value="300" /> |
||||
</script-execution> |
||||
<method-execution> |
||||
<execution-timeout value="30" /> |
||||
<debug-execution-timeout value="600" /> |
||||
<parameter-history-size value="10" /> |
||||
</method-execution> |
||||
</execution-engine-settings> |
||||
<operation-settings> |
||||
<transactions> |
||||
<uncommitted-changes> |
||||
<on-project-close value="ASK" /> |
||||
<on-disconnect value="ASK" /> |
||||
<on-autocommit-toggle value="ASK" /> |
||||
</uncommitted-changes> |
||||
<multiple-uncommitted-changes> |
||||
<on-commit value="ASK" /> |
||||
<on-rollback value="ASK" /> |
||||
</multiple-uncommitted-changes> |
||||
</transactions> |
||||
<session-browser> |
||||
<disconnect-session value="ASK" /> |
||||
<kill-session value="ASK" /> |
||||
<reload-on-filter-change value="false" /> |
||||
</session-browser> |
||||
<compiler> |
||||
<compile-type value="KEEP" /> |
||||
<compile-dependencies value="ASK" /> |
||||
<always-show-controls value="false" /> |
||||
</compiler> |
||||
<debugger> |
||||
<debugger-type value="ASK" /> |
||||
<use-generic-runners value="true" /> |
||||
</debugger> |
||||
</operation-settings> |
||||
<ddl-file-settings> |
||||
<extensions> |
||||
<mapping file-type-id="VIEW" extensions="vw" /> |
||||
<mapping file-type-id="TRIGGER" extensions="trg" /> |
||||
<mapping file-type-id="PROCEDURE" extensions="prc" /> |
||||
<mapping file-type-id="FUNCTION" extensions="fnc" /> |
||||
<mapping file-type-id="PACKAGE" extensions="pkg" /> |
||||
<mapping file-type-id="PACKAGE_SPEC" extensions="pks" /> |
||||
<mapping file-type-id="PACKAGE_BODY" extensions="pkb" /> |
||||
<mapping file-type-id="TYPE" extensions="tpe" /> |
||||
<mapping file-type-id="TYPE_SPEC" extensions="tps" /> |
||||
<mapping file-type-id="TYPE_BODY" extensions="tpb" /> |
||||
</extensions> |
||||
<general> |
||||
<lookup-ddl-files value="true" /> |
||||
<create-ddl-files value="false" /> |
||||
<synchronize-ddl-files value="true" /> |
||||
<use-qualified-names value="false" /> |
||||
<make-scripts-rerunnable value="true" /> |
||||
</general> |
||||
</ddl-file-settings> |
||||
<general-settings> |
||||
<regional-settings> |
||||
<date-format value="MEDIUM" /> |
||||
<number-format value="UNGROUPED" /> |
||||
<locale value="SYSTEM_DEFAULT" /> |
||||
<use-custom-formats value="false" /> |
||||
</regional-settings> |
||||
<environment> |
||||
<environment-types> |
||||
<environment-type id="development" name="Development" description="Development environment" color="-2430209/-12296320" readonly-code="false" readonly-data="false" /> |
||||
<environment-type id="integration" name="Integration" description="Integration environment" color="-2621494/-12163514" readonly-code="true" readonly-data="false" /> |
||||
<environment-type id="production" name="Production" description="Productive environment" color="-11574/-10271420" readonly-code="true" readonly-data="true" /> |
||||
<environment-type id="other" name="Other" description="" color="-1576/-10724543" readonly-code="false" readonly-data="false" /> |
||||
</environment-types> |
||||
<visibility-settings> |
||||
<connection-tabs value="true" /> |
||||
<dialog-headers value="true" /> |
||||
<object-editor-tabs value="true" /> |
||||
<script-editor-tabs value="false" /> |
||||
<execution-result-tabs value="true" /> |
||||
</visibility-settings> |
||||
</environment> |
||||
</general-settings> |
||||
</component> |
||||
<component name="DBNavigator.Project.StatementExecutionManager"> |
||||
<execution-variables /> |
||||
</component> |
||||
</project> |
||||
@ -0,0 +1,68 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<project version="4"> |
||||
<component name="MarkdownProjectSettings"> |
||||
<PreviewSettings splitEditorLayout="SPLIT" splitEditorPreview="PREVIEW" useGrayscaleRendering="false" zoomFactor="2.0" maxImageWidth="0" showGitHubPageIfSynced="false" allowBrowsingInPreview="false" synchronizePreviewPosition="false" highlightPreviewType="LINE" highlightFadeOut="5" highlightOnTyping="false" synchronizeSourcePosition="false"> |
||||
<PanelProvider> |
||||
<provider providerId="com.vladsch.idea.multimarkdown.editor.swing.html.panel" providerName="Default - Swing" /> |
||||
</PanelProvider> |
||||
</PreviewSettings> |
||||
<ParserSettings> |
||||
<PegdownExtensions> |
||||
<option name="ABBREVIATIONS" value="false" /> |
||||
<option name="ANCHORLINKS" value="true" /> |
||||
<option name="ATXHEADERSPACE" value="true" /> |
||||
<option name="AUTOLINKS" value="true" /> |
||||
<option name="DEFINITIONS" value="false" /> |
||||
<option name="FENCED_CODE_BLOCKS" value="true" /> |
||||
<option name="FOOTNOTES" value="false" /> |
||||
<option name="HARDWRAPS" value="false" /> |
||||
<option name="INSERTED" value="false" /> |
||||
<option name="QUOTES" value="false" /> |
||||
<option name="RELAXEDHRULES" value="true" /> |
||||
<option name="SMARTS" value="false" /> |
||||
<option name="STRIKETHROUGH" value="true" /> |
||||
<option name="SUBSCRIPT" value="false" /> |
||||
<option name="SUPERSCRIPT" value="false" /> |
||||
<option name="SUPPRESS_HTML_BLOCKS" value="false" /> |
||||
<option name="SUPPRESS_INLINE_HTML" value="false" /> |
||||
<option name="TABLES" value="true" /> |
||||
<option name="TASKLISTITEMS" value="true" /> |
||||
<option name="TOC" value="false" /> |
||||
<option name="WIKILINKS" value="true" /> |
||||
</PegdownExtensions> |
||||
<ParserOptions> |
||||
<option name="COMMONMARK_LISTS" value="false" /> |
||||
<option name="DUMMY" value="false" /> |
||||
<option name="EMOJI_SHORTCUTS" value="true" /> |
||||
<option name="FLEXMARK_FRONT_MATTER" value="false" /> |
||||
<option name="GFM_TABLE_RENDERING" value="true" /> |
||||
<option name="GITBOOK_URL_ENCODING" value="false" /> |
||||
<option name="GITHUB_EMOJI_URL" value="false" /> |
||||
<option name="GITHUB_LISTS" value="true" /> |
||||
<option name="GITHUB_WIKI_LINKS" value="true" /> |
||||
<option name="JEKYLL_FRONT_MATTER" value="false" /> |
||||
<option name="SIM_TOC_BLANK_LINE_SPACER" value="true" /> |
||||
</ParserOptions> |
||||
</ParserSettings> |
||||
<HtmlSettings headerTopEnabled="false" headerBottomEnabled="false" bodyTopEnabled="false" bodyBottomEnabled="false" embedUrlContent="false" addPageHeader="true"> |
||||
<GeneratorProvider> |
||||
<provider providerId="com.vladsch.idea.multimarkdown.editor.swing.html.generator" providerName="Default Swing HTML Generator" /> |
||||
</GeneratorProvider> |
||||
<headerTop /> |
||||
<headerBottom /> |
||||
<bodyTop /> |
||||
<bodyBottom /> |
||||
</HtmlSettings> |
||||
<CssSettings previewScheme="UI_SCHEME" cssUri="" isCssUriEnabled="false" isCssTextEnabled="false" isDynamicPageWidth="true"> |
||||
<StylesheetProvider> |
||||
<provider providerId="com.vladsch.idea.multimarkdown.editor.swing.html.css" providerName="Default Swing Stylesheet" /> |
||||
</StylesheetProvider> |
||||
<ScriptProviders /> |
||||
<cssText /> |
||||
</CssSettings> |
||||
<HtmlExportSettings updateOnSave="false" parentDir="$ProjectFileDir$" targetDir="$ProjectFileDir$" cssDir="" scriptDir="" plainHtml="false" imageDir="" copyLinkedImages="false" imageUniquifyType="0" targetExt="" useTargetExt="false" noCssNoScripts="false" linkToExportedHtml="true" exportOnSettingsChange="true" regenerateOnProjectOpen="false" /> |
||||
<LinkMapSettings> |
||||
<textMaps /> |
||||
</LinkMapSettings> |
||||
</component> |
||||
</project> |
||||
@ -0,0 +1,3 @@ |
||||
<component name="MarkdownNavigator.ProfileManager"> |
||||
<settings default="" /> |
||||
</component> |
||||
@ -0,0 +1,6 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<project version="4"> |
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_3" default="false" project-jdk-name="Python 3.5.2 virtualenv at C:\Virtualenv\Projectlifer" project-jdk-type="Python SDK"> |
||||
<output url="file://$PROJECT_DIR$/out" /> |
||||
</component> |
||||
</project> |
||||
@ -0,0 +1,8 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<project version="4"> |
||||
<component name="ProjectModuleManager"> |
||||
<modules> |
||||
<module fileurl="file://$PROJECT_DIR$/ProjectLifer.iml" filepath="$PROJECT_DIR$/ProjectLifer.iml" /> |
||||
</modules> |
||||
</component> |
||||
</project> |
||||
@ -0,0 +1,6 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<project version="4"> |
||||
<component name="VcsDirectoryMappings"> |
||||
<mapping directory="" vcs="Git" /> |
||||
</component> |
||||
</project> |
||||
@ -0,0 +1,9 @@ |
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<module type="PYTHON_MODULE" version="4"> |
||||
<component name="NewModuleRootManager" inherit-compiler-output="true"> |
||||
<exclude-output /> |
||||
<content url="file://$MODULE_DIR$" /> |
||||
<orderEntry type="inheritedJdk" /> |
||||
<orderEntry type="sourceFolder" forTests="false" /> |
||||
</component> |
||||
</module> |
||||
@ -0,0 +1,132 @@ |
||||
from tkinter import * |
||||
from tkinter import filedialog, ttk |
||||
from tkinter.ttk import * |
||||
import os |
||||
from PIL import Image |
||||
|
||||
|
||||
class ProjectLiferFrame(Frame): |
||||
files = list() |
||||
|
||||
def __init__(self, root): |
||||
|
||||
ttk.Frame.__init__(self, root, padding=(5, 5, 5, 5)) |
||||
|
||||
# define buttons |
||||
self.butcombine = Button(self, text='Kombiniere Bilder', command=self.combine_pictures) |
||||
self.butdirchooser = Button(self, text='Verzeichnis wählen', command=self.askdirectory) |
||||
self.butselall = Button(self, text='Alle wählen', command=self.select_all) |
||||
self.butselnone = Button(self, text='Keine wählen', command=self.select_none) |
||||
|
||||
# define ProgressBar |
||||
self.pbar = Progressbar(self) |
||||
|
||||
self.listbox = Listbox(self, selectmode=MULTIPLE) |
||||
self.scrollbar = Scrollbar(self.listbox, orient=VERTICAL) |
||||
|
||||
self.listbox.config(yscrollcommand=self.scrollbar.set) |
||||
self.scrollbar.config(command=self.listbox.yview) |
||||
|
||||
self.butcombine.grid(row=0, rowspan=2, columnspan=2, sticky=W + E + N + S, padx=5, pady=5) |
||||
self.butdirchooser.grid(row=2, columnspan=2, padx=5, pady=5) |
||||
self.butselall.grid(row=3, column=0) |
||||
self.butselnone.grid(row=3, column=1) |
||||
self.pbar.grid(row=4, columnspan=3, sticky=W + E + N + S, pady=5, padx=5) |
||||
self.listbox.grid(column=2, row=0, rowspan=4, columnspan=2, sticky=W + E + N + S, pady=5, padx=5) |
||||
self.listbox.columnconfigure(0, weight=1) |
||||
self.listbox.rowconfigure(0, weight=1) |
||||
self.scrollbar.grid(column=1, sticky=N + S) |
||||
|
||||
# defining options for opening a directory |
||||
self.dir_opt = options = {} |
||||
options['initialdir'] = 'C:\\' |
||||
options['mustexist'] = False |
||||
options['parent'] = root |
||||
options['title'] = 'This is a title' |
||||
self.columnconfigure(0, weight=1) |
||||
self.columnconfigure(1, weight=1) |
||||
self.columnconfigure(2, weight=10) |
||||
self.rowconfigure(0, weight=5) |
||||
self.rowconfigure(1, weight=1) |
||||
self.rowconfigure(2, weight=1) |
||||
self.rowconfigure(3, weight=1) |
||||
|
||||
def combine_pictures(self): |
||||
|
||||
"""Combines two pictures into one.""" |
||||
items = self.listbox.curselection() |
||||
items = [self.files[int(item)] for item in items] |
||||
|
||||
self.pbar["value"] = 0 |
||||
self.pbar["maximum"] = int(round(len(items) / 2)) |
||||
root.update_idletasks() |
||||
items = iter(items) |
||||
|
||||
for i1, path in items: |
||||
img1 = self.fixpicture(Image.open(path)) |
||||
i2, path = next(items, (i1, path)) |
||||
img2 = self.fixpicture(Image.open(path)) |
||||
# resize smaller picture |
||||
x1, y1 = img1.size |
||||
x2, y2 = img2.size |
||||
if x1 < x2: |
||||
img1 = img1.resize((x2, y2)) |
||||
x, y = x2, y2 |
||||
else: |
||||
img2 = img2.resize((x1, y1)) |
||||
x, y = x1, y1 |
||||
new_im = Image.new('RGB', (x + x, y)) |
||||
new_im.paste(img1, (0, 0)) |
||||
new_im.paste(img2, (x, 0)) |
||||
savepath = os.path.dirname(path) |
||||
imgname1 = os.path.splitext(os.path.basename(i1))[0] |
||||
imgname2 = os.path.splitext(os.path.basename(i2))[0] |
||||
new_im.save(self.folder + os.path.sep + '{}_and_{}.jpg'.format(imgname1, imgname2)) |
||||
|
||||
self.pbar["value"] += 1 |
||||
root.update_idletasks() |
||||
|
||||
return |
||||
|
||||
def fixpicture(self, picture): |
||||
x, y = picture.size |
||||
if x > y: |
||||
picture = picture.rotate(90, expand=True) |
||||
x, y = y, x |
||||
# fix ratio |
||||
if x / 3 * 4 > y: |
||||
x = int(y / 4 * 3) |
||||
elif x / 3 * 4 < y: |
||||
y = int(x / 3 * 4) |
||||
return picture.resize((x, y)) |
||||
|
||||
def askdirectory(self): |
||||
|
||||
"""Returns a selected directoryname.""" |
||||
self.listbox.delete(0, END) |
||||
self.folder = filedialog.askdirectory(**self.dir_opt) |
||||
for file in os.listdir(self.folder): |
||||
pathfile = os.path.join(self.folder, file) |
||||
if os.path.isfile(pathfile): |
||||
self.files.append((file, pathfile)) |
||||
|
||||
for key, value in self.files: |
||||
self.listbox.insert(END, key) |
||||
|
||||
return |
||||
|
||||
def select_all(self): |
||||
self.listbox.selection_set(0, END) |
||||
|
||||
def select_none(self): |
||||
self.listbox.selection_clear(0, END) |
||||
|
||||
|
||||
if __name__ == '__main__': |
||||
root = Tk() |
||||
root.columnconfigure(0, weight=1) |
||||
root.rowconfigure(0, weight=1) |
||||
root.minsize(700, 500) |
||||
root.title("ProjectLifer 1.0.0") |
||||
ProjectLiferFrame(root).grid(row=0, column=0, sticky=(N, S, E, W)) |
||||
root.mainloop() |
||||
Loading…
Reference in new issue