OSDN Git Service

Add Data Observing System by "kit-observe" Attribute [0.2.0] feature/kaf-observe
authormtsgi <oq@live.jp>
Sat, 10 Aug 2019 09:47:45 +0000 (18:47 +0900)
committermtsgi <oq@live.jp>
Sat, 10 Aug 2019 09:47:45 +0000 (18:47 +0900)
21 files changed:
app/alert/alert.js
app/alert/default.html
app/alert/define.json
app/bandr/b.html
app/bandr/default.html
app/bandr/define.json
app/bandr/r.html
app/bandr/r2.html
app/bandr/r3.html
app/dialog/default.html
app/dialog/define.json
app/dialog/dialog.js
app/settings/about.html
app/settings/advanced.html
app/settings/default.html
app/settings/define.json
app/settings/system.html
app/settings/theme.html
app/settings/user.html
app/settings/wallpaper.html
system.js

index 77fca66..c085688 100644 (file)
@@ -1,13 +1,3 @@
 ((_pid) => {
-    S.dom(_pid).css("min-width", "400px").css("text-align", "center");
-    if( System.args[pid] ){
-        S.dom(_pid, ".alert-title").text(System.args[pid][0]);
-        S.dom(_pid, ".alert-content").html(System.args[pid][1]);
-        if( System.args[pid][2] ){
-            App.changeWindowTitle( _pid, System.args[pid][2] );
-        }
-        else{
-            App.changeWindowTitle( _pid, System.args[pid][0] );
-        }
-    }
+    App.changeWindowTitle( _pid, System.args[pid][2] || System.args[pid][0] );
 })(pid);
\ No newline at end of file
index dcf485a..093a651 100644 (file)
@@ -1,7 +1,7 @@
-<div style="max-width: 500px">
-    <h3 class='alert-title'></h3>
+<div class="kit-text-c">
+    <h3 kit-text='ARGS[0]'></h3>
     <div class="m-m" style="max-height: 300px" data-simplebar>
-        <div class='alert-content'></div>
+        <div kit-html='ARGS[1]'></div>
     </div>
-    <kit-button class="kaf" kit-close>閉じる</kit-button>
+    <kit-button kit-close>閉じる</kit-button>
 </div>
\ No newline at end of file
index 76085bc..75dd2bd 100644 (file)
@@ -2,13 +2,17 @@
     "id": "alert",
     "name": "アラート",
     "icon": "icon.png",
-    "version": "1.0.0",
+    "version": "2.0.0",
     "author": "kit",
 
     "support": {
         "darkmode": true
     },
 
+    "size": {
+        "width": "400px"
+    },
+
     "view": "default.html",
     "script": "alert.js",
     "css": "none"
index c5f8469..0e2b056 100644 (file)
@@ -1,12 +1,12 @@
 <div>
-    <a kit-ref="default.html" class="kit-button-alt small" kaf>戻る</a>
+    <a kit-ref="default.html" class="kit-button-alt small">戻る</a>
     <span class="kit-inblock kit-font-l kit-font-bold p-s">バックアップ</span>
 </div>
 <div class="kit-small">
      クリックするとバックアップファイルの生成が開始されます。<br>
      ボタンを押下すると、現在のプロファイルのバックアップファイルを作成し、保存するシステムのダイアログが表示されます。
 </div>
-<div class="kit-button large m kit-block kit-text-c" kit-e="b" kaf>バックアップを開始</div>
+<div class="kit-button large m kit-block kit-text-c" kit-e="b">バックアップを開始</div>
 <div class="kit-small">
      自動的にダイアログが表示されない場合はボタンの押下後、<a class="kit-hyperlink" id="bandr-download" download>こちら</a>をクリックしてください。
 </div>
index 4a14778..23451ff 100644 (file)
@@ -1,5 +1,5 @@
 バックアップと復元ウィザードでは、kit環境のバックアップ・復元を簡単な手順で行います。
 <div class="bandr-container">
-    <div class="btn" kit-ref="b.html" kaf><i class="bandr-b"></i>バックアップ</div>
-    <div class="btn" kit-ref="r.html" kaf><i class="bandr-r"></i>リストア</div>
+    <div class="btn" kit-ref="b.html"><i class="bandr-b"></i>バックアップ</div>
+    <div class="btn" kit-ref="r.html"><i class="bandr-r"></i>リストア</div>
 </div>
\ No newline at end of file
index 734c545..f9248ca 100644 (file)
@@ -2,7 +2,7 @@
     "id": "bandr",
     "name": "バックアップと復元",
     "icon": "icon.png",
