Perkenalan

UI Modern menyediakan antarmuka pengguna untuk penginstal NSIS dengan wizard modern gaya, mirip dengan penyihir versi Windows terbaru. Hal ini didasarkan pada dasar antarmuka pengguna yang disediakan oleh kompiler NSIS itu sendiri dan memperluasnya lebih banyak fitur antarmuka dan halaman.

Semua halaman NSIS standar (seperti halaman untuk memilih komponen dan instalasi folder) didukung serta sejumlah halaman tambahan. Halaman selamat datang memungkinkan Anda memberikan pengenalan proses instalasi, sekaligus penyelesaiannya halaman menyediakan cara untuk membiarkan pengguna memutuskan langkah apa yang harus dilakukan setelahnya wizard pengaturan ditutup (misalnya, apakah aplikasi harus dijalankan langsung). Halaman akhir juga dapat digunakan untuk meminta diperlukannya restart sistem.

  Tangkapan layar

 

 UI modern 2.1

Versi baru ini mempermudah penyesuaian halaman, karena metode yang sama bisa digunakan untuk mengubah halaman NSIS standar serta halaman tambahan yang disediakan oleh UI Modern. Sekarang plugin NSIS lainnya juga dapat menambahkan halaman baru ke UI Modern. Anda akan segera melihat contohnya.

Halaman selamat datang dan selesai tidak lagi diimplementasikan menggunakan InstallOptions. Alih-alih, plugin nsDialogs baru digunakan. nsDialogs memungkinkan Anda membuat halaman khusus atau sesuaikan halaman yang ada langsung dari skrip.

Untuk meningkatkan skrip UI Modern 1.8, Anda harus:

  • Masukkan file header MUI2.nsh, bukan MUI.nsh.
  • Makro untuk InstallOptions telah dipindahkan ke file header terpisah yang tidak terkait ke UI Modern. Jika Anda masih menggunakan InstallOptions untuk halaman kustom, masukkan InstallOptions.nsh dan gunakan makro INSTALLOPTIONS_* alih-alih MUI_INSTALLOPTIONS_* makro. Makronya sendiri tetap sama.
  • Tulis ulang kode penyesuaian untuk halaman selamat datang dan akhir UI Modern 1.8 di mana file InstallOptions INI digunakan. perintah nsDialogs harus digunakan sebagai gantinya.
  • Gunakan metode NSIS standar untuk menghindari karakter khusus di semua teks. Misalnya, $\r$\n membuat baris baru.

Tajuk skrip

Pengaturan untuk UI Modern harus disisipkan di header file skrip. Penting untuk mengikuti urutan yang sama seperti item di bawah ini. Misalnya, pengaturan antarmuka harus ditentukan sebelum Anda menyisipkan halaman, karena halaman tergantung pada konfigurasi antarmuka. Mungkin bermanfaat untuk melihat contoh skrip juga melihat bagaimana hal ini dilakukan dalam file skrip sebenarnya.

Parameter diberikan dalam format ini: diperlukan (opsi1 | opsi2) [opsional]

1. File tajuk

Pertama-tama, tambahkan baris ini ke bagian atas skrip untuk menyertakan UI Modern:

!termasuk MUI2.nsh
 

2. Konfigurasi antarmuka

Kemudian, Anda mungkin ingin menggunakan pengaturan antarmuka untuk mengubah tampilan dan nuansa pemasang. Pengaturan ini berlaku untuk semua halaman.

Pengaturan antarmuka yang disediakan oleh kompiler NSIS itu sendiri (seperti LicenseText, Ikon, CheckBitmap, InstallColors) tidak boleh digunakan dalam skrip UI Modern. Modern UI menyediakan versi pengaturan ini yang setara atau diperluas.

Contoh:

!define MUI_COMPONENTSPAGE_SMALLDESC ;Tidak ada nilai
 !define MUI_UI "myUI.exe" ;Nilai
 !define MUI_INSTFILESPAGE_COLORS "FFFFFF 000000" ;Dua warna
 

  Pengaturan antarmuka

  Kepala halaman

MUI_ICON icon_file
Ikon untuk penginstal.
Bawaan: ${NSISDIR}\Contrib\Graphics\Icons\modern-install.ico

