Changeset 717 in dev for trunk/ab5.0


Ignore:
Timestamp:
Aug 13, 2008, 10:33:58 PM (16 years ago)
Author:
dai
Message:

#188への対応。UserSettingディレクトリを廃止し、正規のユーザ空間ディレクトリを取り入れた。

Location:
trunk/ab5.0/abdev
Files:
12 edited

Legend:

Unmodified
Added
Removed
  • trunk/ab5.0/abdev/BasicCompiler_Common/NonVolatile.cpp

    r523 r717  
    105105
    106106    //開く
    107     buffer=ReadBuffer_NonErrMsg( Jenga::Common::Environment::GetAppDir() + "\\UserSetting\\compiler.ini" );
     107    buffer=ReadBuffer_NonErrMsg( Program::GetUserAppDir() + "\\compiler.ini" );
    108108    if(!buffer){
    109109        //レジストリを読み込む
     
    247247    char temporary[MAX_PATH];
    248248
    249     const std::string userSettingDirPath = Jenga::Common::Environment::GetAppDir() + "\\UserSetting";
    250 
    251     HANDLE hFind;
    252     WIN32_FIND_DATA wfd;
    253     hFind=FindFirstFile( userSettingDirPath.c_str() ,&wfd);
    254     if(hFind==INVALID_HANDLE_VALUE){
    255         //UserSettingディレクトリを作成
    256         if(!CreateDirectory( userSettingDirPath.c_str() ,NULL)){
    257             extern HWND hOwnerEditor;
    258             MessageBox(hOwnerEditor,"UserSettingディレクトリの作成に失敗","ActiveBasic",MB_OK|MB_ICONEXCLAMATION);
    259             return;
    260         }
    261     }
     249    // ユーザ情報保存用のディレクトリを作成
     250    Jenga::Common::Directory dir( Program::GetUserAppDir(), true );
     251
    262252
    263253    extern HANDLE hHeap;
     
    286276    //保存
    287277    WriteBuffer(
    288         userSettingDirPath + "\\compiler.ini",
     278        Program::GetUserAppDir() + "\\compiler.ini",
    289279        buffer,lstrlen(buffer));
    290280
  • trunk/ab5.0/abdev/BasicCompiler_Common/include/Program.h

    r636 r717  
    3030
    3131    bool AnalysisCommandLines();
     32
     33    // ユーザデータ格納用のディレクトリを取得
     34    static const std::string GetUserAppDir();
    3235
    3336    const std::string &GetSourceFilePath() const
  • trunk/ab5.0/abdev/BasicCompiler_Common/src/Program.cpp

    r697 r717  
    139139}
    140140
     141const std::string Program::GetUserAppDir()
     142{
     143    return Jenga::Common::Environment::GetUserAppDir() + "\\ActiveBasic\\abc";
     144}
     145
    141146int Program::GetExitCode() const
    142147{
  • trunk/ab5.0/abdev/abdev/Common.h

    r700 r717  
    620620
    621621//FileOperation.cpp
    622 void MakeUserSettingDir(void);
    623622char *ReadBuffer( const std::string &path );
    624623char *ReadBuffer_NonErrMsg( const std::string &path );
     
    843842    ~CHistory();
    844843
    845     void load(char *path);
    846     void save(char *path);
     844    void load( const std::string &path );
     845    void save( const std::string &path );
    847846
    848847    void add(char *path);
  • trunk/ab5.0/abdev/abdev/DialogBoxes.cpp

    r629 r717  
    11231123
    11241124        pobj_nv->bSaveWebFindStr=temp_bSaveWebFindStr;
    1125 
    1126         //Web検索
    1127         pobj_nv->pobj_DBDomain->copy_get(pobj_temp_DBDomain);
    11281125
    11291126        //SideWebウィンドウを再表示
  • trunk/ab5.0/abdev/abdev/ExtensionLink.cpp

    r625 r717  
    3535}
    3636
    37 void CExtLink::load(char *path){
     37void CExtLink::load( const std::string &path )
     38{
    3839    char *buffer;
    3940    buffer=ReadBuffer_NonErrMsg(path);
     
    8283    }
    8384}
    84 void CExtLink::save(char *path){
     85void CExtLink::save( const std::string &path )
     86{
    8587    int i;
    8688    char buffer[8192];
  • trunk/ab5.0/abdev/abdev/ExtensionLink.h

    r625 r717  
    2121    ~CExtLink();
    2222
    23     void load(char *path);
    24     void save(char *path);
     23    void load( const std::string &path );
     24    void save( const std::string &path );
    2525
    2626    BOOL add(BOOL bReg,char *lpszExtension,char *lpszNote,BOOL bWindowsSearch,COLORREF tab_color);
  • trunk/ab5.0/abdev/abdev/FileOperation.cpp

    r705 r717  
    22
    33#include "Common.h"
    4 
    5 void MakeUserSettingDir(void){
    6     char temporary[MAX_PATH];
    7     sprintf(temporary,"%sUserSetting",pj_editor_Dir);
    8 
    9     HANDLE hFind;
    10     WIN32_FIND_DATA wfd;
    11     hFind=FindFirstFile(temporary,&wfd);
    12     if(hFind==INVALID_HANDLE_VALUE){
    13         //UserSettingディレクトリを作成
    14         if(!CreateDirectory(temporary,NULL)){
    15             MessageBox(hOwner,"UserSettingディレクトリの作成に失敗",APPLICATION_NAME,MB_OK|MB_ICONEXCLAMATION);
    16             return;
    17         }
    18     }
    19     else{
    20         FindClose(hFind);
    21     }
    22 }
    234
    245char *ReadBuffer( const std::string &path ){
  • trunk/ab5.0/abdev/abdev/History.cpp

    r631 r717  
    1616}
    1717
    18 void CHistory::load(char *path){
     18void CHistory::load( const std::string &path )
     19{
    1920    char temporary[MAX_PATH];
    2021
     
    3839    }
    3940}
    40 void CHistory::save(char *path){
     41void CHistory::save( const std::string &path )
     42{
    4143    char *buffer;
    4244    buffer=(char *)HeapAlloc(hHeap,0,iNum*MAX_PATH+1);
  • trunk/ab5.0/abdev/abdev/NonVolatile.cpp

    r480 r717  
    235235    char temporary[MAX_PATH];
    236236
     237    std::string userAppDir = ActiveBasic::IDE::Program::GetUserAppDir();
     238
    237239
    238240    ///////////////////////////////////
    239241    // 関連付け用の拡張子オブジェクト
    240242    ///////////////////////////////////
    241     sprintf(temporary,"%sUserSetting\\extlink.ini",pj_editor_Dir);
    242     pobj_ExtLink->load(temporary);
    243 
    244 
    245     //////////////////////////////////////
    246     // Web検索用ドメイン管理オブジェクト
    247     //////////////////////////////////////
    248     pobj_DBDomain->load();
     243    pobj_ExtLink->load( userAppDir + "\\extlink.ini" );
    249244
    250245
     
    252247    // 「最近使ったファイル」オブジェクト
    253248    ///////////////////////////////////////
    254     sprintf(temporary,"%sUserSetting\\history.ini",pj_editor_Dir);
    255     pobj_History->load(temporary);
     249    pobj_History->load( userAppDir + "\\history.ini" );
    256250
    257251
     
    259253    // 「最近使ったプロジェクト」オブジェクト
    260254    ////////////////////////////////////////////
    261     sprintf(temporary,"%sUserSetting\\pj_history.ini",pj_editor_Dir);
    262     pobj_ProjectHistory->load(temporary);
     255    pobj_ProjectHistory->load( userAppDir + "\\pj_history.ini" );
    263256
    264257
    265258
    266259    //開く
    267     sprintf(temporary,"%sUserSetting\\editor.ini",pj_editor_Dir);
    268     buffer=ReadBuffer_NonErrMsg(temporary);
     260    buffer=ReadBuffer_NonErrMsg( userAppDir + "\\editor.ini" );
    269261    if(!buffer){
    270262
     
    454446    int i2,i3;
    455447
    456     sprintf(temporary,"%sUserSetting\\findstr.ini",pj_editor_Dir);
    457     buffer=ReadBuffer_NonErrMsg(temporary);
     448    buffer=ReadBuffer_NonErrMsg( userAppDir + "\\findstr.ini" );
    458449    if(buffer){
    459450        i2=0;
     
    476467    // 置換文字列
    477468    /////////////////
    478     sprintf(temporary,"%sUserSetting\\permustr.ini",pj_editor_Dir);
    479     buffer=ReadBuffer_NonErrMsg(temporary);
     469    buffer=ReadBuffer_NonErrMsg( userAppDir + "\\permustr.ini" );
    480470    if(buffer){
    481471        i2=0;
     
    498488    // Web検索文字列
    499489    /////////////////
    500     sprintf(temporary,"%sUserSetting\\webstr.ini",pj_editor_Dir);
    501     buffer=ReadBuffer_NonErrMsg(temporary);
     490    buffer=ReadBuffer_NonErrMsg( userAppDir + "webstr.ini" );
    502491    if(buffer){
    503492        i2=0;
     
    678667void CNonVolatile::save(){
    679668    int i;
    680     char temporary[MAX_PATH];
    681 
    682     sprintf(temporary,"%sUserSetting",pj_editor_Dir);
    683 
    684     HANDLE hFind;
    685     WIN32_FIND_DATA wfd;
    686     hFind=FindFirstFile(temporary,&wfd);
    687     if(hFind==INVALID_HANDLE_VALUE){
    688         //UserSettingディレクトリを作成
    689         if(!CreateDirectory(temporary,NULL)){
    690             MessageBox(hOwner,"UserSettingディレクトリの作成に失敗",APPLICATION_NAME,MB_OK|MB_ICONEXCLAMATION);
    691             return;
    692         }
    693     }
     669   
     670    // ユーザ情報保存用のディレクトリを作成
     671    Jenga::Common::Directory dir( ActiveBasic::IDE::Program::GetUserAppDir(), true );
     672
    694673
    695674    buffer=(char *)HeapAlloc(hHeap,0,65536);
     
    827806
    828807
     808    std::string userAppDir = ActiveBasic::IDE::Program::GetUserAppDir();
     809
    829810    //保存
    830     sprintf(temporary,"%sUserSetting\\editor.ini",pj_editor_Dir);
    831     WriteBuffer(temporary,buffer,lstrlen(buffer));
     811    WriteBuffer( userAppDir + "\\editor.ini", buffer,lstrlen(buffer));
    832812
    833813
     
    845825
    846826    //保存
    847     sprintf(temporary,"%sUserSetting\\findstr.ini",pj_editor_Dir);
    848     WriteBuffer(temporary,buffer,lstrlen(buffer));
     827    WriteBuffer( userAppDir + "\\findstr.ini", buffer,lstrlen(buffer));
    849828
    850829
     
    862841
    863842    //保存
    864     sprintf(temporary,"%sUserSetting\\permustr.ini",pj_editor_Dir);
    865     WriteBuffer(temporary,buffer,lstrlen(buffer));
     843    WriteBuffer( userAppDir + "\\permustr.ini", buffer,lstrlen(buffer));
    866844
    867845
     
    879857
    880858    //保存
    881     sprintf(temporary,"%sUserSetting\\webstr.ini",pj_editor_Dir);
    882     WriteBuffer(temporary,buffer,lstrlen(buffer));
     859    WriteBuffer( userAppDir + "\\webstr.ini", buffer,lstrlen(buffer));
    883860
    884861    HeapDefaultFree(buffer);
     
    889866    // 関連付け用の拡張子オブジェクト
    890867    ///////////////////////////////////
    891     sprintf(temporary,"%sUserSetting\\extlink.ini",pj_editor_Dir);
    892     pobj_ExtLink->save(temporary);
    893 
    894 
    895     //////////////////////////////////////
    896     // Web検索用ドメイン管理オブジェクト
    897     //////////////////////////////////////
    898     pobj_DBDomain->save();
     868    pobj_ExtLink->save( userAppDir + "\\extlink.ini" );
    899869
    900870
     
    902872    // 「最近使ったファイル」オブジェクト
    903873    ///////////////////////////////////////
    904     sprintf(temporary,"%sUserSetting\\history.ini",pj_editor_Dir);
    905     pobj_History->save(temporary);
     874    pobj_History->save( userAppDir + "\\history.ini" );
    906875
    907876   
     
    909878    // 「最近使ったファイル」オブジェクト
    910879    ///////////////////////////////////////
    911     sprintf(temporary,"%sUserSetting\\pj_history.ini",pj_editor_Dir);
    912     pobj_ProjectHistory->save(temporary);
    913 }
     880    pobj_ProjectHistory->save( userAppDir + "\\pj_history.ini" );
     881}
  • trunk/ab5.0/abdev/abdev/include/Program.h

    r681 r717  
    1616    static const WindowComponents::CodeEditor::Language *ablang;
    1717
     18    // ユーザデータ格納用のディレクトリを取得
     19    static const std::string GetUserAppDir();
     20
    1821    static void Main();
    1922
  • trunk/ab5.0/abdev/abdev/src/Program.cpp

    r681 r717  
    2727}
    2828
     29const std::string Program::GetUserAppDir()
     30{
     31    return Jenga::Common::Environment::GetUserAppDir() + "\\ActiveBasic\\ide";
     32}
     33
    2934void Program::Main()
    3035{
Note: See TracChangeset for help on using the changeset viewer.