-    "version": "1.0.0",
+    "version": "1.1.0",
     "author": "kit",
 
     "size": {
index adfa6d5..197f276 100644 (file)
@@ -1,5 +1,5 @@
 <div>
-    <a kit-ref="default.html" class="kit-button-alt small" kaf>戻る</a>
+    <a kit-ref="default.html" class="kit-button-alt small">戻る</a>
     <span class="kit-inblock kit-font-l kit-font-bold p-s">復元</span>
 </div>
 
@@ -8,4 +8,4 @@
      復元を実行すると、現在のkitプロファイルおよびユーザー領域のデータは失われます。異なるプロファイルを復元しようとしている場合は必ず現在のプロファイルのバックアップファイルを保存してから復元を行ってください。
 </div>
 
-<div class="kit-button large m crimson kit-text-c kit-block" kit-ref="r2.html" kaf>復元を開始</div>
+<div class="kit-button large m crimson kit-text-c kit-block" kit-ref="r2.html">復元を開始</div>
index 704b2a7..12c0777 100644 (file)
@@ -1,5 +1,5 @@
 <div>
-    <a kit-ref="r.html" class="kit-button-alt small" kaf>戻る</a>
+    <a kit-ref="r.html" class="kit-button-alt small">戻る</a>
     <span class="kit-inblock kit-font-l kit-font-bold p-s">復元の確認</span>
 </div>
 
@@ -8,4 +8,4 @@
      また、kitのバックアップファイル以外を選択しないでください。復元を実行する前にファイルが間違っていないか確認してください。
 </div>
 
-<input type="file" id="bandr-file" class="textbox kit-block p m" kit-e="r change" accept=".kitbackup" kaf>
\ No newline at end of file
+<input type="file" id="bandr-file" class="textbox kit-block p m" kit-e="r change" accept=".kitbackup">
\ No newline at end of file
index f7120a1..2337482 100644 (file)
@@ -3,5 +3,5 @@
 </div>
 
 <div class="kit-small">
-    多くの項目は<a class="kit-hyperlink" kit-e="reboot" kaf>再起動</a>することで反映されます。
+    多くの項目は<a class="kit-hyperlink" kit-e="reboot">再起動</a>することで反映されます。
 </div>
\ No newline at end of file
index 17c1092..ac62f0a 100644 (file)
@@ -1,6 +1,6 @@
-<div style="max-width: 500px">
-    <h3 class='dialog-title'></h3>
-    <div class='dialog-content'></div>
-    <a class="btn p-s kit-inblock dialog-cancel">キャンセル</a>
-    <a class="kit-button dialog-ok">OK</a>
-</div>
\ No newline at end of file
+<div class="kit-text-c">
+    <h3 kit-text='ARGS.title'></h3>
+    <div kit-html='ARGS.content'></div>
+    <a class="btn p-s kit-inblock" kit-close>キャンセル</a>
+    <a class="kit-button" kit-e="ok">OK</a>
+</div>
index 7c61cc7..f407096 100644 (file)
@@ -2,14 +2,18 @@
     "id": "dialog",
     "name": "ダイアログ",
     "icon": "icon.png",
-    "version": "1.0.3",
+    "version": "2.0.0",
     "author": "kit",
 
     "support": {
         "darkmode": true
     },
 
+    "size": {
+        "width": "400px"
+    },
+
     "view": "default.html",
     "script": "dialog.js",
-    "css": ""
+    "css": "none"
 }
\ No newline at end of file
index 056604d..9c54343 100644 (file)
@@ -1,16 +1,6 @@
-app_dialog(pid);
-
-function app_dialog(_pid) {
-    S.dom(_pid).css("min-width", "400px").css("text-align", "center");
-    if( System.args[pid] ){
-        $("#winc" + _pid + " .dialog-title").text(System.args[_pid].title);
-        $("#winc" + _pid + " .dialog-content").html(System.args[_pid].content);
-    }
-    $("#winc" + _pid + " .dialog-cancel").on("click", function(){
-        System.close(_pid);
-    });
-    $("#winc" + _pid + " .dialog-ok").on("click", function(){
+((_pid) => {
+    App.event( _pid, "ok", ()=>{
         System.args[_pid].func();
         System.close(_pid);
-    });
-}
\ No newline at end of file
+    } );
+})(pid);
index 3c49017..4818531 100644 (file)
@@ -3,15 +3,15 @@
     $( "#settings-license-2" ).load( "./fa/LICENSE.txt" );
     $( "#settings-license-3" ).load( "./system/jquery_LICENSE.txt" );
 </script>