MUI_UNICON icon_file
Ikon untuk uninstaller.
Bawaan: ${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico

MUI_HEADERIMAGE
Menampilkan gambar di header halaman.

MUI_HEADERIMAGE_BITMAP bmp_file
Gambar bitmap untuk ditampilkan pada header halaman penginstal (ukuran yang disarankan: 150x57 piksel).
Bawaan: ${NSISDIR}\Contrib\Graphics\Header\nsis.bmp

MUI_HEADERIMAGE_BITMAP_STRETCH Mode

  • Kontrol Fit (Bawaan)
    Regangkan gambar agar sesuai dengan kontrol gambar.

  • Tanpa Peregangan Tanpa Pangkas Tanpa Penjajaran
    Jangan meregangkan gambar agar sesuai dengan ukuran kontrol gambar. Anda sebaiknya tidak menggunakan opsi ini jika Anda memiliki bitmap ukuran penuh yang sesuai dengan itu ukuran bidang akan berbeda jika pengguna memiliki pengaturan DPI khusus atau jika installernya menggunakan bahasa CJK.

  • Tanpa Peregangan Tanpa Pangkas
    Ini mirip dengan NoStretchNoCropNoAlign tetapi akan menyelaraskan gambar ke tepi kanan ketika menggunakan bahasa RTL atau jika MUI_HEADERIMAGE_RIGHT ditentukan.

  • AspekFitTinggi
    Skalakan gambar ke atas atau ke bawah hingga tingginya sama dengan kontrol gambar mempertahankan rasio aspek gambar.

MUI_HEADERIMAGE_BITMAP_RTL bmp_file
Gambar bitmap untuk ditampilkan pada header halaman penginstal saat menggunakan bahasa RTL (ukuran yang disarankan: 150x57 piksel).
Bawaan: Bitmap non-RTL

MUI_HEADERIMAGE_BITMAP_RTL_STRETCH Mode
Lihat MUI_HEADERIMAGE_BITMAP_STRETCH untuk daftar mode peregangan yang tersedia.

MUI_HEADERIMAGE_UNBITMAP bmp_file
Gambar bitmap untuk ditampilkan pada header halaman uninstaller (ukuran yang disarankan: 150x57 piksel).
Default: Bitmap header penginstal

MUI_HEADERIMAGE_UNBITMAP_STRETCH Mode
Lihat MUI_HEADERIMAGE_BITMAP_STRETCH untuk daftar mode peregangan yang tersedia.

MUI_HEADERIMAGE_UNBITMAP_RTL bmp_file
Gambar bitmap untuk ditampilkan pada header halaman uninstaller saat menggunakan bahasa RTL (ukuran yang disarankan: 150x57 piksel).
Default: Penginstal bitmap header RTL

MUI_HEADERIMAGE_UNBITMAP_RTL_STRETCH Mode
Lihat MUI_HEADERIMAGE_BITMAP_STRETCH untuk daftar mode peregangan yang tersedia.

MUI_HEADERIMAGE_RIGHT
Tampilkan gambar header di sisi kanan, bukan di sisi kiri (saat menggunakan bahasa RTL itu akan ditampilkan di sisi kiri, bukan di sisi kanan).

MUI_BGCOLOR (warna: RRGGBBR heksadesimal)
Warna latar belakang untuk header, halaman Selamat Datang, dan halaman Selesai.
Bawaan: FFFFFF

MUI_HEADER_TRANSPARENT_TEXT
Tetapkan latar belakang transparan untuk kontrol label header. Berguna untuk adat antarmuka pengguna yang mengatur gambar header lebih besar.

MUI_TEXTCOLOR (color: RRGGBBR hexadecimal)
Warna teks untuk header, halaman Selamat Datang, dan halaman Selesai.
Bawaan: 000000

  Sumber daya antarmuka

BACK_UI panggilan_file
File antarmuka dengan sumber daya dialog. Ubah ini jika Anda sudah membuatnya UI yang disesuaikan sendiri.
Bawaan: ${NSISDIR}\Contrib\UIs\modern.exe

MUI_UI_HEADERIMAGE ui_file
File antarmuka dengan sumber daya dialog IDD_INST yang berisi kontrol bitmap dan ruang untuk bitmap header.
Bawaan: ${NSISDIR}\Contrib\UIs\modern_headerbmp.exe

MUI_UI_HEADERIMAGE_RIGHT ui_file
File antarmuka dengan sumber daya dialog IDD_INST yang berisi kontrol bitmap dan ruang untuk bitmap header di sisi kanan.
Bawaan: ${NSISDIR}\Contrib\UIs\modern_headerbmpr.exe

MUI_UI_COMPONENTSPAGE_SMALLDESC ui_file
File antarmuka dengan sumber dialog khusus IDD_SELCOM dengan deskripsi kecil daerah.
Bawaan: ${NSISDIR}\Contrib\UIs\modern_smalldesc.exe

MUI_UI_COMPONENTSPAGE_NODESC ui_file
File antarmuka dengan sumber dialog khusus IDD_SELCOM tanpa deskripsi daerah.
Bawaan: ${NSISDIR}\Contrib\UIs\modern_nodesc.exe

  Halaman selamat datang/selesai pemasang

MUI_WELCOMEFINISHPAGE_BITMAP bmp_file
Bitmap untuk halaman Selamat Datang dan halaman Selesai (ukuran yang disarankan: 164x314 piksel).
Bawaan: ${NSISDIR}\Contrib\Graphics\Wizard\win.bmp

MUI_WELCOMEFINISHPAGE_BITMAP_STRETCH Mode
Lihat MUI_HEADERIMAGE_BITMAP_STRETCH untuk daftar mode peregangan yang tersedia.

  Halaman selamat datang/selesai uninstaller

MUI_UNWELCOMEFINISHPAGE_BITMAP bmp_file
Bitmap untuk halaman Selamat Datang dan halaman Selesai (ukuran yang disarankan: 164x314 piksel).
Bawaan: ${NSISDIR}\Contrib\Graphics\Wizard\win.bmp

MUI_UNWELCOMEFINISHPAGE_BITMAP_STRETCH Mode
Lihat MUI_HEADERIMAGE_BITMAP_STRETCH untuk daftar mode peregangan yang tersedia.

  Halaman lisensi

MUI_LICENSEPAGE_BGCOLOR (/windows | /abu-abu | (warna: RRGBBB heksadesimal))
Warna latar belakang untuk kotak teks lisensi. Gunakan /windows untuk teks Windows warna latar belakang (biasanya putih). Gunakan /grey untuk warna latar belakang jendela (biasanya abu-abu).
Bawaan: /windows

  Halaman komponen

MUI_COMPONENTSPAGE_CHECKBITMAP bitmap_file
Bitmap dengan gambar untuk pemeriksaan tampilan pohon komponen pilih.
Bawaan: ${NSISDIR}\Contrib\Graphics\Checks\modern.bmp

MUI_COMPONENTSPAGE_SMALLDESC
Area deskripsi kecil di bagian bawah halaman. Gunakan tata letak ini jika Anda punya banyak bagian dan tidak perlu deskripsi yang besar.

MUI_COMPONENTSPAGE_NODESC
Tidak ada area deskripsi.

  Halaman direktori

MUI_DIRECTORYPAGE_BGCOLOR (warna: RRGBBB heksadesimal)
Warna latar belakang kotak teks direktori.

  Halaman folder Menu Mulai

MUI_STARTMENUPAGE_BGCOLOR (warna: RRGBBB heksadesimal)
Warna latar belakang untuk daftar direktori startmenu dan kotak teks.

  Halaman instalasi

MUI_INSTFILESPAGE_COLORS (/windows | "(latar depan warna: RRGBBB heksadesimal) (warna latar belakang: RRGBBB heksadesimal)")
Warna layar detail. Gunakan /windows untuk warna default Windows.
Bawaan: /windows

MUI_INSTFILESPAGE_PROGRESSBAR ("" | berwarna | mulus)
Gaya bilah kemajuan. Berwarna membuatnya menggunakan MUI_INSTALLCOLORS.
Standarnya: mulus

  Halaman akhir penginstal

MUI_FINISHPAGE_NOAUTOCLSE
Jangan secara otomatis melompat ke halaman akhir, untuk memungkinkan pengguna memeriksa instalasi catatan.

  Halaman akhir uninstaller

MUI_UNFINISHPAGE_NOAUTOCLSE
Jangan secara otomatis melompat ke halaman akhir, untuk memungkinkan pengguna memeriksa uninstall catatan.

  Batalkan peringatan

MUI_ABORTWARNING
Tampilkan kotak pesan dengan peringatan ketika pengguna ingin menutup penginstal.

MUI_ABORTWARNING_TEXT Teks
Teks untuk ditampilkan pada kotak pesan peringatan batalkan.

MUI_ABORTWARNING_CANCEL_DEFAULT
Atur tombol Batal sebagai tombol default pada kotak pesan.

  Peringatan pembatalan uninstaller

MUI_UNABORTWARNING
Tampilkan kotak pesan dengan peringatan ketika pengguna ingin menutup uninstaller.

MUI_UNABORTWARNING_TEXT Teks
Teks untuk ditampilkan pada kotak pesan peringatan batalkan.

MUI_UNABORTWARNING_CANCEL_DEFAULT
Atur tombol Batal sebagai tombol default pada kotak pesan.

3. Halaman

Masukkan makro berikut untuk mengatur halaman yang ingin Anda gunakan. Halaman-halamannya akan muncul sesuai urutan Anda memasukkannya ke dalam skrip. Anda juga dapat memasukkan kustom Perintah halaman antar makro untuk menambahkan halaman khusus.

Anda dapat menambahkan beberapa halaman dengan jenis tertentu (misalnya, jika Anda menginginkan pengguna melakukannya tentukan beberapa folder).

Contoh:

!insertmacro MUI_PAGE_LICENSE "Lisensi.rtf"
 !masukkan makro MUI_PAGE_COMPONENTS

 Var MulaiMenuFolder
 !insertmacro MUI_PAGE_STARTMENU "Aplikasi" $StartMenuFolder
 

Anda memerlukan ID halaman untuk halaman folder Start Menu saat menggunakan Start Menu makro folder. Folder tersebut akan disimpan dalam variabel yang ditentukan.

Halaman penginstal
MUI_PAGE_SELAMAT DATANG
MUI_PAGE_LICENSE File teks
MUI_PAGE_COMPONENTS
MUI_PAGE_DIRECTORY
MUI_PAGE_STARTMENU Variabel ID halaman
MUI_PAGE_INSTFILES
MUI_PAGE_FINISH

Halaman uninstaller
MUI_UNPAGE_SELAMAT DATANG
MUI_UNPAGE_CONFIRM
MUI_UNPAGE_LICENSE File teks
MUI_UNPAGE_COMPONENTS
MUI_UNPAGE_DIRECTORY
MUI_UNPAGE_INSTFILES
MUI_UNPAGE_FINISH

  Pengaturan halaman

Pengaturan halaman berlaku untuk satu halaman dan harus diatur sebelum menyisipkan makro halaman. Pengaturan yang sama dapat digunakan untuk halaman installer dan uninstaller. Anda harus mengulanginya pengaturan jika Anda ingin menerapkannya ke beberapa halaman. Contoh:

;Tambahkan halaman direktori agar pengguna dapat menentukan folder plug-in
 ;Simpan folder di $PluginsFolder

 Di PLUGINS_FOLDER
 !define MUI_DIRECTORYPAGE_VARIABLE $PluginsFolder
 !masukkan makro MUI_PAGE_DIRECTORY
 

Semua teks standar di antarmuka pengguna diambil dari file bahasa, yaitu tersedia untuk semua bahasa yang didukung oleh NSIS. Jadi, Anda hanya perlu mendefinisikannya teks jika Anda ingin mengubah default.

Jika parameternya adalah teks yang harus berbeda untuk setiap bahasa, tentukan a string bahasa menggunakan LangString dan menggunakan $(LangStringName) sebagai nilai. Untuk lisensi teks dalam berbagai bahasa, LicenseLangString dapat digunakan. Rujuk Pengguna NSIS Manual untuk informasi lebih lanjut tentang installer dengan berbagai bahasa.

Di semua pengaturan teks, karakter tanda kutip ganda (") harus di-escape di formulir berikut: $\"

  Pengaturan halaman umum

MUI_PAGE_HEADER_TEXT Teks
Teks untuk ditampilkan di header halaman.

MUI_PAGE_HEADER_SUBTEXT Teks
Subteks untuk ditampilkan pada header halaman.

  Pengaturan halaman selamat datang

MUI_WELCOMEPAGE_TITLE Judul
Judul untuk ditampilkan di bagian atas halaman.

MUI_WELCOMEPAGE_TITLE_3LINES
Ruang ekstra untuk area judul.

MUI_WELCOMEPAGE_TEXT Teks
Teks untuk ditampilkan di halaman.

  Pengaturan halaman lisensi

MUI_LICENSEPAGE_TEXT_TOP text
Teks untuk ditampilkan di bagian atas halaman.

MUI_LICENSEPAGE_TEXT_BOTTOM text
Teks untuk ditampilkan di bagian bawah halaman.

MUI_LICENSEPAGE_BUTTON tombol_teks
Teks untuk ditampilkan pada tombol 'Saya Setuju'.

MUI_LICENSEPAGE_CHECKBOX
Tampilkan kotak centang yang harus dicentang oleh pengguna untuk menyetujui persyaratan lisensi.

MUI_LICENSEPAGE_CHECKBOX_TEXT Teks
Teks untuk ditampilkan di sebelah kotak centang untuk menyetujui persyaratan lisensi.

MUI_LICENSEPAGE_RADIOBUTTONS
Menampilkan dua tombol radio untuk memungkinkan pengguna memilih antara menerima lisensi persyaratan atau tidak.

MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_ACCEPT Teks
Teks untuk ditampilkan di sebelah kotak centang untuk menerima persyaratan lisensi.

MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_DECLINE Teks
Teks untuk ditampilkan di sebelah kotak centang untuk menolak persyaratan lisensi.

  Pengaturan halaman komponen

MUI_COMPONENTSPAGE_TEXT_TOP teks
Teks untuk ditampilkan di bagian atas halaman.

MUI_COMPONENTSPAGE_TEXT_COMPLIST Teks
Teks untuk ditampilkan di sebelah daftar komponen.

MUI_COMPONENTSPAGE_TEXT_INSTTYPE Teks
Teks untuk ditampilkan di sebelah kotak kombo jenis instalasi.

MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_TITLE Teks
Teks untuk ditampilkan di bagian atas kotak deskripsi.

MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_INFO Teks
Teks untuk ditampilkan di dalam kotak deskripsi ketika tidak ada bagian yang dipilih.

  Directory page settings

MUI_DIRECTORYPAGE_TEXT_TOP text
Text to display on top of the page.

MUI_DIRECTORYPAGE_TEXT_DESTINATION text
Text to display on the destination folder frame.

MUI_DIRECTORYPAGE_VARIABLE variable
Variable in which to store the selected folder.
Default: $INSTDIR

MUI_DIRECTORYPAGE_VERIFYONLEAVE
Does not disable the Next button when a folder is invalid but allows you to use GetInstDirError in the leave function to handle an invalid folder.

  Start Menu folder page settings

MUI_STARTMENUPAGE_TEXT_TOP text
Text to display on the top of the page.

MUI_STARTMENUPAGE_TEXT_CHECKBOX text
Text to display next to the checkbox to disable the Start Menu folder creation.

MUI_STARTMENUPAGE_DEFAULTFOLDER folder
The default Start Menu Folder.

MUI_STARTMENUPAGE_NODISABLE
Do not display the checkbox to disable the creation of Start Menu shortcuts.

MUI_STARTMENUPAGE_REGISTRY_ROOT root
MUI_STARTMENUPAGE_REGISTRY_KEY key
MUI_STARTMENUPAGE_REGISTRY_VALUENAME value_name
The registry key to store the Start Menu folder. The page will use it to remember the users preference. You should also use for the uninstaller to remove the Start Menu folders. Don't forget to remove this key during uninstallation.

For the uninstaller, use the MUI_STARTMENU_GETFOLDER macro to get the Start Menu folder:

!insertmacro MUI_STARTMENU_GETFOLDER page_id $R0
  Delete "$SMPROGRAMS\$R0\Your Shortcut.lnk"

  Installation page settings

MUI_INSTFILESPAGE_FINISHHEADER_TEXT text
Text to display on the header of the installation page when the installation has been completed (won't be displayed when using a Finish page without MUI_(UN)FINISHPAGE_NOAUTOCLOSE).

MUI_INSTFILESPAGE_FINISHHEADER_SUBTEXT text
Subtext to display on the header of the installation page when the installation has been completed (won't be displayed when using a Finish page without MUI_(UN)FINISHPAGE_NOAUTOCLOSE).

MUI_INSTFILESPAGE_ABORTHEADER_TEXT text
Text to display on the header of the installation page when the installation has been aborted.

MUI_INSTFILESPAGE_ABORTHEADER_SUBTEXT text
Subext to display on the header of the installation page when the installation has been aborted.

  Finish page settings

MUI_FINISHPAGE_TITLE title
Title to display on the top of the page.

MUI_FINISHPAGE_TITLE_3LINES
Extra space for the title area.

MUI_FINISHPAGE_TEXT text
Text to display on the page.

MUI_FINISHPAGE_TEXT_LARGE
Extra space for the text area (if using checkboxes).

MUI_FINISHPAGE_BUTTON text
Text to display on the Finish button.

MUI_FINISHPAGE_CANCEL_ENABLED
Enable the Cancel button so the user can skip any options displayed on the finish page.

MUI_FINISHPAGE_TEXT_REBOOT text
Text to display on the finish page when asking for a system reboot.

MUI_FINISHPAGE_TEXT_REBOOTNOW Teks
Teks yang akan ditampilkan di sebelah tombol opsi 'Reboot sekarang'.

MUI_FINISHPAGE_TEXT_REBOOTLATER Teks
Teks untuk ditampilkan di sebelah tombol opsi 'Reboot nanti'.

MUI_FINISHPAGE_REBOOTLATER_DEFAULT
Menetapkan opsi 'Reboot nanti' sebagai opsi default.

MUI_FINISHPAGE_RUN exe_file
Aplikasi yang dapat dipilih pengguna untuk dijalankan menggunakan kotak centang. Anda tidak perlu melakukannya beri tanda kutip di sekitar nama file jika mengandung spasi.

MUI_FINISHPAGE_RUN_TEXT Teks
Teks yang akan ditampilkan di sebelah kotak centang 'Jalankan program'.

MUI_FINISHPAGE_RUN_PARAMETERS Parameter
Parameter aplikasi yang akan dijalankan. Jangan lupa untuk menghindari tanda kutip ganda di nilai (gunakan $\").

MUI_FINISHPAGE_RUN_NOTCHECKED
Jangan centang kotak 'Jalankan program' secara default

MUI_FINISHPAGE_RUN_FUNCTION Fungsi
Panggil fungsi alih-alih menjalankan aplikasi (definisikan MUI_FINISHPAGE_RUN tanpa parameter). Anda dapat menggunakan fungsi tersebut untuk menjalankan banyak aplikasi atau Anda bisa ubah nama kotak centang dan gunakan untuk hal lain.

MUI_FINISHPAGE_SHOWREADME File/url
File atau situs web yang dapat dipilih pengguna untuk dilihat menggunakan kotak centang. Anda tidak perlu untuk memberi tanda kutip di sekitar nama file jika mengandung spasi.

MUI_FINISHPAGE_SHOWREADME_TEXT Teks
Teks yang akan ditampilkan di sebelah kotak centang 'Tampilkan Readme'.

MUI_FINISHPAGE_SHOWREADME_NOTCHECKED
Jangan centang kotak 'Tampilkan Readme' secara default

MUI_FINISHPAGE_SHOWREADME_FUNCTION Fungsi
Panggil fungsi alih-alih menampilkan file (definisikan MUI_FINISHPAGE_SHOWREADME tanpa parameter). Anda dapat menggunakan fungsi ini untuk menampilkan banyak file atau Anda dapat mengubah nama kotak centang dan menggunakannya untuk hal lain.

MUI_FINISHPAGE_LINK link_text
Text for a link on the which the user can click to view a website or file.

MUI_FINISHPAGE_LINK_LOCATION file/url
Website or file which the user can select to view using the link. You don't need to put quotes around the filename when it contains spaces.

MUI_FINISHPAGE_LINK_COLOR (color: RRGGBB hexadecimal)
Text color for the link on the Finish page.
Default: 000080

MUI_FINISHPAGE_NOREBOOTSUPPORT
Disables support for the page that allows the user to reboot the system. Define this option to save some space if you are not using the /REBOOTOK flag or SetRebootFlag.

  Uninstall confirm page settings

MUI_UNCONFIRMPAGE_TEXT_TOP text
Text to display on the top of the page.

MUI_UNCONFIRMPAGE_TEXT_LOCATION text
Text to display next to the uninstall location text box.

MUI_UNCONFIRMPAGE_VARIABLE variable
Variable in which to store the uninstall source folder.
Default: $INSTDIR

4. Language files

Insert the Modern UI language files for the languages to want to include.

!insertmacro MUI_LANGUAGE "English"

The standard NSIS language files are loaded automatically, there is no need to use LoadLanguageFile.

5. Reserve files

If you are using solid compression, files that are required before the actual installation should be stored first in the data block, because this will make your installer start faster. Include reserve file commands for such files before your sections and functions:

ReserveFile /plugin MyPlugin.dll
!insertmacro MUI_RESERVEFILE_LANGDLL ;Language selection dialog
...

Script code for pages

Some pages allow you to show additional information or can be used to get user input. Here you can find the script code to use these features.

Components page descriptions

The Modern UI components page has a text box in which a description can be shown when the user hovers the mouse over a component. If you don't want to use these descriptions, insert the MUI_COMPONENTSPAGE_NODESC interface setting.

To set a description for a section, an additional parameter needs to be added to Section command with a unique identifier for the section. This name can later be used to set the description for this section.

Bagian "Nama Bagian 1" Bagian1
    ...
 BagianAkhir
 

Setelah bagian tersebut, gunakan makro berikut untuk mengatur deskripsi:

LangString DESC_Section1 ${LANG_ENGLISH} "Deskripsi bagian 1."
 LangString DESC_Section2 ${LANG_ENGLISH} "Deskripsi bagian 2."

 !masukkan makro MUI_FUNCTION_DESCRIPTION_BEGIN
   !masukkanmakro MUI_DESCRIPTION_TEXT ${Bagian1} $(DESC_Bagian1)
   !masukkan makro MUI_DESCRIPTION_TEXT ${Bagian2} $(DESC_Bagian2)
 !masukkan makro MUI_FUNCTION_DESCRIPTION_END
 

Untuk uninstaller, gunakan MUI_UNFUNCTION_DESCRIPTION_BEGIN dan MUI_UNFUNCTION_DESCRIPTION_END makro.

Folder Menu Mulai

Letakkan kode untuk menulis shortcut (menggunakan CreateShortcut) di antara MUI_STARTMENU_WRITE_BEGIN dan makro MUI_STARTMENU_WRITE_END:

!masukkan id halaman makro MUI_STARTMENU_WRITE_BEGIN
   ...membuat jalan pintas...
 !masukkan makro MUI_STARTMENU_WRITE_END
 

ID halaman harus menjadi ID halaman tempat pengguna memilih folder untuk pintasan yang ingin Anda tulis.

Variabel yang berisi folder dan ID halaman ditetapkan sebagai parameter makro halaman.

Dialog pemilihan bahasa

Jika Anda ingin penginstal menampilkan dialog pemilihan bahasa (lihat contoh MultiLanguage.nsi ), masukkan makro MUI_LANGDLL_DISPLAY ke dalam fungsi .onInit:

Fungsi .onInit

   !masukkan makro MUI_LANGDLL_DISPLAY

 FungsiAkhir
 

Makro ini juga dapat digunakan dalam fungsi un.onInit.

  Pengaturan untuk penyimpanan registri bahasa yang dipilih

Untuk mengingat preferensi pengguna, Anda dapat menentukan kunci registri. Ini mendefinisikan harus diatur sebelum memasukkan makro halaman instalasi.

MUI_LANGDLL_REGISTRY_ROOT root
MUI_LANGDLL_REGISTRY_KEY Kunci
MUI_LANGDLL_REGISTRY_VALUENAME nilai_nama
Kunci registri untuk menyimpan bahasa. Preferensi pengguna akan diingat. Anda juga dapat menggunakannya agar uninstaller menampilkan bahasa yang tepat. Jangan lupa untuk menghapus kunci ini di uninstaller.

Untuk uninstaller, masukkan makro MUI_UNGETLANGUAGE di un.onInit untuk mendapatkan preferensi bahasa yang disimpan:

Fungsi un.onInit

   !masukkan makro MUI_UNGETLANGUAGE

 FungsiAkhir
 

 

Pengaturan antarmuka untuk dialog pemilihan

Untuk menyesuaikan antarmuka dialog pemilihan bahasa, gunakan definisi ini sebelum menyisipkan makro MUI_LANGDLL_DISPLAY.

MUI_LANGDLL_WINDOWTITLE Teks
Judul jendela dialog pemilihan bahasa.

MUI_LANGDLL_INFO Teks
Teks yang akan ditampilkan pada dialog pemilihan bahasa.

MUI_LANGDLL_ALWAYSSHOW
Selalu tampilkan dialog pemilihan bahasa, meskipun bahasa telah disimpan registri. Bahasa yang disimpan dalam registri akan dipilih secara default.

MUI_LANGDLL_ALLLANGUAGES
Selalu tampilkan semua bahasa yang tersedia dan jangan memfilter menurut halaman kodenya.

Halaman khusus

Jika Anda ingin menambahkan halaman khusus ke penginstal, Anda dapat memasukkan halaman Anda sendiri perintah antar makro halaman.

!masukkan makro MUI_PAGE_WELCOME
 Halaman khusus Nama Fungsi; Halaman khusus
 !masukkan makro MUI_PAGE_COMPONENTS
 
 ;Penghapus instalasi
 !masukkan makro MUI_UNPAGE_CONFIRM
 UninstPage kustom un.FunctionName ;Halaman khusus
 !masukkan makro MUI_UNPAGE_INSTFILES
 

Gunakan makro MUI_HEADER_TEXT untuk mengatur teks pada header halaman dalam fungsi halaman:

LangString PAGE_TITLE ${LANG_ENGLISH} "Judul"
 LangString PAGE_SUBTITLE ${LANG_ENGLISH} "Subjudul"

 Fungsi Fungsi Halaman Kustom
   !masukkan makro MUI_HEADER_TEXT $(PAGE_TITLE) $(PAGE_SUBTITLE)
   nsDialog::...
   ...
 FungsiAkhir
 

Fungsi khusus

Fungsi antarmuka yang disediakan oleh NSIS, seperti fungsi .onGUIInit dan halaman fungsi secara otomatis disertakan oleh UI Modern dan diisi dengan kode untuk mendukung fitur antarmuka baru. Jika Anda ingin menambahkan kode tambahan ke fungsi ini, buatlah fungsi dengan kode skrip khusus dalam skrip menggunakan fungsi UI Modern hubungi mereka.

Contoh:

!definisikan MUI_CUSTOMFUNCTION_GUIINIT myGuiInit

 Fungsi myGUIInit
   ...
 FungsiAkhir 

Halaman UI modern juga dapat dikustomisasi menggunakan fungsi khusus.

 

Fungsi Kustom Umum

Definisi ini harus diatur sebelum memasukkan makro bahasa.

MUI_CUSTOMFUNCTION_GUIINIT Fungsi
MUI_CUSTOMFUNCTION_UNGUIINIT Fungsi
MUI_CUSTOMFUNCTION_ABORT Fungsi
MUI_CUSTOMFUNCTION_UNABORT Fungsi
MUI_CUSTOMFUNCTION_ONMOUSEOVERSECTION Fungsi
MUI_CUSTOMFUNCTION_UNONMOUSEOVERSECTION Fungsi

Fungsi mouse over hanya tersedia ketika deskripsi makro (MUI_FUNCTION_DESCRIPTION_BEGIN) digunakan. Ketika deskripsi halaman komponen tidak digunakan, .onMouseOverSection dan un.onMouseOverSection reguler harus digunakan.

 

Fungsi Kustom Halaman

Definisi ini harus diatur sebelum menyisipkan makro halaman.

MUI_PAGE_CUSTOMFUNCTION_PRE Fungsi
MUI_PAGE_CUSTOMFUNCTION_SHOW Fungsi
MUI_PAGE_CUSTOMFUNCTION_LEAVE Fungsi
MUI_PAGE_CUSTOMFUNCTION_DESTROYED Fungsi

Fungsi pra dipanggil terlebih dahulu dan memungkinkan Anda menginisialisasi variabel atau memutuskan apakah halaman tersebut harus dilewati. Kemudian, fungsi show dipanggil, yang bisa digunakan untuk menyesuaikan antarmuka. Terakhir, masukan pengguna dapat divalidasi di meninggalkan fungsi. Panduan Pengguna NSIS memberikan informasi lebih lanjut tentang fungsi-fungsi ini.

Dalam fungsi pertunjukan, jendela yang menangani semua kontrol pada halaman dapat diambil dari variabel UI Modern. Daftar nama variabel belum tersedia. Untuk sekarang, lihat file sumber UI Modern 2. Deklarasi variabel bisa ditemukan di baris pertama file header untuk halaman tertentu.

Fungsi yang dimusnahkan dipanggil setelah halaman eksternal/plug-in dimusnahkan.

Contoh skrip

Dasar: Dasar.nsi
Halaman Selamat Datang/Selesai: WelcomeFinish.nsi
Berbagai bahasa: MultiLanguage.nsi
Gambar tajuk: HeaderBitmap.nsi
Halaman Folder Menu Mulai: StartMenu.nsi

Kredit

Ditulis oleh Joost Verburg.
Ikon dirancang oleh Nikos Adamamas alias adni18.
Terima kasih kepada Amir Szekely, alias KiCHiK, atas karyanya di NSIS yang memungkinkan hal ini terjadi.

Lisensi

Lisensi zlib/libpng berlaku untuk UI Modern.

 

Ketentuan Lisensi

Hak Cipta © 2002-2023 Joost Verburg

 Perangkat lunak ini disediakan 'apa adanya', tanpa tersurat maupun tersirat
 jaminan.  Dalam keadaan apa pun penulis tidak bertanggung jawab atas segala kerusakan
 timbul dari penggunaan perangkat lunak ini.

 Izin diberikan kepada siapa pun untuk menggunakan perangkat lunak ini untuk tujuan apa pun,
 termasuk aplikasi komersial, dan untuk mengubahnya dan mendistribusikannya kembali
 secara bebas, dengan tunduk pada batasan-batasan berikut:

 1. Asal usul perangkat lunak ini tidak boleh disalahartikan; 
    Anda tidak boleh mengklaim bahwa Anda menulis perangkat lunak asli.
    Jika Anda menggunakan perangkat lunak ini pada suatu produk, pengakuan dalam
    dokumentasi produk akan dihargai tetapi tidak diperlukan.
 2. Versi yang diubah harus ditandai dengan jelas,
    dan tidak boleh disalahartikan sebagai perangkat lunak asli.
 3. Pemberitahuan ini tidak boleh dihapus atau diubah dari distribusi mana pun. 
 
 

0 komentar:

Posting Komentar

silahkan komentar

Luncurkan toko Anda hanya dalam 4 detik dengan 
 
Top