-<kit-btn class="kit-inline kaf" kit-ref="default.html"><span class='fa fa-arrow-circle-left'></span>戻る</kit-btn>
+<kit-btn class="kit-inline" kit-ref="default.html"><span class='fa fa-arrow-circle-left'></span>戻る</kit-btn>
 <h3><span class='fa fa-info-circle'></span> kitについて</h3>
 <div style='font-size:22px'>
     <img src="system/ico/logo.png" style="max-width: 100%;">
-    <h4>バージョン<span kit-text="System.version" kaf></span></h4>
+    <h4>バージョン<span kit-text="System.version"></span></h4>
 </div>
-KWS <span kit-text="KWS.version" kaf></span> / kaf(v1)<br>
+KWS <span kit-text="KWS.version"></span> / kaf(v1)<br>
 <img src="documents/kaf-logo.png" alt="kit Apps framework" style="height: 50px"><br>
-<a class="kit-hyperlink kaf" kit-e="update">kitのアップデートを確認する</a>
+<a class="kit-hyperlink" kit-e="update">kitのアップデートを確認する</a>
 <div class="little">取得には時間がかかる場合があります</div>
 Based on <span class="fab fa-html5"></span>HTML5
 <span class="fab fa-css3-alt"></span>CSS3
index b378da9..7b02361 100644 (file)
@@ -19,7 +19,7 @@
         }
     }
 </script>
-<kit-btn class="kaf" kit-ref="default.html"><span class='fa fa-arrow-circle-left'></span>戻る</kit-btn>
+<kit-btn kit-ref="default.html"><span class='fa fa-arrow-circle-left'></span>戻る</kit-btn>
 <h3><span class='fa fa-sliders-h'></span> 高度な設定</h3>
 <h4>システム環境変数</h4>
 <div class="little">不必要に変更を加えるとシステムが破損する可能性があります。</div>
index 0063b0d..0e2be93 100644 (file)
@@ -1,30 +1,30 @@
-<div class='btn kaf' kit-ref="about.html">
+<div class='btn' kit-ref="about.html">
     <i class="fa fa-chevron-right"></i>kitについて
     <div class='kit-sub'>システム情報・ライセンス</div>
 </div>
 
 <h4><span class='fa fa-wrench'></span>システム設定</h4>
 
-<div class='btn kaf' kit-ref="user.html">
+<div class='btn' kit-ref="user.html">
     <i class="fa fa-chevron-right"></i>ユーザー
     <div class='kit-sub'>ユーザー情報とセキュリティ</div>
 </div>
 
-<div class='btn kaf' kit-ref="system.html">
+<div class='btn' kit-ref="system.html">
     <i class="fa fa-chevron-right"></i>システム
     <div class='kit-sub'>アプリ管理・スタートアップ・時刻</div>
 </div>
 
 <h4><span class='fa fa-desktop'></span>デスクトップ</h4>
 
-<div class='btn kaf' kit-ref="wallpaper.html">
+<div class='btn' kit-ref="wallpaper.html">
     <i class="fa fa-chevron-right"></i>壁紙
     <div class='kit-sub'>デスクトップ壁紙の設定</div>
 </div>
 
-<div class='btn kaf' kit-ref="theme.html">
+<div class='btn' kit-ref="theme.html">
     <i class="fa fa-chevron-right"></i>テーマ
     <div class='kit-sub'>テーマ設定・フォント設定</div>
 </div>
 
-<kit-hl class="kaf" kit-ref="advanced.html">高度な設定</kit-hl>
\ No newline at end of file
+<kit-hl kit-ref="advanced.html">高度な設定</kit-hl>
\ No newline at end of file
index 18625df..9f51290 100644 (file)
@@ -2,7 +2,7 @@
     "id": "settings",
     "name": "設定",
     "icon": "icon.png",
-    "version": "4.0.1",
+    "version": "4.0.2",
     "author": "kit",
 
     "support": {
index 0d89bea..c72b59f 100644 (file)
@@ -13,7 +13,7 @@
         }
     });
 </script>
-<kit-btn class="kaf" kit-ref="default.html"><span class='fa fa-arrow-circle-left'></span>戻る</kit-btn>
+<kit-btn kit-ref="default.html"><span class='fa fa-arrow-circle-left'></span>戻る</kit-btn>
 <h3>
     <span class='fa fa-cog'></span> システム設定
 </h3>
index 067b22e..6e98062 100644 (file)
@@ -25,7 +25,7 @@
         settings_theme( $("#settings-theme-path").val() );
     })
 </script>
-<kit-btn class="kaf" kit-ref="default.html"><span class='fa fa-arrow-circle-left'></span>戻る</kit-btn>
+<kit-btn kit-ref="default.html"><span class='fa fa-arrow-circle-left'></span>戻る</kit-btn>
 <h3><span class='fa fa-palette'></span> テーマ設定</h3>
 
 <h4>テーマを選択</h4>
index e916bf3..41b6ea6 100644 (file)
@@ -25,7 +25,7 @@
         }
     });
 </script>
-<kit-btn class="kaf" kit-ref="default.html"><span class='fa fa-arrow-circle-left'></span>戻る</kit-btn>
+<kit-btn kit-ref="default.html"><span class='fa fa-arrow-circle-left'></span>戻る</kit-btn>
 <h3><span class='fa fa-user-cog'></span> ユーザー設定</h3>
 <h4>ユーザー情報</h4>
 <div class='btn settings-open-userpage'><span class="fa fa-user"></span><div id="settings-user-username">[username]</div>ユーザーページを開く</div>
index 5a8662e..188fea3 100644 (file)
@@ -1,4 +1,4 @@
-<kit-btn class="kaf" kit-ref="default.html"><span class='fa fa-arrow-circle-left'></span>戻る</kit-btn>
+<kit-btn kit-ref="default.html"><span class='fa fa-arrow-circle-left'></span>戻る</kit-btn>
 <h3><span class='fa fa-image'></span> 壁紙の設定</h3>
 <h4>標準の壁紙 <span class='little'>./system/wallpaper内</span></h4>
 <div class='simplebox wallpaper-list'>
index de205a5..6533724 100644 (file)
--- a/system.js
+++ b/system.js
@@ -161,10 +161,10 @@ function kit() {
     $( "#kit-power-lock" ).click( function() {
         System.lock();
     } );
-    $( "#lock-password" ).keypress( function( e ) {
+    $( "#lock-password" ).on( 'keypress', function( e ) {
         if( e.which == 13 ) $( "#lock-unl" ).click();
     } );
-    $( "#lock-unl" ).click( function() {
+    $( "#lock-unl" ).on( 'click', function() {
         if( !localStorage.getItem( "kit-password" ) || $( "#lock-password" ).val() == localStorage.getItem( "kit-password" ) ) {
             $( "header, footer" ).show();
             $( "section, header, footer, #kit-wallpaper" ).css( "filter", "none" );
@@ -1141,11 +1141,14 @@ const App = new function() {
 
     this.d = new Object();
 
-    this.data = ( _pid, _name ) => {
-        let _r;
-        if( _name ) _r = App.d[_pid][_name];
-        else _r = App.d[_pid];
-        return _r;
+    this.data = ( _pid, _name, _value ) => {
+        if( _value !== undefined ) {
+            S.dom(_pid, `[kit-bind=${_name}]`).val( _value );
+            S.dom(_pid, `[kit-observe=${_name}]`).text( _value );
+            return App.d[_pid][_name] = _value;
+        }
+        else if( _name ) return App.d[_pid][_name];
+        else return App.d[_pid];
     }
 
     this.e = new Object();
@@ -1168,8 +1171,12 @@ const App = new function() {
             "[kit-close]",
             "[kit-text]",
             "[kit-html]",
-            "[kit-bind]"
+            "[kit-bind]",
+            "[kit-observe]"
         ]
+        const PID = _pid;
+        const DATA = App.data(_pid);
+        const ARGS = System.args[_pid];
         for( let i of S.dom(_pid, ...attrs) ){
             if( i.hasAttribute("kit-ref") ){
                 $(i).on("click", () => App.load(_pid, i.getAttribute("kit-ref")) );
@@ -1201,7 +1208,13 @@ const App = new function() {
             }
             if( i.hasAttribute("kit-bind") ){
                 if( App.d[_pid] == undefined ) App.d[_pid] = new Object();
-                $(i).on("change", () => App.d[_pid][i.getAttribute("kit-bind")] = $(i).val() );
+                $(i).on('keydown keyup keypress change', () => {
+                    App.d[_pid][i.getAttribute("kit-bind")] = i.value;
+                    S.dom(_pid, `[kit-observe=${i.getAttribute("kit-bind")}]`).text( i.value );
+                } );
+            }
+            if( i.hasAttribute("kit-observe") ){
+                $(i).text( App.d[_pid][i.getAttribute("kit-observe")] );
             }
         }
     }
@@ -1219,4 +1232,4 @@ const App = new function() {
     }
 }
 
-var process = {}, processID = 0, pid, currentDesktop = 1, currentCTX = "", prevWindowIndex, S;
\ No newline at end of file
+var process = {}, processID = 0, pid, currentDesktop = 1, currentCTX = "", prevWindowIndex, S;